t2d.ssh_known_hosts

rolsshconocidos

Esta es un rol de ansible que gestiona el archivo de hosts conocidos de SSH, que generalmente se encuentra en /etc/ssh/ssh_known_hosts o ~user/.ssh/known_hosts.

El objetivo principal de este rol es envolver el módulo sshknownhosts que se encuentra en https://github.com/bfmartin/ansible-sshknownhosts y hacerlo adecuado para Ansible Galaxy.

Requisitos

Cualquier sistema similar a Unix con un servidor openssh debería funcionar.

Seguridad

Si se construye un archivo ssh_known_hosts utilizando ssh-keyscan sin verificar las claves, los usuarios serán vulnerables a ataques de man in the middle. Por otro lado, si el modelo de seguridad permite este riesgo, ssh-keyscan puede ayudar en la detección de archivos de claves alterados o ataques de man in the middle que hayan comenzado después de que se creó el archivo ssh_known_hosts.

(tomado de la página del manual de ssh-keyscan)

Por lo tanto, puedes especificar una huella digital manualmente proporcionando el atributo fingerprint.

Variables del Rol

Este rol utiliza las siguientes variables y sus valores predeterminados:

ssh_known_hosts_path: El archivo de destino al que se escribirá. El valor predeterminado es /etc/ssh/ssh_known_hosts y ~user/.ssh/known_hosts es una buena alternativa.

ssh_known_hosts_state: presente o ausente. El valor predeterminado es presente.

ssh_known_hosts_enctype: El tipo de codificación de clave pública a buscar. Las opciones son rsa, dsa, ecdsa o ed25519. El valor predeterminado es rsa.

ssh_known_hosts_port: El puerto al que conectarse al escanear el host remoto. El valor predeterminado es 22.

ssh_known_hosts_keyscan: El programa que se utilizará para escanear. El valor predeterminado es ssh-keyscan en la ruta actual.

ssh_known_hosts: Lista de diccionarios con el host y sus atributos a escanear:

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

Dependencias

Ninguna.

Ejemplo de Playbook


- 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

Licencia

BSD

Información del Autor

Byron F. Martin
Correo: http://www.bfmartin.ca/contact
Github: bfmartin

Acerca del proyecto

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.

Instalar
ansible-galaxy install t2d.ssh_known_hosts
Licencia
bsd-2-clause
Descargas
637
Propietario