Dienste/SSH
SSH
An vielen Linux-/Unix-Rechner am FB3 kann man sich per SSH anmelden. Diese Seite stellt Anleitungen für den Umgang mit diesem Dienst, sowie eine Liste mit Hostkeys von im Fachbereichsnetz bekannten SSH-Servern zur Verfügung.
Die Anmeldung per SSH erfolgt ausschließlich über das Public-Key-Verfahren.
FB3-Rechner auf denen man sich mit SSH anmelden kann
Dies ist eine nicht erschöpfende Liste von FB3-Rechnern, auf denen man sich per SSH anmelden kann:
- login.informatik.uni-bremen.de
- Login-Server auf Linix-Basis.
- login-smartos.informatik.uni-bremen.de
- Login-Server in einer SmartOS-Zone.
- login-freebsd.informatik.uni-bremen.de
- Login-Server auf FreeBSD-Basis.
- (x01-x10).informatik.uni-bremen.de
- Linux-Rechner im Praktikumspool.
- (m01-m06).informatik.uni-bremen.de
- macOS-Rechner (Intel) im Praktikumspool.
- (mm1-mm5).informatik.uni-bremen.de
- macOS-Rechner (ARM) im Praktikumspool.
SSH-Hostschlüssel von FB3-Rechnern
Aktuelle Liste von Hostschlüsseln für FB3-Rechner im OpenSSH-Format: ssh_known_hosts
Zugriff auf Dateien im FB3-Netz
FB3-Rechner auf denen man sich per SSH anmelden kann binden in der Regel diverse NFS-Dateifreigaben aus dem Netzwerk ein die unter /home
zu finden sind. Unter anderem die Heimverzeichnisse und die persönlichen Webseiten.
Per SSH kann dadurch mit SFTP aus der Ferne darauf zugegriffen werden.
Dabei ist zu beachten, dass ggf. nicht immer alle verfügbaren Verzeichnisse unter /home
gelistet werden. Diese werden beim Zugriff auf den Pfad automatisch eingehängt.
So kann es z.B. sein, dass ls /home
keinen Eintrag für wwwu
anzeigt, cd /home/wwwu/$USER
funktioniert aber trotzdem (und danach wird wwwu
auch in /home
angezeigt).
Einrichten von Public-Key-Authentifizierung
Diese Anleitung gilt für alle Betriebssysteme auf denen ein OpenSSH-Client verfügbar ist, also unter anderem Linux, macOS und Windows.
OpenSSH ist in aktuellen Windows-Versionen Teil des Betriebssystems, muss aber ggf. noch aktiviert werden. Siehe hier für eine Anleitung dazu.
Für die Anmeldung wird ein öffentlicher und ein privater Schlüssel benötigt. Der öffentliche Schlüssel wird dabei auf dem SSH-Server hinterlegt und kann bedenkenlos veröffentlicht bzw. an andere Personen weitergegeben werden, während der private Schlüssel sich allein im Besitz des Clients befindet und unter allen Umständen geheim gehalten werden sollte.
Erzeugen eines Schlüsselpaares
Um ein Schlüsselpaar zu erzeugen, kann auf dem Client-Rechner das folgende Kommando ausgeführt werden:
ssh-keygen -t ed25519
Es erzeugt in ~/.ssh
die Dateien id_ed25519
(privater Schlüssel) und id_ed25519.pub
(öffentlicher Schlüssel). Mit dem Parameter -f $DATEINAME
können die Dateinamen und -pfade angepasst werden.
Der Befehl fordert dazu eine eine sogenannte Passphrase einzugeben. Diese wird dazu benutzt um den privaten Schlüssel zu verschlüsseln, sodass er nur in Verbindung mit der Passphrase genutzt werden kann.
Öffentliche Schlüssel auf SSH-Servern hinterlegen
Wenn man einen öffentlichen Schlüssel in seinem Heimverzeichnis hinterlegt, kann man sich autoamtisch auf allen FB3-Rechnern anmelden, die dieses einbinden (und das Anmelden per SSH zulassen).
Am Beispiel des oben erzeugten Schlüsselpaares muss man dazu den Inhalt der Datei id_ed25519.pub
(NICHT id_ed25519
) in die Datei .ssh/authorized_keys
einfügen. Wenn das .ssh
-Verzeichnis nicht existiert kann man es einfach wie folgt anlegen:
mkdir ~/.ssh chmod 700 .ssh
Wenn man nicht vor Ort ist um seinen öffentlichen Schlüssel direkt an einem Rechner zu hinterlegen kann man stattdessen die FB3-Usertools nutzen. Die dort hinterlegten öffentlichen Schlüssel werden jedoch nicht im Heimverzeichnis abgelegt, sondern in einer Datenbank gespeichert, sodass man sich ggf. nur auf bestimmten Rechnern anmelden kann (siehe den Text auf der verlinkten Seite).
Verwenden von privaten Schlüsseln
Wenn man beim Erzeugen des Schlüsselpaares den vorgegebenen Pfad für die Schlüsseldateien genutzt hat wird der private Schlüssel automatisch vom SSH-Client berücksichtigt.
Falls man einen anderen Pfad oder Dateinamen gewählt hat, kann man den Pfad zum privaten Schlüssel wie folgt angeben:
ssh -i /pfad/zum/privaten/schlüssel zielhost
Alternativ kann man die Konfigurationsdatei ~/.ssh/config
benutzen. Siehe auch die OpenSSH-Dokumentation dazu.