Moin!
nachdem ich in den letzten Tagen mal wieder ein wenig in meinen VMs gebastelt habe, um die Einstellungen spaeter, wenn alles klappt, auf den Router zu portieren, ist mal wieder eine Frage aufegtaucht, deren Antwort ich bisher nicht im Stande war zu finden... (watt'n Deutsch...)
Ich habe derzeit die
etc/ssh/sshd_conf so modifiziert, dass ein Anmelden auf dem (virtuellen) Router nur moeglich ist, wenn der Key in der
~/.ssh/authorized_keys steht und wenn der sich anmeldende User Mitglied in der Gruppe "ssh" ist. Soweit so gut. Nun moechte ich aber noch mehr Kontrolle. Denn ich moechte den jenigen Leuten, denen ich es erlaube, sich auf den router (und somit in mein Netzwerk) einzuwaehlen, nicht nur sagen, dass sie ein Passwort fuer den Schluessel definieren sollen, sondern viel lieber wuerde ich es sehen, den Schluessel selbst zu vergeben, mit dem sie sich anmelden duerfen.
D.h. es sollte ungefaehr so aussehen:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# > useradd -G ssh [... plus die anderen Optionen ... ] $username
# > passwd $username
# > su $username
$ > ssh-keygen
BLA FASEL
password for public key
**********
$ > less .ssh/id_rsa.pub >> .ssh/authorized_keys
$ > logout
# > cp /home/$username/.ssh/id_rsa.pub /tmp
|
Dann send email mit ssh public key to $freund.
Rufe $freund an, vergleiche
ssh-keygen -B fingerprint von dem Schluessel. wenn dieser uebereinstimmt, dann
cp /irgendwas/id_rsa.pub /home/$username-freund/.ssh/ und dann ein anschlieszendes
ssh -24 -p {Portnummer} -l $username $IPaddresse
Leider funktioniert das nicht ganz. Denn bei meinem Versuch in der VM habe ich folgenden Eintrag in den
/var/log/messages:
Mar 19 07:15:09 GateKeeper sshd[2538]: Failed publickey for root from 192.168.175.69 port 58054 ssh2
Allerdings ist der key, laut fingerprint der gleiche.
Wenn ich allerdings den Schluessel auf dem anderen PC generiere und dann auf den GateKeeper (der virtuelle Router) kopiere, bzw in die ~/.ssh/authorized_keys integriere, funtkioniert das ohne Probleme.
Nur leider habe ich in diesem Falle, wenn das System "in Produktion" geht, keine Kontrolle mehr darueber, ob $freund ein Passwort fuer den Schluessel angegeben hat geschweige denn, ob dieses gewissen komplexitaets Anforderungen entspricht.
Was mache ich falsch, dass es sich bisher nicht so umsetzen laesst, wie ich es gerne haette?