OpenWrt: ssh und remote login

(in Arbeit)

Referenz: Artikel Secure Shell (ssh)

Konfiguration in: /etc/sysconfig/dropbear

Schlüsselpaar erstellen (bspw: unter Linux):

cd ~/.ssh
ssh-keygen -t rsa -C "router `date +%Y-%m-%d`" -f id_rsa-router

Auf den Router kopieren:

scp ~/.ssh/id_dsa-router.pub root@192.168.0.3:/tmp

Schlüssel eintragen entweder in: /etc/dropbear/authorized_keys

cat /tmp/id_*.pub >> /etc/dropbear/authorized_keys

oder in: ~/.ssh/authorized_keys bei aktuellen Versionen von OpenWrt:

mkdir ~/.ssh
chown 755 ~/.ssh
cat /tmp/id_*.pub >> ~/.ssh/authorized_keys

Zur Sicherheit sollte man den Port umstellen und Passwort-Login deaktivieren in /etc/config/dropbear

config dropbear
        option Port '6225'          
        option PasswordAuth 'off'   
        option RootPasswordAuth 'off'

        option GatewayPorts 'on'

Auf den Router lässt sich dann mit dem ssh-Schlüssel einloggen (ssh root@192.168.0.3). Gegebenenfalls muss der Schlüssel vorher zugefügt werden (bspw. mit ssh-add ~/.ssh/id_rsa-router). Das funktioniert auch mit Putty (s. Artikel PuTTY: Remote Desktop via ssh).

Wenn man vorher einen User erstellt, wie hier beschrieben: http://www.inetcom.ch/openwrt-adduser-script , der kann den Zugang pro User festlegen, um bei einem Schlüsselverlust nicht einen gemeinsamen Schlüssel aller User wechseln zu müssen.