ppouliot.network_appliance_bootstrap
Rola Ansible: network_appliance_bootstrap
Ta rola Ansible pozwala na ustawienie kluczy SSH na urządzeniach sieciowych przy użyciu połączenia SSH. Obecnie wspiera urządzenia sieciowe oparte na Vyatta, VyOS oraz urządzenia UBNT.
Zmienne Roli:
Poniższe zmienne roli działają dla urządzeń EdgeRouterX.
netapl_ssh_authorized_key: ~/.ssh/id_ed25519.pub
netapl_device_user_id: ubnt
ansible_network_os: edgeos
ansible_user: ubnt
ansible_pass: <TWOJE_HASŁO_EDGEROUTERA>
ansible_ssh_private_key_file: /etc/ansible/keys/id_rsa
ansible_net_ssh_key_file: /etc/ansible/keys/id_rsa
ansible_python_interpreter: /usr/bin/python
Poniższe zmienne roli działają dla urządzeń UnFi USG i USG4P.
netapl_ssh_authorized_key: ~/.ssh/id_ed25519.pub
netapl_device_user_id: admin
ansible_network_os: edgeos
ansible_ssh_user: admin
ansible_user: admin
ansible_ssh_pass: <TWOJE_HASŁO_USG>
ansible_pass: <TWOJE_HASŁO_USG>
become: yes
ansible_ssh_private_key_file: /etc/ansible/keys/id_rsa
ansible_net_ssh_key_file: /etc/ansible/keys/id_rsa
ansible_python_interpreter: /usr/bin/python
Poniższe zmienne roli działają dla urządzeń VyOS.
netapl_ssh_authorized_key: ~/.ssh/id_ed25519.pub
netapl_device_user_id: admin
ansible_network_os: vyos
ansible_user: admin
ansible_pass: <TWOJE_HASŁO_EDGEROUTERA>
ansible_ssh_private_key_file: /etc/ansible/keys/id_rsa
ansible_net_ssh_key_file: /etc/ansible/keys/id_rsa
ansible_python_interpreter: /usr/bin/python
Instalacja:
ansible-galaxy install ppouliot.network_appliance_bootstrap
Przykładowa inwentarz:
localhost ansible_connection=local ansible_python_interpreter="/usr/bin/env python"
[usg]
usg4p.pouliot.net
[usg-by-ip]
192.168.1.1
[edgerouterx]
erx.pouliot.net
[edgerouterx-by-ip]
192.168.1.2
[vyos]
vyos.pouliot.net
[vyos-by-ip]
192.168.1.3
[cloudkey]
Unifi-Cloudkey.pouliot.net
[cloudkey-by-ip]
192.168.1.3
[ssh_connection]
pipelining=True
Przykładowy Playbook
#!/usr/bin/env ansible-playbook
---
- name: Wstępne ustawienia SSH dla UniFi USG w Ansible
hosts: edgerouterx-by-ip
connection: ssh
become: yes
become_user: root
gather_facts: yes
tasks:
- debug: var=ansible_connection
roles:
- ppouliot.network_appliance_bootstrap
- hosts: edgerouterx
connection: network_cli
gather_facts: false
tasks:
- name: Zbieranie informacji z urządzeń EdgeOS
edgeos_facts:
gather_subset: all
- name: Wstępne ustawienia SSH dla UniFi USG w Ansible
hosts: usg-by-ip
connection: ssh
become: yes
become_user: root
gather_facts: false
tasks:
- debug: var=ansible_connection
roles:
- ppouliot.network_appliance_bootstrap
- hosts: usg
connection: network_cli
gather_facts: false
tasks:
- name: Zbieranie informacji z urządzeń Unifi
edgeos_facts:
gather_subset: all
- name: Wstępne ustawienia SSH dla VyOS w Ansible
hosts: vyos-by-ip
connection: ssh
become: yes
become_user: root
gather_facts: false
tasks:
- debug: var=ansible_connection
roles:
- ppouliot.network_appliance_bootstrap
- hosts: vyos
connection: network_cli
gather_facts: false
tasks:
- name: Zbieranie informacji z urządzeń VyOS
vyos_facts:
gather_subset: all
Współtwórcy:
- Peter Pouliot peter@pouliot.net
Prawa autorskie i licencja:
Copyright (C) 2018 Peter J. Pouliot
Można skontaktować się z Peterem Pouliotem pod adresem: peter@pouliot.net
Licencjonowane na podstawie Licencji Apache, Wersja 2.0 (zwanej dalej "Licencją"); możesz nie używać tego pliku z wyjątkiem zgodnie z postanowieniami Licencji. Możesz uzyskać kopię Licencji pod adresem
http://www.apache.org/licenses/LICENSE-2.0
O ile nie wymaga tego obowiązujące prawo lub pisemna zgoda, oprogramowanie dystrybuowane na podstawie Licencji jest dystrybuowane na zasadzie "TAK JEST", BEZ GWARANCJI LUB WARUNKÓW JAKIEGOKOLWIEK, wyraźnych lub dorozumianych. Zobacz Licencję, aby uzyskać informacje o prawach i ograniczeniach związanych z Licencją.
Ansible to bootstrap ssh on Vyatta, VyOS & UBNT USG/EdgeRouters
ansible-galaxy install ppouliot.network_appliance_bootstrap