Index: security/chapter.xml =================================================================== --- security/chapter.xml +++ security/chapter.xml @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/security/chapter.xml,v 1.178 2012/04/30 17:07:41 bcr Exp $ - basiert auf: r44520 + basiert auf: r44524 --> Sicherheit @@ -2687,6 +2687,11 @@ besitzen. + Mit sftp können Dateien über eine + interaktive Sitzung kopiert werden. &man.sftp.1; beschreibt + die verfügbaren Befehle, die während einer + sftp-Sitzung zur Verfügung stehen. + Schlüsselbasierte Authentifizierung @@ -2808,8 +2813,8 @@ einen Tunnel zu erstellen, in dem ein anderes Protokoll verschlüsselt übertragen wird. - Das folgende Kommando erzeugt einen Tunnel für - &man.telnet.1;: + Im folgenden Kommando erzeugt ssh einen + Tunnel für telnet: &prompt.user; ssh -2 -N -f -L 5023:localhost:23 user@foo.example.com &prompt.user; @@ -2821,8 +2826,8 @@ - Zwingt &man.ssh.1; dazu, die Version 2 des - Protokolls zu verwenden, um sich mit dem Server zu + Zwingt ssh dazu, die Version 2 + des Protokolls zu verwenden, um sich mit dem Server zu verbinden. @@ -2832,8 +2837,8 @@ Zeigt an, dass ein Tunnel erstellt werden soll. - Ohne diese Option würde &man.ssh.1; eine normale Sitzung - öffnen. + Ohne diese Option würde ssh eine + normale Sitzung öffnen. @@ -2841,7 +2846,8 @@ - Zwingt &man.ssh.1; im Hintergrund zu laufen. + Zwingt ssh im Hintergrund zu + laufen. @@ -2869,26 +2875,24 @@ Ein SSH-Tunnel erzeugt einen Socket auf localhost und dem angegebenen - Port. Jede Verbindung, die auf dem angegebenen Socket - aufgemacht wird, wird dann auf den spezifizierten entfernten - Rechner und Port weitergeleitet. - - Im Beispiel wird der Port 5023 - auf die entfernte Maschine und dort auf - localhost Port - 23 weitergeleitet. Da der Port - 23 für &man.telnet.1; reserviert - ist, erzeugt das eine sichere &man.telnet.1;-Verbindung durch + lokalen Port. Jede Verbindung, die auf dem angegebenen + Socket aufgemacht wird, wird dann auf den spezifizierten + entfernten Rechner und Port weitergeleitet. Im Beispiel wird + der lokale Port 5023 an die entfernte + Maschine auf Port 23 weitergeleitet. Da + der Port 23 für telnet reserviert ist, + erzeugt das eine sichere &man.telnet.1;-Verbindung durch einen SSH-Tunnel. - Diese Vorgehensweise kann genutzt werden, um jedes - unsichere TCP-Protokoll wie + Wie in den folgenden Beispielen zu sehen ist, kann diese + Vorgehensweise genutzt werden, um jedes unsichere + TCP-Protokoll, wie SMTP, POP3 und - FTP weiterzuleiten. + FTP, weiterzuleiten. - Mit &man.ssh.1; einen sicheren Tunnel für - <acronym>SMTP</acronym> erstellen + Einen sicheren Tunnel für <acronym>SMTP</acronym> + erstellen &prompt.user; ssh -2 -N -f -L 5025:localhost:25 user@mailserver.example.com user@mailserver.example.com's password: ***** @@ -2898,11 +2902,11 @@ Escape character is '^]'. 220 mailserver.example.com ESMTP - Zusammen mit &man.ssh-keygen.1; und zusätzlichen - Benutzer-Accounts können leicht benutzbare SSH-Tunnel - aufgebaut werden. Anstelle von Passwörtern können - Schlüssel benutzt werden und jeder Tunnel kann unter einem - eigenen Benutzer laufen. + Zusammen mit ssh-keygen und + zusätzlichen Benutzer-Accounts können leicht benutzbare + SSH-Tunnel aufgebaut werden. Anstelle + von Passwörtern können Schlüssel benutzt werden und jeder + Tunnel kann unter einem eigenen Benutzer laufen. @@ -2931,18 +2935,20 @@ - Umgehen einer strengen Firewall + Umgehen einer Firewall - Einige Netzwerkadministratoren stellen sehr - drakonische Firewall-Regeln auf, die nicht nur einkommende - Verbindungen filtern, sondern auch ausgehende. Es kann - sein, dass Sie externe Maschinen nur über die Ports 22 und - 80 (SSH und Web) erreichen. + Einige Firefalls filtern sowohl eingehende als auch + ausgehende Verbindungen. Zum Beispiel könnte eine + Firewall den Zugriff auf entfernte Rechner auf die Ports + 22 und 80 beschränken, um lediglich SSH + und Web-Inhalte zu erlauben. Dies würde den Zugriff auf + Dienste verhindern, die nicht die Ports 22 oder 80 + benutzen. Die Lösung hier ist es, eine SSH-Verbindung zu einer Maschine außerhalb der Firewall aufzumachen und durch diese zum - gewünschten Dienst zu tunneln. + gewünschten Dienst zu tunneln: &prompt.user; ssh -2 -N -f -L 8888:music.example.com:8000 user@unfirewalled-system.example.org user@unfirewalled-system.example.org's password: ******* @@ -2965,20 +2971,42 @@ aktivieren - Um zu überprüfen, ob &man.sshd.8; auf dem System aktiviert - ist, suchen Sie in rc.conf nach der - folgenden Zeile: + Neben den integrierten + SSH Client-Werkzeugen, die zur Verfügung + stehen, kann ein &os;-System auch als + SSH-Server konfiguriert werden, um + Verbindungen von anderen SSH-Clients zu + akzeptieren. + Benutzen Sie den Kommando &man.service.8;, um zu prüfen + ob der sshd ausgeführt wird: + + &prompt.root; service sshd status + + Wenn der Dienst nicht ausgeführt wird, fügen Sie folgende + Zeile in /etc/rc.conf ein: + sshd_enable="YES" - Ist diese Zeile vorhanden, wird &man.sshd.8;, der - OpenSSH-Daemon, beim - Systemstart automatisch aktiviert. Alternativ kann - OpenSSH auch über &man.service.8; - gestartet werden: + Diese Zeile startet sshd, den + OpenSSH-Daemon, beim nächsten + Systemstart. Geben Sie folgendes ein, um den Dienst jetzt + zu starten: &prompt.root; service sshd start + Wenn sshd erstmalig gestartet wird, + werden die Host-Schlüssel des Systems erzeugt und der + Fingerabdruck wird auf der Konsole angzeigt. Stellen Sie den + Fingerabdruck den Benutzern zur Verfügung, sodass sie ihn + überprüfen können, wenn sie das erste Mal eine Verbindung mit + dem Server herstellen. + + &man.sshd.8; enthält die verfügbaren Optionen für den + Start von sshd und weitere Informationen + zur Authentifizierung, den Anmeldeprozess und die + verschiedenen Konfigurationsdateien. + Es ist in der Regel ein gute Idee, festzulegen, welche Benutzer sich von welchem Rechner aus anmelden können. Dies lässt sich beispielsweise über die Option @@ -3002,50 +3030,37 @@ AllowUsers root@192.168.1.32 admin - - Nur Benutzer, die in dieser Liste aufgeführt ist, - dürfen sich auf diesem Rechner anmelden. - - Nachdem Sie /etc/ssh/sshd_config - angepasst haben, muss &man.sshd.8; seine Konfigurationsdateien - neu einlesen. Dazu geben Sie Folgendes ein: + angepasst haben, muss sshd seine + Konfigurationsdateien neu einlesen. Dazu geben Sie Folgendes + ein: &prompt.root; /etc/rc.d/sshd reload - - - Konfiguration + + Wenn die Option AllowUsers verwendet + wird, ist es wichtig, jeden Benutzer aufzulisten, der sich + an diesem Rechner anmelden muss. Benutzer, die nicht in + dieser Liste aufgeführt sind, dürfen sich nicht anmelden. + Die Optionen für die Konfigurationsdatei von + OpenSSH unterscheiden zwischen + Groß- und Kleinschreibung. Wenn Sie eine Option falsch + schreiben, so wird sie ingnoriert. Testen Sie immer + die Änderungen, um sicherzustellen, dass sie wie erwartet + funktionieren. Weitere Informationen zu den verfügbaren + Optionen finden Sie in &man.sshd.config.5;. + - - OpenSSH - Konfiguration - - - Die für das ganze System gültigen Konfigurationsdateien - des OpenSSH-Daemons und des - Clients befinden sich in /etc/ssh. - - Die Client-Konfiguration befindet sich in - ssh_config, die des Servers befindet sich - in sshd_config. Für beide Dateien - existieren Manualpages, welche die einzelnen - Konfigurationsoptionen beschreiben. + + Verwechseln Sie nicht + /etc/ssh/sshd_config mit + /etc/ssh/ssh_config (beachten Sie das + zusätzliche d im ersten Dateinamen). Die + erste Datei konfiguriert den Server und die zweite Datei + konfiguriert den Client. &man.ssh.config.5; enthält eine + Auflistung der verfügbaren Client-Einstellungen. + - - - Weiterführende Informationen - - OpenSSH - - &man.ssh.1; &man.scp.1; &man.ssh-keygen.1; - &man.ssh-agent.1; &man.ssh-add.1; &man.ssh.config.5; für - Client Optionen. - - &man.sshd.8; &man.sftp-server.8; &man.sshd.config.5; für - Server Optionen. -