skriptfabrik.sshd
Rola Ansible: sshd
Opis
Ta rola zapewnia bezpieczne konfiguracje klienta i serwera SSH. Ma na celu zgodność z DevSec SSH Baseline.
Rola jest fork'em arillso.sshd.
Instalacja
ansible-galaxy collection install community.crypto
ansible-galaxy install skriptfabrik.sshd
Wymagania
Brak
Zmienne roli
ssh_ipv6_enable
true, jeśli potrzebne jest IPv6
ssh_ipv6_enable: '{{ network_ipv6_enable | default(false) }}' # sshd + ssh
ssh_server_enabled
true, jeśli sshd ma być uruchomiony i włączony
ssh_server_enabled: true # sshd
ssh_use_dns
true, jeśli potrzebne są rozwiązania DNS, domyślnie false od wersji 6.8, patrz: http://www.openssh.com/txt/release-6.8
ssh_use_dns: false # sshd
ssh_compression
true lub wartość, jeśli potrzebna jest kompresja
ssh_compression: false # sshd
ssh_hardening
Dla których komponentów (klient i serwer) generować konfigurację. Może być przydatne, gdy działa się na kliencie bez serwera SSH.
ssh_client_hardening: true # ssh
ssh_server_hardening: true # sshd
ssh_client_password_login
Jeśli true, zezwolenie na logowanie hasłem
ssh_client_password_login: false # ssh
ssh_server_password_login: false # sshd
ssh_server_ports
porty, na których serwer ssh powinien nasłuchiwać
ssh_server_ports: ['22'] # sshd
ssh_client_port
port, do którego klient ssh powinien się łączyć
ssh_client_port: '22' # ssh
ssh_listen_to
jedna lub więcej adresów IP, na które serwer ssh powinien nasłuchiwać. Domyślnie pusto, ale powinno być skonfigurowane ze względów bezpieczeństwa!
ssh_listen_to: ['0.0.0.0'] # sshd
ssh_host_key_files
Klucze hosta, które należy uwzględnić przy uruchamianiu sshd.
ssh_host_key_files: [] # sshd
ssh_force_create_host_key_files
Wymuś utworzenie plików klucza hosta.
ssh_force_create_host_key_files: false # sshd
ssh_max_auth_retries
Określa maksymalną liczbę prób autoryzacji dozwolonych na połączenie. Po osiągnięciu połowy tej wartości dodatkowe niepowodzenia są rejestrowane.
ssh_max_auth_retries: 2
ssh_client_alive_interval
ssh_client_alive_interval: 300 # sshd
ssh_client_alive_count
ssh_client_alive_count: 3 # sshd
ssh_permit_tunnel
Zezwolenie na tunelowanie SSH
ssh_permit_tunnel: false
ssh_remote_hosts
Hosty z opcjami niestandardowymi.
ssh_remote_hosts: []
ssh_allow_root_with_key
Ustaw "bez hasła" lub "tak", aby zezwolić użytkownikowi root na logowanie
ssh_allow_root_with_key: 'no' # sshd
ssh_allow_tcp_forwarding
false, aby wyłączyć przekazywanie TCP. Ustaw true, aby zezwolić na przekazywanie TCP.
ssh_allow_tcp_forwarding: false # sshd
ssh_gateway_ports
false, aby wyłączyć wiązanie portów przekazywanych do adresów poza pętlą zwrotną. Ustaw true, aby wymusić wiązanie na adresie wildcard.
Ustaw 'clientspecified', aby pozwolić klientowi określić, do którego adresu ma być przypisane.
ssh_gateway_ports: false # sshd
ssh_allow_agent_forwarding
false, aby wyłączyć przekazywanie agenta. Ustaw true, aby zezwolić na przekazywanie agenta.
ssh_allow_agent_forwarding: false # sshd
ssh_pam_support
true, jeśli SSH ma wsparcie PAM
ssh_pam_support: true
ssh_use_pam
false, aby wyłączyć uwierzytelnianie pam.
ssh_use_pam: false # sshd
ssh_google_auth
false, aby wyłączyć uwierzytelnianie 2FA Google
ssh_google_auth: false # sshd
ssh_print_motd
false, aby wyłączyć drukowanie MOTD
ssh_print_motd: false # sshd
Przykładowy plik zadań
- hosts: all
roles:
- skriptfabrik.sshd
Autor
Licencja
Ten projekt jest licencjonowany na warunkach licencji MIT.
Prawa autorskie
(c) 2022, skriptfabrik GmbH
This role provides secure ssh-client and ssh-server configurations. It is intended to be compliant with the DevSec SSH Baseline.
ansible-galaxy install skriptfabrik.sshd