trozz.ansible_nebula

ansible-nebula

Ta rola instalujе i wdraża konfigurację dla Nebula

Wymagania

Obecnie przed uruchomieniem tej roli musisz wygenerować i wdrożyć certyfikaty (zobacz przykład).

Obsługiwana wersja Nebula

Ta rola jest testowana z wersją 1.5.0.

Zmienne roli

Nazwa zmiennej Typ Cel Domyślna wartość Wymagana
nebula_version String Wersja do pobrania 1.5.0 Tak
nebula_force_install Boolean Wymuszenie nadpisania istniejącego binarnego pliku nebula false Nie
ca String Ścieżka do pliku CA NA Tak
cert String Ścieżka do certyfikatu NA Tak
key String Ścieżka do klucza certyfikatu NA Tak
blocklist Lista Lista zablokowanych hashy certyfikatów NA Nie
lighthouses String Statyczne hosty do odkrywania "{{ groups['nebula_lighthouses'] }}" Nie
lighthouses_override Lista Lista statycznych hostów do odkrywania NA Nie
lighthouse.am_lighthouse Boolean Czy ta instancja jest Lighthouse false Tak
lighthouse.serve_dns Boolean Czy ta instancja powinna obsługiwać DNS false Tak
lighthouse.interval Integer Interwał raportowania do lighthouses 60 Nie
listen.host String IP do nasłuchiwania 0.0.0.0 Tak
listen.port Integer Port do nasłuchiwania 4242 Tak
listen.batch Integer Ustala maksymalną liczbę pakietów do pobrania z jądra dla każdego wywołania systemowego 64 Tak
listen.read_buffer Integer Konfiguracja buforów gniazd dla strony udp NA Nie
listen.write_buffer Integer Konfiguracja buforów gniazd dla strony udp NA Nie
punchy Boolean Punchy kontynuuje "punching" przychodzące/wychodzące w regularnych odstępach, by unikać wygasania mapowań NAT w zaporze true Tak
punch_back Boolean punch_back oznacza, że węzeł, który próbujesz osiągnąć, połączy się z tobą, jeśli twoje "punching" nie powiedzie się true Tak
cipher String Cipher pozwala wybrać między dostępnymi szyfrowaniami dla twojej sieci. NA Nie
local_range String Lokalny zakres jest używany do określenia wskazówki dotyczącej lokalnego zakresu sieci NA Nie
sshd.enabled Boolean sshd może udostępniać funkcje informacyjne i administracyjne przez ssh NA Nie
sshd.listen String IP / Port do funkcji administracyjnych SSH NA Nie
relay.relays Lista IP hostów do użycia jako przekaźnik NA Nie
relay.am_relay String Wskazuje, czy host powinien działać jako przekaźnik false Nie
relay.use_relays String Wskazuje, czy host powinien próbować łączyć się przez przekaźniki true Nie
metrics.prometheus Boolean Włącza serwer prometheus NA Nie
outbound Lista Reguły wychodzące dla wbudowanej zapory Zobacz poniżej Tak
inbound Lista Reguły przychodzące dla wbudowanej zapory Zobacz poniżej Tak

Przykład reguł zapory

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

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

Zależności

Brak

Przykład playbooka

---
- 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: Utwórz katalog Nebula
      file:
        path: /etc/nebula
        state: directory
        mode: '0750'
    - name: Wdrażaj certyfikaty 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

Opcjonalnie możesz zadeklarować lighthouse z portem zewnętrznym różnym od domyślnego

---
- 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

Licencja

MIT

Informacje o autorze

Ta rola jest dostarczana w takim stanie, w jakim jest, Nebula jest utrzymywana przez Slack i społeczność.

O projekcie

Nebula deployment

Zainstaluj
ansible-galaxy install trozz.ansible_nebula
Licencja
unlicense
Pobrania
428
Właściciel