Prinzipiell ist eine derartige Konfiguration auf drei Wegen möglich. Zum einen über die
Gleichsetzung von Nutzkennungen über Rechnergrenzen hinweg (analog dem Vorgehen in
der /etc/hosts.equiv
) und zum anderen durch die
Authentifizierung mittels der Hostschlüssel und zum dritten durch eine Kombination aus beiden.
Die Konfiguration der beiden erstgenannten Methoden sei nun vorgestellt:
Gleichsetzung von Nutzerkennungen
Diese Methode gilt als unsicher und wird deswegen in der Standardkonfiguration des Servers nicht unterstützt. Dennoch sei das Vorgehen hier skizziert:
In der Datei /etc/shhd_config
ist die Variable RhostsAuthentication
auf yes
zu setzen und der sshd
neu zu starten.
Root hat nun die Möglichkeit, in einer Datei /etc/shosts.equiv
Paare aus
Rechner- und optionalem Nutzernamen einzutragen. Einem Nutzer, der sich unter einem solchen Namen von
entsprechenden Rechner aus anmeldet, wird der Zugang ohne Angabe eines Passwortes gewährt.
Er gilt als "vertrauenswürdig". Der Aufbau der Datei /etc/shosts.equiv
ist
analog zur /etc/hosts.equiv
.
Der gewöhnliche Nutzer kann ein analoges Verhalten durch Anlegen einer Datei .shosts
in seinem Heimatverzeichnis auf dem Zielrechner erreichen. Dazu trägt er in dieser Datei Paare von
Rechner- und Nutzernamen an. Von einem solchen Rechner aus ist das passwortfreie Anmelden unter der
spezifizierten Nutzerkennung möglich.
Authentifizierung mittels Hostschlüssel
Das Vorgehen ist einfach:
Der Nutzer generiert ein Paar aus öffentlichem und privaten Hostschlüssel:
user@sonne> ssh-keygen
|
der Nutzer meldet sich auf dem Zielrechner an:
user@sonne> ssh erde
|
~/.ssh/identity.pub
des
lokalen Rechners (sonne
) fügt der Nutzer an die Datei
~/.ssh/authorized_keys
in seinem Heimatverzeichnis auf dem
Zielrechner (erde
) an.Mittels scp
(Secure Copy):
user@erde> scp user@sonne:~/.ssh/identity.pub user@erde:~/temp.key
|
Zukünftige Sitzungen sollten ohne Angabe eines Passwortes möglich sein.