SSH

Was ist SSH?

SSH steht für Secure Shell, und bezeichnet ein Protokoll, dass es einem erlaubt über ein entferntes System auf die Kommandozeile (Command Line Interface, CLI) zuzugreifen. SSH ist standardmäßig auf jedem Terminal auf GNU/Linux oder macOS verfügbar. Für Windows ist Drittsoftware nötig, z.B. MobaXterm (Klicke nach dem Start auf Session und dann SSH).

Während der YunoHost Installation

Finde deine IP

Solltest du auf einem VPS installieren, dann hat der VPS Provider die IP-Adresse, die du bei ihm erfragen solltest.

Wenn du Zuhause installierst (z.B. auf einem Raspberry Pi oder OLinuXino), dann musst du herausfinden, welche IP-Adresse dein Router dem System zugewiesen hat. Hierfür existieren mehrere Wege:

  • Öffne ein Terminal und tippe sudo arp-scan --local ein, um eine Liste der aktiven IP-Adressen deines lokalen Netzwerks anzuzeigen;
  • wenn dir der arp-scan eine zu unübersichtliche Zahl an Adressen anzeigt, versuche mit nmap -p 22 192.168.**x**.0/24 nur die anzuzeigen, deren SSH-Port 22 offen ist. (passe das x deinem Netzwerk an);
  • Prüfe die angezeigten Geräte in der Benutzeroberfläche deines Routers, ob du das Gerät findest;
  • Schließe einen Bildschirm und Tastatur an deinen Server, logge dich ein und tippe hostname --all-ip-address.

Verbinden

Dieser Abschnitt muss neu geschrieben werden, jetzt gibt es den Benutzer admin nicht mehr und er wird durch die Gruppe admins ersetzt

Angenommen deine IP Addresse ist 111.222.333.444, öffne einen Terminal und gib Folgendes ein:

ssh root@111.222.333.444

Es wird nach einem Passwort gefragt. Handelt es sich um einen VPS, sollte der VPS Provider dir das Passwort kommuniziert haben. Wenn du ein pre-installed image benutzt (für x86 Computer oder ARM boards), sollte das Passwort yunohost sein.

Seit YunoHost 3.4 kann man sich nach dem Ausführen der Postinstallation nicht mehr als root anmelden. Stattdessen sollte man sich mit dem admin Benutzer anmelden! Für den Fall, dass der LDAP-Server defekt und der admin Benutzer nicht verwendbar ist, kann man sich eventuell trotzdem noch mit root über das lokale Netzwerk anmelden.

Ändere das Passwort!

Nach dem allerersten Login sollte man das root Passwort ändern. Der Server könnte dazu automatisch auffordern. Falls nicht, ist der Befehl passwd zu benutzen. Es ist wichtig, ein einigermaßen starkes Passwort zu wählen. Beachte, dass das root Passwort durch das admin Passwort überschrieben wird, wenn man die Postinstallation durchführt.

Auf ans Konfigurieren!

Wir sind nun bereit, mit der Postinstallation zu beginnen.

Nach der Installation von YunoHost

Wenn du deinen Server zu Hause installiert hast und versuchst, dich von außerhalb deines lokalen Netzwerks zu verbinden, stell sicher, dass Port 22 korrekt an deinen Server weitergeleitet wird. (Zur Erinnerung: seit YunoHost 3.4 solltest du dich mit dem Benutzer admin verbinden).

Wenn du nur die IP-Adresse deines Servers kennst :

ssh username@111.222.333.444

Dann musst du dein Administratorkennwort eingeben, das du unter Post-Installationsschritt erstellt hast.

Wenn du dein DNS konfiguriert hast (oder deine /etc/hosts optimiert hast), kannst du einfach deinen Domainnamen verwenden:

ssh username@your.domain.tld

Wenn du den SSH-Port geändert hast, musst du -p <Portnummer> an den Befehl anhängen, z.B. :

ssh -p 2244 username@your.domain.tld

Wenn du als admin verbunden bist und aus Bequemlichkeit root werden möchtest (z.B. um nicht vor jedem Befehl sudo eintippen zu müssen), kannst du mit dem Befehl sudo su root werden.

Welche Benutzer?

Standardmäßig kann sich nur der Benutzer admin am YunoHost SSH-Server anmelden.

Die über die Administrationsoberfläche angelegten Benutzer von YunoHost werden über das LDAP-Verzeichnis verwaltet. Standardmäßig können sie sich aus Sicherheitsgründen nicht über SSH anmelden. Wenn du möchtest, dass einige Benutzer SSH-Zugang haben, verwende den Befehl:

yunohost user permission add ssh.main <username>

Es ist auch möglich, den SSH-Zugang wie folgt zu entfernen:

yunohost user permission remove ssh.main <username>

Schließlich ist es möglich, SSH-Schlüssel hinzuzufügen, zu löschen und aufzulisten, um die Sicherheit des SSH-Zugangs zu verbessern, indem man die Befehle verwendet:

yunohost user ssh add-key <username> <key>
yunohost user ssh remove-key <username> <key>
yunohost user ssh list-keys <username>

Sicherheit und SSH

N.B.: fail2ban sperrt deine IP für 10 Minuten, wenn du 5 fehlgeschlagene Login-Versuche durchführst. Wenn du die IP-Sperre aufheben willst, schau dir die Seite über Fail2Ban an.

Eine ausführlichere Diskussion über Sicherheit & SSH findest du auf der dedicated page.

YunoHost Kommandozeile

Ein vollständiges Tutorial über die Kommandozeile würde den Rahmen der YunoHost-Dokumentation sprengen: Lies dazu am besten ein spezielles Tutorial wie dieses oder dieses. Aber sei versichert, dass du kein CLI-Experte sein musst, um es zu benutzen!

Der Befehl yunohost kann zur Verwaltung deines Servers verwendet werden und führt verschiedene Aktionen aus, die denen des Webadmin ähneln. Der Befehl muss entweder vom root-Benutzer oder vom admin-Benutzer durch Voranstellen von sudo gestartet werden. (ProTip™ : Du kannst root mit dem Befehl sudo su als admin werden).

YunoHost-Befehle haben normalerweise diese Art von Struktur:

yunohost app install wordpress --label Webmail
          ^    ^        ^             ^
          |    |        |             |
    category  action  argument      options

Zögere nicht, nach weiteren Informationen zu einer bestimmten Kategorie oder Aktion zu fragen, indem du die Option --help verwendest. Zum Beispiel listen diese Befehle :

yunohost --help
yunohost user --help
yunohost user create --help

nacheinander alle verfügbaren Kategorien auf, dann die in der Kategorie Benutzer verfügbaren Aktionen, dann die Verwendung der Aktion Benutzer erstellen. Du wirst feststellen, dass der YunoHost-Befehlsbaum eine ähnliche Struktur aufweist wie die YunoHost-Admin-Seiten.

Fehler gefunden? Möchten Sie diese Seite verbessern? Einfach dem Edit Link am Anfang der Seite folgen und dann auf das Symbol auf Github clicken um Änderungen vorzuschlagen.