Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:ssh

SSH-Server

Secure Shell ist ein Dienst, der es ermöglicht, entfernt auf eine Linux-Konsole zugreifen zu können. Unter Ubuntu wird OpenSSH genutzt.

Konfiguration

Konfigurationshilfe erhält man mit

man sshd_config

Die zentrale Konfigurationsdatei liegt unter:

/etc/ssh/sshd_conf

Nach der Konfiguration muss der Server neugestartet werden und überpfüft werden, dass er auch läuft:

# service ssh restart
# service ssh status

Läuft der Prozess nicht, kann der Dienst direkt gestartet werden. Es werden dann auch Fehlermeldungen am Bildschirm ausgegeben(http://ashayhumane.blogspot.de/2012/01/ssh-respawning-too-fast-stopped.html):

# /usr/sbin/sshd

Weitere Informationen kann man dem Log unter /var/log/syslog einsehen.

Logfile

Das Logfile iiegt unter

/var/log/auth.log

Je nach dem welches Log-Level man braucht, kann man eine von den Zeilen einkommentieren:

LogLevel INFO
#LogLevel DEBUG3

Sicherheit

Änderung des Standardports

Standardmäßig wird der Port 22 verwendet. Mittels einer Änderung kann man automatisierte Angriffe mittels Portscanner ausschlaten, indem man die Konfiguration entsprechend auf einen anderen Port legt:

# What ports, IPs and protocols we listen for
Port 99

Weitere Möglichkeiten ergeben sich, indem man bestimmte Adressbereiche aus- oder einsperrt oder die Authentifizierung via Keys erledigt.

Einrichten einer CHROOT-Umgebung für bestimmte Nutzer

Mittels einer CHROOT-Umgebung wird ein Nutzer in ein bestimmtes Verzeichnis „eingesperrt“, sodass er nicht in andere Verzeichnisse wechseln kann. Folgende Veränderungen müssen vorgenommen werden:

Gruppe sftponly

Eine Gruppe, deren Mitgliedschaft die Einstellung aktiviert, muss angelegt werden. Alle Nutzer, die später in dieser Gruppe sind, werden später nur Zugriff auf ein gewisses Verzeichnis (z.B.ihr Home-Verzeichnis) haben.

groupadd sftponly

Dieser Gruppe werden nun alle Nutzer zugewiesen, die sich später in eine CHROOT-Umgebung einloggen sollen.

SSH Konfig

Nun soll OpenSSH so konfiguriert werden, dass alle Nutzer in der Gruppe sftpuser nur Zugriff auf ihr Homeverzeichnis haben. Beispielsweise kann man einem Nutzer das Home-Verzeichnis in ein DocumentRoot des Webservers legen1).

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

Match Group sftponly
      ForceCommand internal-sftp
      ChrootDirectory %h
      X11Forwarding no
      AllowTcpForwarding no

Nun kann der Dienst neu gestartet werden.

Verzeichnisrechte

Falls das Starten des Dienstes misslingt kann es an den Zugriffsrechten zu den Verzeichnissen liegen2).

Hierzu müssen die Home-Verzeichnisse root:[gruppe] gehören!

drwxr-xr-x 12 root www-data      4096 2012-05-12 13:57 wiba10.de/

SSH überprüft beim Login, ob die Dateirechte passen und weist ggt. die Anmeldung zurück, dieses Verhalten lässt sich auch verhindern 3)

Achtung!

Bei Änderungen an der Konfiguration des SSH-Servers kann man sich schnell aussperren. Man sollte immer noch eine eingeloggte Sitzung haben, um ggf. Änderungen wieder rückgängig machen zu können.

Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.

software/ssh.txt · Zuletzt geändert: 2012/10/11 10:23 (Externe Bearbeitung)