1
0
Fork 0
mirror of https://github.com/roles-ansible/ansible_role_sshd.git synced 2024-08-16 11:59:49 +02:00
ansible_role_sshd/templates/sshd_config.j2

93 lines
1.9 KiB
Text
Raw Normal View History

2020-03-17 16:39:59 +01:00
# Attention, local changew will be overwritten
2020-03-18 11:30:48 +01:00
# MIT (C) L3D
2018-03-20 20:21:57 +01:00
# {{ ansible_managed }}
2018-03-09 03:13:41 +01:00
# Networking
2020-03-17 16:39:59 +01:00
Port {{ sshd.port }}
TCPKeepAlive yes
# Key exchange
2020-03-18 11:30:48 +01:00
{{ 'KexAlgorithms ' }}
2020-03-17 17:25:08 +01:00
{%- for algo in sshd.kex_algorithmus -%}
2020-03-18 11:30:48 +01:00
{{ algo }}{{ "," if not loop.last }}
2020-03-17 17:25:08 +01:00
{%- endfor %}
# Ciphers:
2020-03-18 11:30:48 +01:00
{{ 'Ciphers ' }}
2020-03-17 17:25:08 +01:00
{%- for cipher in sshd.ciphers -%}
2020-03-18 11:30:48 +01:00
{{ cipher }}{{ "," if not loop.last }}
2020-03-17 17:25:08 +01:00
{%- endfor %}
# Macs
2020-03-18 11:30:48 +01:00
{{ 'MACs ' }}
2020-03-17 17:25:08 +01:00
{%- for mac in sshd.macs -%}
2020-03-18 11:30:48 +01:00
{{ mac }}{{ "," if not loop.last }}
2020-03-17 17:25:08 +01:00
{%- endfor %}
# Server authentication
Protocol 2
2020-03-17 18:47:15 +01:00
{% if sshd.manage_key_types | bool -%}
# host key types
{% for key in sshd.key_types %}
HostKey /etc/ssh/ssh_host_{{ key }}_key
{% endfor %}
{%- endif %}
# HostKeyAlgorithms
# Maybe not available in openssh 6.7
2020-03-18 11:30:48 +01:00
{{ 'HostKeyAlgorithms ' }}
2020-03-17 18:47:15 +01:00
{%- for key in sshd.key_algorithmus -%}
2020-03-18 11:30:48 +01:00
{{ key }}{{ "," if not loop.last }}
2020-03-17 18:47:15 +01:00
{%- endfor %}
# Client authentication
2020-03-17 18:52:03 +01:00
PasswordAuthentication
{%- if sshd.password_authentication | bool -%}
{{ ' yes' }}
{% else -%}
{{ ' no' }}
{% endif %}
ChallengeResponseAuthentication no
PubkeyAuthentication yes
2020-03-18 11:30:48 +01:00
PermitRootLogin without-password
LoginGraceTime 120
StrictModes yes
2020-03-18 11:50:38 +01:00
X11Forwarding
{%- if sshd.xforwarding | bool -%}
{{ ' yes' }}
{% else -%}
{{ ' no' }}
{% endif %}
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes
# User Authentication
2020-03-18 11:30:48 +01:00
{% if sshd.restrict_users -%}
AllowUsers {{ sshd_allowed_users|join(' ') }}
2019-07-17 14:03:00 +02:00
{%- endif %}
2020-03-18 11:30:48 +01:00
{% if sshd.restrict_groups -%}
AllowUsers {{ sshd_allowed_groups|join(' ') }}
2019-07-17 14:03:00 +02:00
{%- endif %}
# Allow client to pass locale environment variables
AcceptEnv LANG LC_*
PrintMotd no
# sftp (required by ansible)
2019-11-20 09:44:44 +01:00
# Subsystem sftp /usr/lib/openssh/sftp-server
2019-11-20 10:20:58 +01:00
{% if ansible_os_family == 'RedHat' %}
2019-11-20 10:15:12 +01:00
Subsystem sftp /usr/libexec/openssh/sftp-server
{% else %}
Subsystem sftp /usr/lib/openssh/sftp-server
{% endif %}