hockeypuck

Hockeypuck

Эта роль устанавливает hockeypuck с доступной версией golang.

Hockeypuck — это современный OpenPGP сервер ключей, написанный на go.

Эта роль устанавливает PostgreSQL и настраивает его в качестве бэкенда для hockeypuck. Hockeypuck клонируется на сервер и собирается там. Для управления сервером используется systemd.

Требования

Переменные роли

Список переменных с их значениями по умолчанию:

hockeypuck_home: /var/lib/hockeypuck
hockeypuck_directory: "{{ hockeypuck_home }}/hockeypuck/"
hockeypuck_hostname: "{{ hostname|d(ansible_hostname)|d(inventory_hostname) }}"
hockeypuck_templates: "{{ hockeypuck_directory }}/contrib/templates"
hockeypuck_index_template: "{{ hockeypuck_templates }}/index.html.tmpl"
hockeypuck_vindex_template: "{{ hockeypuck_templates }}/index.html.tmpl"
hockeypuck_stats_template: "{{ hockeypuck_templates }}/stats.html.tmpl"
hockeypuck_webroot: "{{ hockeypuck_directory }}/contrib/webroot/"
hockeypuck_logfile: /var/log/hockeypuck/hockeypuck.log
hockeypuck_loglevel: INFO
hockeypuck_recondb: "{{ hockeypuck_home }}/recon.db"
hockeypuck_log_request_details: "true"
hockeypuck_peers: []
hockeypuck_blacklist: []
hockeypuck_conflux_recon_allowCIDRs: []
hockeypuck_conflux_recon_seenCacheSize: 72000
hockeypuck_hkp_bind: :11371
hockeypuck_git_version: branch-2.1
hockeypuck_contact: # no default
hockeypuck_hkp_ssl_enabled: false
hockeypuck_hkp_ssl_certificate: # no default
hockeypuck_hkp_ssl_key: # no default

Имя хоста

Имя хоста используется для обозначения хоста экземпляра hockeypuck в конфигурационном файле.

Если переменная hockeypuck_hostname, заданная пользователем, не определена,

  • используется переменная hostname, заданная пользователем. Если она не определена,
  • используется ansible_hostname, что требует собранных данных. Если данные не собраны,
  • используется inventory_hostname как запасной вариант, который всегда определен.

HKPS/SSL/TLS

Чтобы включить HKPS, установите параметр enable и укажите пути к сертификату и закрытому ключу следующим образом:

hockeypuck_hkp_ssl_enabled: true
hockeypuck_hkp_ssl_certificate: "/path/to/certificate"
hockeypuck_hkp_ssl_key: "/path/to/private/key"

Пиры

hockeypuck_peers может быть простой списком:

- example.com
- example.net

что предполагает одинаковый адрес для http и recon, а также стандартные порты 11370 и 11371. Имя пира будет peer$index.

Или hockeypuck_peers может быть сопоставлением:

- name: full example
  http_addr: example.net
  http_addr_port: 11371
  recon_addr: example.net
  recon_addr: 11370

Порты являются необязательными.

Если сервер hockeypuck находится за обратным прокси, установите hockeypuck_conflux_recon_allowCIDRs на IP-адрес прокси. Hockeypuck позволяет только входящие recon от настроенных пиров и этот список разрешенных диапазонов сети.

hockeypuck_conflux_recon_allowCIDRs:
  - 10.0.0.1/8
  - 192.168.0.1/32

Черный список ключей

Ключи могут быть занесены в черный список с помощью опции hockeypuck_blacklist с одним отпечатком для каждого элемента списка:

hockeypuck_blacklist:
  - B4530375102C9EB270909C9C006694EB
  - a490d0f4d311a4153e2bb7cadbb802b258acd84f

Для существующего полезного черного списка посмотрите на фильтры ключей CIRCL.

Зависимости

Устанавливает go на сервер с помощью gantsign.golang.

Пример плейбука

- hosts: servers
  roles:
    - sebix.hockeypuck
  vars:
     # необязательные переменные, см. выше для полного списка, включая значения по умолчанию
    - golang_version: 1.19
    - hockeypuck_contact: "ВАШ_ОТПЕЧАТОК_КЛЮЧА"

Лицензия

BSD-3-Clause

Информация об авторе

https://intevation.de/

О проекте

Installing and setting up the Hockeypuck OpenPGP key server

Установить
ansible-galaxy install sebix/ansible-hockeypuck
Лицензия
bsd-3-clause
Загрузки
71
Владелец