sebix.hockeypuck
ホッケーパック
この役割は、利用可能なGo言語のバージョンでhockeypuckをインストールします。
Hockeypuckは、Goで書かれた現代的なOpenPGPキーサーバーです。
この役割は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: # デフォルトなし
hockeypuck_hkp_ssl_enabled: false
hockeypuck_hkp_ssl_certificate: # デフォルトなし
hockeypuck_hkp_ssl_key: # デフォルトなし
ホスト名
ホスト名は、設定ファイル内で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_port: 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
オプションを使用してブラックリストに追加できます。リスト項目ごとに1つのフィンガープリントを使用します:
hockeypuck_blacklist:
- B4530375102C9EB270909C9C006694EB
- a490d0f4d311a4153e2bb7cadbb802b258acd84f
有用な既存のブラックリストについては、CIRCLのopenpgp-keys-filterlistsを参照してください。
依存関係
サーバーにGoをインストールします。(gantsign.golang
を使用)
例のプレイブック
- hosts: servers
roles:
- sebix.hockeypuck
vars:
# オプションの変数、デフォルト値を含む完全なリストは上を参照してください
- golang_version: 1.19
- hockeypuck_contact: "YOUR_KEY_FINGERPRINT"
ライセンス
BSD-3-Clause