[fli4l] Server über Internet einschalten

Ernst Eiswürfel ernst.eiswuerfel at online.de
So Jan 17 17:31:38 CET 2016


Am 17.01.2016 um 15:12 schrieb Thomas Grunenberg:
> Zu meinem Verständnis:
> Für den root-Account lege auf dem fli4l-Router ich einen Schlüssel an,
> mit dem ich alles machen kann.
> Für den root-Account kann ich auf dem fli4l-Router einen zweiten
> Schlüssel anlegen, der nur ein bestimmtes Kommando ausführt.
>
> Habe ich das richtig verstanden?
Hallo Thomas,

ich weiss nicht wie gut du dich mit Linux und SSH auskennst und wie weit 
ich deshalb ausholen muss. Ich versuch es einfach mal.

Zunächst einmal würde ich, Wenn es möglich ist, WOL nicht als root 
ausführen sondern einen neuen Benutzer dafür anlegen. Und ja, ein 
Benutzer kann mehrere Schlüssel haben und verwenden. Beim SSH-Login kann 
man eine Schlüsseldatei angeben. Das funktioniert auch mit Putty.

SSH-Schlüsselpaare werden auf dem Gerät erzeugt von dem aus man sich 
verbinden möchte. Für den privaten Schlüsselteil kann man eine 
Passphrase vergeben, was aber für den WOL-Schlüssel nicht unbedingt 
notwendig ist. Den öffentlichen Teil des Schlüssels kopiert man auf 
den/die Zielrechner in die ~/.ssh/authorized_keys Datei des 
entsprechenden Benutzers. Solange noch ein Passwort-Login möglich ist, 
funktioniert das mit "ssh-copy-id user at zielhost". Anschließend kannst du 
das Kommando für WOL in ~/.ssh/authorized_keys einschränken.

Damit das ganze aus dem Internet funktioniert muss noch der Port 22 auf 
dem Fli freigeschaltet werden. Damit das weiterhin sicher bleibt 
solltest du "SSH-Login mit Passwort" deaktivieren. Damit du dich auch 
dann weiterhin als root oder anderer Benutzer per SSH einloggen kannst 
benötigen sie alle einen solchen Schlüssel (für reguläres Login 
sinnvollerweise mit Passphrase). Das Login an der Konsole bleibt davon 
unberührt, so dass du dich nie selbst ganz aussperren kannst.

Also nochmal eine kurze Zusammenfassung: Die Datei 
~/.ssh/authorized_keys eines Benutzers kann beliebig viele öffentliche 
Schlüssel enthalten und jeden einzelnen Schlüssel kann man auf ein (oder 
mehrere) Kommando(s) einschränken. Nur der "Besitzer" des passenden 
privaten Schlüssels kann sich per SSH auf dem host anmelden. Ein 
privater Schlüssel mit Passphrase kann nur mit Kenntnis der Passphrase 
verwendet werden.

Trotzdem gilt: Der private Schlüsselteil sollte geheim gehalten werden. 
Sollte ein privater Schlüssel doch einmal kompromittiert werden, dann 
werden beide, privater und öffentlicher Schlüssel, auch in der 
authorized_hosts Datei, durch einen Neuen ersetzt.

E.E.
-- 




Mehr Informationen über die Mailingliste Fli4L