ssh-hardening (Rol de Ansible)
Atención: Este rol ha sido migrado a nuestra hardening-collection:
¡Por favor, abre cualquier issue y pull request allí!
Requisitos
Variables del Rol
network_ipv6_enable
- Valor por defecto: false
- Descripción: true si se necesita IPv6.
ssh_listen_to también debe configurarse para escuchar en direcciones IPv6 (por ejemplo [::]).
ssh_server_ports
- Valor por defecto: ['22']
- Descripción: puertos en los que el servidor ssh debe escuchar
ssh_client_port
- Valor por defecto: '22'
- Descripción: puerto al que el cliente ssh debe conectarse
ssh_listen_to
- Valor por defecto: ['0.0.0.0']
- Descripción: una o más direcciones IP, a las que el servidor ssh debe escuchar. El valor por defecto son todas las direcciones IPv4, pero por razones de seguridad debería configurarse con direcciones específicas.
ssh_host_key_files
- Valor por defecto: []
- Descripción: claves de host para sshd. Si está vacío, se usarán ['/etc/ssh/ssh_host_rsa_key', '/etc/ssh/ssh_host_ecdsa_key', '/etc/ssh/ssh_host_ed25519_key'] en la medida en que la versión de sshd instalada lo soporte
ssh_host_key_algorithms
- Valor por defecto: []
- Descripción: algoritmos de clave de host que ofrece el servidor. Si está vacío, se usará la lista por defecto; de lo contrario, sobrescribe la configuración con la lista de algoritmos especificada
ssh_client_alive_interval
- Valor por defecto: 600
- Descripción: especifica un intervalo para enviar mensajes de keepalive
ssh_client_alive_count
- Valor por defecto: 3
- Descripción: define cuántas veces se envían los mensajes de keep-alive
ssh_permit_tunnel
- Valor por defecto: false
- Descripción: true si se requiere túnel de puertos SSH
ssh_remote_hosts
- Valor por defecto: []
- Descripción: uno o más hosts y sus opciones personalizadas para el cliente ssh. El valor por defecto está vacío. Consulta los ejemplos en
defaults/main.yml.
ssh_permit_root_login
- Valor por defecto: no
- Descripción: deshabilita el login de root. Configúralo en
without-password o yes para habilitar el login de root
ssh_allow_tcp_forwarding
- Valor por defecto: no
- Descripción:
'no' para deshabilitar el reenvío TCP. Configúralo en 'yes' para permitir el reenvío TCP. Si usas OpenSSH >= 6.2, puedes especificar 'yes', 'no', 'all' o 'local'.
Nota: los valores pasados a esta variable deben ser cadenas, por lo que los valores 'yes' y 'no' deben pasarse entre comillas.
ssh_gateway_ports
- Valor por defecto:
false
- Descripción:
false para deshabilitar el enlace de puertos reenviados a direcciones que no sean de loopback. Configúralo en true para forzar el enlace en la dirección wildcard. Configúralo en clientspecified para permitir que el cliente especifique a qué dirección enlazar.
ssh_allow_agent_forwarding
- Valor por defecto: false
- Descripción: false para deshabilitar el reenvío de agente. Configúralo en true para permitir el reenvío de agente.
ssh_x11_forwarding
- Valor por defecto: false
- Descripción: false para deshabilitar el reenvío X11. Configúralo en true para permitir el reenvío X11.
ssh_pam_support
- Valor por defecto: true
- Descripción: true si SSH tiene soporte PAM.
ssh_use_pam
- Valor por defecto: true
- Descripción: false para deshabilitar la autenticación pam.
ssh_gssapi_support
- Valor por defecto: false
- Descripción: true si SSH tiene soporte GSSAPI.
ssh_kerberos_support
- Valor por defecto: true
- Descripción: true si SSH tiene soporte Kerberos.
ssh_deny_users
- Valor por defecto: ''
- Descripción: si se especifica, se deshabilita el login para nombres de usuario que coincidan con uno de los patrones.
ssh_allow_users
- Valor por defecto: ''
- Descripción: si se especifica, el login solo se permite para nombres de usuario que coincidan con uno de los patrones.
ssh_deny_groups
- Valor por defecto: ''
- Descripción: si se especifica, se deshabilita el login para usuarios cuyo grupo principal o lista de grupos suplementarios coincida con uno de los patrones.
ssh_allow_groups
- Valor por defecto: ''
- Descripción: si se especifica, el login solo se permite para usuarios cuyo grupo principal o lista de grupos suplementarios coincida con uno de los patrones.
ssh_authorized_keys_file
- Valor por defecto: ''
- Descripción: cambia el archivo por defecto que contiene las claves públicas que se pueden usar para la autenticación de usuarios.
ssh_trusted_user_ca_keys_file
- Valor por defecto: ''
- Descripción: especifica el archivo que contiene las claves públicas de las autoridades certificadoras de confianza utilizadas para firmar certificados de usuario.
ssh_trusted_user_ca_keys
- Valor por defecto: []
- Descripción: establece las claves públicas de las autoridades certificadoras de confianza utilizadas para firmar certificados de usuario. Solo se usa si
ssh_trusted_user_ca_keys_file está configurado.
ssh_authorized_principals_file
- Valor por defecto: ''
- Descripción: especifica el archivo que contiene los principals permitidos. Solo se usa si
ssh_trusted_user_ca_keys_file está configurado.
ssh_authorized_principals
- Valor por defecto: []
- Descripción: lista de hashes que contienen rutas de archivo y principals autorizados; consulta
default_custom.yml para todas las opciones. Solo se usa si ssh_authorized_principals_file está configurado.
ssh_print_motd
- Valor por defecto: false
- Descripción: false para deshabilitar la impresión del MOTD
ssh_print_pam_motd
- Valor por defecto: false
- Descripción: false para deshabilitar la impresión del MOTD mediante pam (Debian y Ubuntu)
ssh_print_last_log
- Valor por defecto: false
- Descripción: false para deshabilitar la visualización de la información del último login
sftp_enabled
- Valor por defecto: false
- Descripción: true para habilitar la configuración de sftp
sftp_umask
- Valor por defecto: '0027'
- Descripción: especifica el umask para sftp
sftp_chroot
- Valor por defecto: true
- Descripción: false para deshabilitar chroot para sftp
sftp_chroot_dir
- Valor por defecto: /home/%u
- Descripción: cambia la ubicación por defecto del chroot de sftp
ssh_client_roaming
- Valor por defecto: false
- Descripción: habilita el roaming experimental del cliente
sshd_moduli_file
- Valor por defecto: '/etc/ssh/moduli'
- Descripción: ruta al archivo de moduli SSH
sshd_moduli_minimum
- Valor por defecto: 2048
- Descripción: elimina los parámetros Diffie-Hellman más pequeños que el tamaño definido para mitigar logjam
ssh_challengeresponseauthentication
- Valor por defecto: false
- Descripción: especifica si se permite la autenticación challenge-response (por ejemplo, mediante PAM)
ssh_client_password_login
- Valor por defecto: false
- Descripción:
true para permitir la autenticación basada en contraseña con el cliente ssh
ssh_server_password_login
- Valor por defecto: false
- Descripción:
true para permitir la autenticación basada en contraseña con el servidor ssh
ssh_banner
- Valor por defecto:
false
- Descripción:
true para imprimir un banner en el login
ssh_banner_path
- Valor por defecto: '/etc/sshd/banner.txt'
- Descripción: ruta al archivo de banner SSH
ssh_client_hardening
- Valor por defecto:
true
- Descripción:
false para dejar de endurecer el cliente
ssh_client_port
- Valor por defecto:
'22'
- Descripción: especifica el número de puerto para conectarse al host remoto.
ssh_client_compression
- Valor por defecto:
false
- Descripción: especifica si el cliente solicita compresión.