Created
July 6, 2013 18:59
-
-
Save kjellski/5940875 to your computer and use it in GitHub Desktop.
This is an example real-world sshd_config with a nice little example at the end. A match clause that enables different setting for specific ranges than general settings...
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is the sshd server system-wide configuration file. See | |
# sshd_config(5) for more information. | |
# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin | |
# The strategy used for options in the default sshd_config shipped with | |
# OpenSSH is to specify options with their default value where | |
# possible, but leave them commented. Uncommented options change a | |
# default value. | |
#Port 22 | |
#AddressFamily any | |
#ListenAddress 0.0.0.0 | |
#ListenAddress :: | |
# The default requires explicit activation of protocol 1 | |
#Protocol 2 | |
# HostKey for protocol version 1 | |
#HostKey /etc/ssh/ssh_host_key | |
# HostKeys for protocol version 2 | |
#HostKey /etc/ssh/ssh_host_rsa_key | |
#HostKey /etc/ssh/ssh_host_dsa_key | |
#HostKey /etc/ssh/ssh_host_ecdsa_key | |
# Lifetime and size of ephemeral version 1 server key | |
#KeyRegenerationInterval 1h | |
#ServerKeyBits 1024 | |
# Logging | |
# obsoletes QuietMode and FascistLogging | |
#SyslogFacility AUTH | |
#LogLevel INFO | |
# Authentication: | |
#LoginGraceTime 2m | |
#BC# Root only allowed to login from LAN IP ranges listed at end | |
PermitRootLogin no | |
#PermitRootLogin yes | |
#StrictModes yes | |
#MaxAuthTries 6 | |
#MaxSessions 10 | |
#RSAAuthentication yes | |
#PubkeyAuthentication yes | |
#AuthorizedKeysFile .ssh/authorized_keys | |
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts | |
#RhostsRSAAuthentication no | |
# similar for protocol version 2 | |
#HostbasedAuthentication no | |
# Change to yes if you don't trust ~/.ssh/known_hosts for | |
# RhostsRSAAuthentication and HostbasedAuthentication | |
#IgnoreUserKnownHosts no | |
# Don't read the user's ~/.rhosts and ~/.shosts files | |
#IgnoreRhosts yes | |
# To disable tunneled clear text passwords, change to no here! | |
#BC# Disable password authentication by default (except for LAN IP ranges listed later) | |
PasswordAuthentication no | |
PermitEmptyPasswords no | |
#BC# Have to allow root here because AllowUsers not allowed in Match block. It will not work though because of PermitRootLogin. | |
#BC# This is no longer true as of 6.1. AllowUsers is now allowed in a Match block. | |
AllowUsers kmk root | |
# Change to no to disable s/key passwords | |
#BC# I occasionally use s/key one time passwords generated by a phone app | |
ChallengeResponseAuthentication yes | |
# Kerberos options | |
#KerberosAuthentication no | |
#KerberosOrLocalPasswd yes | |
#KerberosTicketCleanup yes | |
#KerberosGetAFSToken no | |
# GSSAPI options | |
#GSSAPIAuthentication no | |
#GSSAPICleanupCredentials yes | |
# Set this to 'yes' to enable PAM authentication, account processing, | |
# and session processing. If this is enabled, PAM authentication will | |
# be allowed through the ChallengeResponseAuthentication and | |
# PasswordAuthentication. Depending on your PAM configuration, | |
# PAM authentication via ChallengeResponseAuthentication may bypass | |
# the setting of "PermitRootLogin without-password". | |
# 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'. | |
#BC# I would turn this off but I compiled ssh without PAM support so it errors if I set this. | |
#UsePAM no | |
#AllowAgentForwarding yes | |
#AllowTcpForwarding yes | |
#GatewayPorts no | |
X11Forwarding yes | |
#X11DisplayOffset 10 | |
#X11UseLocalhost yes | |
#PrintMotd yes | |
#PrintLastLog yes | |
#TCPKeepAlive yes | |
#UseLogin no | |
#UsePrivilegeSeparation yes | |
#PermitUserEnvironment no | |
#Compression delayed | |
#ClientAliveInterval 0 | |
#ClientAliveCountMax 3 | |
#UseDNS yes | |
#PidFile /var/run/sshd.pid | |
#MaxStartups 10 | |
#PermitTunnel no | |
#ChrootDirectory none | |
# no default banner path | |
#Banner none | |
# override default of no subsystems | |
#Subsystem sftp /usr/lib/misc/sftp-server | |
Subsystem sftp internal-sftp | |
# the following are HPN related configuration options | |
# tcp receive buffer polling. disable in non autotuning kernels | |
#TcpRcvBufPoll yes | |
# allow the use of the none cipher | |
#NoneEnabled no | |
# disable hpn performance boosts. | |
#HPNDisabled no | |
# buffer size for hpn to non-hpn connections | |
#HPNBufferSize 2048 | |
# Example of overriding settings on a per-user basis | |
#Match User anoncvs | |
# X11Forwarding no | |
# AllowTcpForwarding no | |
# ForceCommand cvs server | |
#BC# My internal networks | |
#BC# Root can log in from here but only with a key and kmk can log in here with a password. | |
Match Address 172.22.100.0/24,172.22.5.0/24,127.0.0.1 | |
PermitRootLogin without-password | |
PasswordAuthentication yes |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
finally a living example.
thanks a lot