Secure Shell Damon (sshd)

RHEL5, RHEL6, security, SOLLTE

Die Konfiguration des sshd sollte darauf geprüft werden, dass nur SSH Protokoll v2 erlaubt ist, Protokoll v1 ist unsicher:

grep ^Protocol /etc/ssh/sshd_config
Protocol 2

Nur ausgewählte Benutzern sollten SSH-Zugang bekommen:

grep ^AllowUsers /etc/ssh/sshd_config
AllowUsers USER1 USER2

Root-Zugang per SSH sollte unterbunden werden, Anweisungen, die Root-Rechte brauchen, sollten per su oder sudo ausgeführt werden:

grep ^PermitRootLogin /etc/ssh/sshd_config 
PermitRootLogin no

Für SSH-Sessions sollte ein Idle-Tineout festgesetzt sein (z.B. 5 Minuten):

grep ^ClientAlive /etc/ssh/sshd_config
ClientAliveInterval 300
ClientAliveCountMax 0

Die Benutzung des sshd als rshd sollte unterbunden werden:

grep ^IgnoreRhosts /etc/ssh/sshd_config
IgnoreRhosts yes

Host-basierte Authentifizierung sollte nicht gestattet sein:

grep ^HostbasedAuthentication /etc/ssh/sshd_config
HostbasedAuthentication no

Login mit leerem Passwort sollte verboten sein:

grep ^PermitEmptyPasswords /etc/ssh/sshd_config
PermitEmptyPasswords no

Das Setzen von Umgebungsvariablen sollte nicht gestattet werden:

grep ^PermitUserEnvironment /etc/ssh/sshd_config
PermitUserEnvironment no

Login mittels Passwort sollte nicht gestattet sein, sondern nur Login per SSH-Key:

grep ^PasswordAuthentication /etc/ssh/sshd_config
PasswordAuthentication no
grep ^PubkeyAuthentication /etc/ssh/sshd_config
PubkeyAuthentication yes

Der SSH-Daemon sollte nur auf nur auf ausgewählte IP(s) gebunden sein:

grep ^ListenAddress /etc/ssh/sshd_config
ListenAddress 10.163.164.165
ListenAddress 192.163.164.165

SSH-Zugang nur von ausgewählten IPs, Hosts oder Netzwerken zugelassen werden:

grep ^sshd: /etc/hosts.deny
sshd: ALL EXCEPT 10.163.164.161 192.163.164.161
 
grep „dport 22 “ /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -s 10.163.164.161/32 -m state --state NEW -p tcp --dport 22 -j ACCEPT 
-A RH-Firewall-1-INPUT -s 192.163.164.161/32 -m state --state NEW -p tcp --dport 22 -j ACCEPT