ppouliot.network_appliance_bootstrap

Ansible Galaxy Ansible Galaxy Downloads

Ansible 角色:network_appliance_bootstrap


这个 Ansible 角色可以通过 SSH 连接在网络设备上安装 SSH 密钥。当前支持基于 Vyatta、VyOS 和 UBNT 设备的网络设备。

角色变量:


以下角色变量适用于 EdgeRouterX 设备。

netapl_ssh_authorized_key: ~/.ssh/id_ed25519.pub
netapl_device_user_id: ubnt

ansible_network_os: edgeos
ansible_user: ubnt
ansible_pass: <YOUR_EDGEROUTER_PASSWORD>
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

以下角色变量适用于 UnFi USG 和 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: <YOUR_USG_PASSWORD>
ansible_pass: <YOUR_USG_PASSWORD>
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

以下角色变量适用于 VyOS 设备。

netapl_ssh_authorized_key: ~/.ssh/id_ed25519.pub
netapl_device_user_id: admin

ansible_network_os: vyos
ansible_user: admin
ansible_pass: <YOUR_EDGEROUTER_PASSWORD>
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

安装:


ansible-galaxy install ppouliot.network_appliance_bootstrap

示例清单:


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

示例剧本



#!/usr/bin/env ansible-playbook
---

- name: UniFi USG 安装 SSH 密钥
  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:  EdgeOS 设备收集信息
    edgeos_facts:
      gather_subset: all

- name: UniFi USG 安装 SSH 密钥
  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:  Unifi 设备收集信息
    edgeos_facts:
      gather_subset: all

- name: VyOS 安装 SSH 密钥
  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:  VyOS 设备收集信息
    vyos_facts:
      gather_subset: all

贡献者:


版权和许可:


Copyright (C) 2018 Peter J. Pouliot

可以通过以下方式联系 Peter Pouliot: peter@pouliot.net

根据 Apache License, Version 2.0(“许可”)授权; 您不得在不遵守许可的情况下使用此文件。 您可以通过以下链接获取许可的副本:

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可分发的软件是“按原样”基础提供的,不提供任何种类的保证或条件,无论是明示还是暗示。请参见许可以了解特定语言治理权限和限制。

关于项目

Ansible to bootstrap ssh on Vyatta, VyOS & UBNT USG/EdgeRouters

安装
ansible-galaxy install ppouliot.network_appliance_bootstrap
许可证
Unknown
下载
224
拥有者