ssh_known_hosts

sshknownhostsrole

Это роль Ansible, которая управляет файлом известных хостов SSH, обычно расположенным по адресу /etc/ssh/ssh_known_hosts или ~user/.ssh/known_hosts.

Основная цель этой роли — обернуть модуль sshknownhosts, расположенный по адресу https://github.com/bfmartin/ansible-sshknownhosts, и сделать его подходящим для Ansible Galaxy.

Требования

Любая система, похожая на Unix, с установленным сервером openssh должна работать.

Безопасность

Если файл ssh_known_hosts создан с использованием ssh-keyscan без проверки ключей, пользователи будут уязвимы для атак типа "человек посередине". С другой стороны, если модель безопасности допускает такой риск, ssh-keyscan может помочь в обнаружении поддельных файлов ключей или атак "человек посередине", которые начались после создания файла ssh_known_hosts.

(из справки по ssh-keyscan)

Поэтому вы можете вручную задать отпечаток, указав атрибут fingerprint.

Переменные роли

Эта роль использует следующие переменные и их значения по умолчанию:

ssh_known_hosts_path: Файл назначения для записи. По умолчанию это /etc/ssh/ssh_known_hosts, а ~user/.ssh/known_hosts является хорошей альтернативой.

ssh_known_hosts_state: present или absent. По умолчанию — present.

ssh_known_hosts_enctype: Тип кодировки открытого ключа для сканирования. Возможные значения: rsa, dsa, ecdsa или ed25519. По умолчанию — rsa.

ssh_known_hosts_port: Порт для подключения при сканировании удаленного хоста. По умолчанию — 22.

ssh_known_hosts_keyscan: Программа для сканирования. По умолчанию — ssh-keyscan в текущем каталоге.

ssh_known_hosts: Список словарей для хоста и его атрибутов для сканирования:

ssh_known_hosts:
  - name: example.com
    state: present
    dest: /etc/ssh/ssh_known_hosts
    enctype: rsa
    port: 22
    keyscan: ssh-keyscan
    aliases:
      - www.example.com
      - www2.example.com

Зависимости

Нет.

Пример плейбука


- hosts: all
  vars:
    ssh_known_hosts:
      - name: example.com
        state: present
        dest: /etc/ssh/ssh_known_hosts
        enctype: rsa
        port: 22
        keyscan: ssh-keyscan
        aliases:
          - www.example.com
          - www2.example.com
      - name: srv.example.com
        fingerprint: AAAAE2VjZHNhLXNoYTItbmlzdHAyN...
  roles:
    - role: sshknownhosts

Лицензия

BSD

Информация об авторе

Байрон Ф. Мартин
Электронная почта: http://www.bfmartin.ca/contact
Github: bfmartin

О проекте

This is an ansible role that manages the SSH known hosts file usually located at /etc/ssh/ssh_known_hosts or ~user/.ssh/known_hosts.

Установить
ansible-galaxy install t2d/ansible-sshknownhosts-role
Лицензия
bsd-2-clause
Загрузки
609
Владелец