Homepage Wiki Forum Buy

Administration per SSH

Aus GNUBLIN

Secure Shell (SSH) ist ein Netzwerkprotokoll mit dem man eine sichere Verbindung zu einem Entfernten Rechner herstellen kann. Man verbindet sich dabei mit dem Terminal des Rechners und man kann sich so im Terminal des Rechners bewegen wie wenn man direkt daran angeschlossen wäre. Es ist ebenfalls möglich via SFTP Dateien auszutauschen.

SSH

Damit man sich per SSH mit dem GNUBLIN verbinden kann, muss der SSH-Server auf dem GNUBLIN laufen. Im Regelfall läuft SSH von vornherein. Dies kann man auch schnell überprüfen:

root@gnublin:~# ps aux | grep ssh

Damit man sich nun von seinem Rechner aus verbinden kann muss für den Benutzer root auf dem GNUBLIN ein Passwort gesetzt sein.

root@gnublin:~ passwd

Nun steht einem nichts mehr im Weg sich über das Netzwerk mit dem GNUBLIN zu verbinden. Man braucht lediglich die IP-Adresse des GNUBLINs. Diese kann man mit ifconfig herausfinden.

Auf dem Hostrechner muss der ssh-client installiert sein, bei vielen Linux-Distributionen wie Ubuntu ist dieser von vornherein vorhanden. Gibt man dann ein:

user@develop-pc:~# ssh root@192.168.0.10

Die IP-Adresse muss man natürlich durch die eigene ersetzen.

Beim ersten mal wird man gefragt ob man den public key des GNUBLIN annehmen möchte, das bestätigt man mit yes. Nach der Passwortabfrage ist man dann mit dem GNUBLIN verbunden.

Um die Verbindung wieder zu trennen gibt man exit ein:

root@gnublin:~# exit

SSH ohne Passwort

Man kann es einrichten, so dass man kein Passwort mehr für ssh und scp braucht. Man geht wie folgt vor.

Auf dem Entwicklungscomputer:

ssh-keygen

Dann wird ein Schlüsselpaar erzeugt. Optional kann man das Schlüsselpaar mit einem Passwort schützen. Ist der Schlüssel erzeugt, muss man den öffentlichen Schlüssel auf das Board übertragen.

ssh-copy-id root@192.168.0.100

bzw. muss man statt der 192.168.0.100 die IP-Adresse des GNUBLIN Boards eintragen. Jetzt muss man noch das letzte mal das Passwort von GNUBLIN eingeben. Anschliessend kann man jederzeit mit

ssh root@192.168.0.100

sich auf das Board ohne Passwort verbinden.

SCP

SCP dient der Dateiübertragung über eine SSH-Verbindung. Mann muss sich dazu nicht wie oben beschrieben per SSH mit dem GNUBLIN verbinden, lediglich der SSH-Server muss auf dem Board laufen.

Der scp-Befehl ähnelt dem cp-Befehl:

scp Quelldatei.bsp Benutzer@Host:Verzeichnis/Zieldatei.bsp

Das sieht dann so aus:

user@develop-pc:~# scp beispiel.txt root@192.168.0.10:

Die IP muss natürlich wieder durch die des Zielsystems ersetzt werden.

Hinter dem Doppelpunkt gibt man das Zielverzeichnis an, gibt man nichts an wird die Datei automatisch in das Heimverzeichnis des Benutzers abgelegt, hier also /root.

Das ganze funktioniert natürlich auch in die andere Richtung (vorausgesetz auf dem Entwicklungsrechner läuft ein ssh-Server), vom GNUBLIN zum Entwickler-PC:

root@gnublin:~# scp beispiel.txt user@192.168.0.5:
In anderen Sprachen