Hallo, ich würde gerne meinen ssh-Server nach aussen abschotten und zwar so, dass er von aussen nur über ssh-Key erreichbar ist und intern nach wie vor auch Passwort-Authentifizierung möglich ist. Wie muss ich hierzu die sshd_config abändern (benutze SuSE 9.2 Prof.)? Danke und Gruss - Stephan
Am Freitag, 11. März 2005 15:29 schrieb Stephan Huber:
Hallo,
ich würde gerne meinen ssh-Server nach aussen abschotten und zwar so, dass er von aussen nur über ssh-Key erreichbar ist und intern nach wie vor auch Passwort-Authentifizierung möglich ist.
Was meinst Du mit intern? AFAIK musst Du Passwort-Authentifizierung generell zulassen oder ganz verbieten. [..]
Danke und Gruss
- Stephan
Dirk
Am Freitag, 11. März 2005 15:29 schrieb Stephan Huber:
Hallo,
ich würde gerne meinen ssh-Server nach aussen abschotten und zwar so, dass er von aussen nur über ssh-Key erreichbar ist und intern nach wie vor auch Passwort-Authentifizierung möglich ist.
Wie muss ich hierzu die sshd_config abändern (benutze SuSE 9.2 Prof.)?
das geht meines Wissens nicht so einfach. Ich habe folgendes gemacht: 1. Es gibt für den Benutzer "user" einen zweiten User "user2", der von aussen auf meinen Rechner zugreifen darf. 2. in /etc/shadow das Passwort von "user2" löschen (ein * eintragen) 3. in /home/user2/.ssh/authorized_keys folgendes eintragen: command="ssh -A user@localhost" <Öffentlicher Schlüssels des Benutzers der sich bei user2 einloggen darf> 4. in /etc/ssh/sshd_config folgende Zeile eingefügt: AllowUsers user2 *@*.linux.home *@localhost damit erreicht man folgendes: 4: nur user2 darf sich von aussen per ssh einloggen, alle anderen nur vom lokalen Netz 2: user2 kann sich nicht per Passwort authentifizieren. user2 kann sich also bei ssh nur mittels des ssh-Keys ausweisen. 3: sobald sich user2 per ssh von aussen einlogged, wird ein "ssh user@localhost" ausgeführt, d.h. man wird "direkt" auf "seinen" Account weitergeleitet. Da ich den öffentlichen Schlüssel von "user" nicht in /home/user2/.ssh/authorized_keys eingtragen habe, muß man sich noch per Passwort als user ausweisen. Aber: man befindet sich dann schon als user2 auf dem lokalen Rechner! Mit diesem Passwort kann man sich also nicht von aussen als user anmelden! user2 kann auch keine anderen Kommandos ausführen, sobald man sich per ssh einlogged. Siehe auch: http://www.linux-magazin.de/Artikel/ausgabe/2002/09/ssh/ssh.html unter "Dienstbare Schlüssel erzwingen Kommandos" Eine andere Möglichkeit ist: Man lässt eine zweite Instanz von sshd auf einem anderen Port laufen, dort benutzt man eine andere Konfigdatei, in welcher man die Autentifizierung mittels Passwort für alle Benutzer verbietet. Zusammen mit verschiedenen Zeilen AllowUsers in den beiden Konfig-Dateien sollte es auch gehen. (Ich hoffe es ist klar wie ich's gemacht habe, wenn nicht: nachfragen) Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 9204871 Fax: +49(721) 24874 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
On Fri, Mar 11, 2005 at 03:29:18PM +0100, Stephan Huber wrote:
Wie muss ich hierzu die sshd_config abändern (benutze SuSE 9.2 Prof.)?
Kopieren und eine Version mit Passwort Auth auf dem internen Interface und eine Version mit Key-Auth auf dem oeffentlichen Interface laufen lassen. -- Peter
participants (4)
-
Dirk Abe
-
Dr. Jürgen Vollmer
-
Peter Wiersig
-
Stephan Huber