trozz.ansible_nebula

ansible-nebula

この役割は、Nebulaの設定をインストールして展開します。

要件

現在、この役割を実行する前に証明書を生成して展開する必要があります(例を参照)。

サポートされているNebulaバージョン

現在、この役割はバージョン 1.5.0 に対してテストされています。

役割の変数

変数名 目的 デフォルト 必須
nebula_version 文字列 ダウンロードするバージョン 1.5.0 はい
nebula_force_install ブール 既存のnebulaバイナリを強制上書きする false いいえ
ca 文字列 CAファイルへのパス NA はい
cert 文字列 証明書へのパス NA はい
key 文字列 証明書キーへのパス NA はい
blocklist リスト ブロックリストにある証明書のハッシュのリスト NA いいえ
lighthouses 文字列 発見のための静的ホスト "{{ groups['nebula_lighthouses'] }}" いいえ
lighthouses_override リスト 発見のための静的ホストのリスト NA いいえ
lighthouse.am_lighthouse ブール このインスタンスはLighthouseですか false はい
lighthouse.serve_dns ブール このインスタンスはDNSを提供するべきですか false はい
lighthouse.interval 整数 Lighthouseへの報告間隔 60 いいえ
listen.host 文字列 リッスンするIP 0.0.0.0 はい
listen.port 整数 リッスンするポート 4242 はい
listen.batch 整数 各システムコールのためにカーネルから引き出す最大パケット数を設定 64 はい
listen.read_buffer 整数 UDP側のソケットバッファを設定 NA いいえ
listen.write_buffer 整数 UDP側のソケットバッファを設定 NA いいえ
punchy ブール Punchyは定期的にインバウンド/アウトバウンドをパンチし、ファイアウォールのNATマッピングの期限切れを防ぎます true はい
punch_back ブール punch_backは、到達しようとしているノードが穴あけが失敗した場合に、再び接続してくれることを意味します true はい
cipher 文字列 Cipherは、ネットワークのために使用可能な暗号の中から選択を可能にします。 NA いいえ
local_range 文字列 ローカル範囲は、ローカルネットワーク範囲に関するヒントを定義するために使用されます NA いいえ
sshd.enabled ブール sshdは情報や管理機能をsshを介して公開できます NA いいえ
sshd.listen 文字列 管理SSH機能のIP / ポート NA いいえ
relay.relays リスト リレーとして使用するホストのIP NA いいえ
relay.am_relay 文字列 ホストがリレーとして機能すべきかを示します false いいえ
relay.use_relays 文字列 ホストがリレーを通じて接続しようとすべきかを示します true いいえ
metrics.prometheus ブール prometheusサーバーを有効にします NA いいえ
outbound リスト 内蔵ファイアウォールのアウトバウンドルール 下記参照 はい
inbound リスト 内蔵ファイアウォールのインバウンドルール 下記参照 はい

ファイアウォールルールの例

outbound:
  - port: any
    proto: any
    host: any

inbound:
  - port: any
    proto: icmp
    host: any

依存関係

なし

例のプレイブック

---
- hosts: all
  remote_user: root
  vars:
    lighthouses:
      - nebula_ip: 10.255.0.1
        external_addr: 123.231.1.2
    lighthouse:
      nodes:
        - 10.255.0.1
  pre_tasks:
    - name: Nebulaディレクトリを作成
      file:
        path: /etc/nebula
        state: directory
        mode: '0750'
    - name: Nebula証明書を展開
      copy:
        src: files/{{item}}
        dest: /etc/nebula/{{item}}
        owner: root
        group: root
        mode: '0600'
      with_items:
        - ca.crt
        - host.crt
        - host.key
  roles:
    - ansible-nebula
---
- hosts: all
  remote_user: root
  vars:
    lighthouses:
      - nebula_ip: 10.255.0.1
        external_addr: 123.231.1.2
  roles:
    - ansible-nebula

オプションで、デフォルトでない外部ポートを持つLighthouseを宣言できます。

---
- hosts: all
  remote_user: root
  vars:
  lighthouse:
    am_lighthouse: yes
  lighthouses:
    - nebula_ip: 10.255.0.1
      external_addr: 123.231.1.2
      external_port: 4242
  roles:
    - ansible-nebula

ライセンス

MIT

著者情報

この役割はそのまま提供されており、NebulaはSlackおよびコミュニティによって保守されています。

プロジェクトについて

Nebula deployment

インストール
ansible-galaxy install trozz.ansible_nebula
ライセンス
unlicense
ダウンロード
428
所有者