Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
software:ssh [2012/05/17 19:12] khopf [Konfiguration] |
software:ssh [2012/10/11 10:23] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== 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 legen((http://blog.schalanda.name/archives/154-chroot2-Unterstuetzung-fuer-OpenSSH.html/)). | ||
- | |||
- | #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 liegen((http://www.mynakedgirlfriend.de/sichere-chroot-umgebung-fur-ssh-dateiubertragungen-sftp/)). | ||
- | |||
- | 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 ((http://www.rackblogger.de/2008/12/08/ssh-bad-ownership-or-modes/)) | ||
- | |||
- | |||
- | ===== 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.