Letzte Anpassung zur Version: 12.1
- Neu:
- Artikelanpassung
- Übersetzung
Vorherige Versionen: 11.7
Einleitung
Der SSH-Zugang zur UTM kann in drei fest definierten und einer benutzerdefinierten Sicherheitsstufe unter
Root-Zugriff
Root mit Benutzerauthentifizierung
HinweisEs besteht kein Root Zugriff über die Benutzerauthentifizierung im Modus "hoch" und "sehr hoch". Hier ist nur die Authentifizierung per Public Key möglich.
Root Zugriff per Public-Key
Um per ssh-public-key eine Authentifizierung ohne Passwort über eine SSH-Konsole durchzuführen sind folgende Schritte notwendig:
Schritt | Beschreibung | |
---|---|---|
Erstellen eines SSH-RSA Schlüsselpaares | Dieses kann auf einem Windowssystem mit einem Zusatzprogramm wie z.B. "puttygen" generiert werden. | [[Datei: ]] |
Auf einem Linux/Unix System steht das Tool "ssh-keygen" zur Verfügung, welches mit der Option ssh-keygen -t rsa ausgeführt wird. | ||
Speicherort des Schlüssels | Der öffentliche Teil des Schlüssels kann nach der Erstellung mit "puttygen" mit | und gespeichert werden, standardmäßig im Dokumenten-Verzeichnis des Windows-Benutzers.|
Bei Linux/Unix befindet sich dieser im Benutzerverzeichnis unter /home/benutzer/.ssh/ | ||
Format public key | Die PuTTYgen-Datei muss diesbezüglich noch angepasst werden:
Der public-key muss das folgende Format haben: ssh-rsa <public-key> Da sich zwischen "ssh-rsa" und dem Key ein Leerzeichen befindet, muss der gesamte Inhalt in Anführungszeichen gesetzt werden. Außerdem sollte auch der optionale Eintrag des Benutzers in Form "Benutzer@Rechner" angefügt werden. Dieses sieht dann insgesamt folgendermassen aus: "ssh-rsa AAAAB3NzaC1....93stGrJPeQ= a.admin@ttt-point.de" | |
In der Linuxdatei "id_rsa.pub" ist dieses schon so eingerichtet. | ||
Den öffentlichen Schlüssel auf die UTM übertragen | Nun wird dieser Schlüssel kopiert und über eine SSH-Konsole mit dem folgenden CLI-Kommando hinzugefügt:
system ssh pubkey new key "ssh-rsa AAAAB3NzaC1....93stGrJPeQ= | |
RSA-Schlüssel auf der UTM aktivieren | Um den RSA-Schlüssel zu nutzen, wird dieser mit dem folgenden CLI-Kommando aktiviert: system ssh pubkey enable id 1 Die ID dieses Keys kann über das Kommando system ssh pubkey get abgefragt werden. | |
Authentifizierung per Public-Key aktivieren | Um sich über eine SSH-Konsole per Public-Key Authentifizieren zu können, muss dieses aktiviert werden. Das entsprechende CLI-Kommando auf der UTM lautet: extc global set variable "GLOB_SSH_PUBKEY_AUTH" value 1 Abschließend erfolgt noch eine Aktualisierung des UTM-Systems mit dem CLI-Kommando system update system | |
Privaten Schlüssel einbinden | Unter PuTTY muss nun noch die Datei mit dem Privaten Schlüssel im Menü Category → Connection → SSH → Auth hinzugefügt werden und im Feld Host Name wird der Benutzer mit übergeben im Format root@<IP-Adresse>. | [[Datei: ]] [[Datei: ]] |
Mit dem SSH-Client unter Linux genügt das Kommando ssh root@<IP-Adresse> da hier der Key an einer definierten Stelle im System abgelegt ist. | ||
CLI
Die Einstellungen, die im Webinterface vorgenommen werden sind auf dem CLI über die nachfolgenden Befehle sichtbar.
extc value get application "sshd"
Das Ergebnis sollte ähnlich wie folgt aussehen:
application|variable |value
-----------+------------------------+-----
sshd |CIPHER_LIST |
|CIPHER_LIST_H |chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
|CIPHER_LIST_M |aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
|CIPHER_LIST_P |chacha20-poly1305@openssh.com
|HMAC_LIST |
|HMAC_LIST_H |hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-ripemd160-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,hmac-ripemd160,umac-128@openssh.com
|HMAC_LIST_M |hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
|HMAC_LIST_P |hmac-sha2-256-etm@openssh.com
|KEX_LIST |
|KEX_LIST_H |curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
|KEX_LIST_M |ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
|KEX_LIST_P |curve25519-sha256@libssh.org
|LOGIN_GRACE_TIME |10
|PERMIT_ROOT_LOGIN |no
|PERMIT_ROOT_LOGIN_H |no
|PERMIT_ROOT_LOGIN_M |yes
|PERMIT_ROOT_LOGIN_P |no
|RATE_ALLOW_PENDING_CONNS|10
|RATE_MAX_PENDING_CONNS |100
|RATE_START_DROP_CHANCE |30
|SECMODE |2
|USE_HOSTKEY_DSA |0
|USE_HOSTKEY_EC25519 |1
|USE_HOSTKEY_ECDSA |1
|USE_HOSTKEY_RSA |1
|USE_OTP |0
Die Variable SECMODE zeigt an, welche SSH Konfiguration gegenwärtig aktiv ist.
Es gibt vier Konfigurationen, die dieser Variablen zugeordnet werden können:
value | Bedeutung |
---|---|
0 | Sehr hoch |
1 | Hoch |
2 | Mittel |
3 | Benutzerdefiniert |
Wird die Variable im CLI einer anderen Konfiguration zugeordnet, dann muss diese Anweisung durch den Neustart der Anwendung SSHD aktiviert werden.
extc value set application "sshd" variable SECMODE value 1 appmgmt restart application "sshd"
Hinweis: Sicherheitsvorkehrungen bei Konfigurationstests
Wird geplant, über das Webinterface oder das CLI, neue Verschlüsselungen oder die SSH Einstellungen zu manipulieren, sollte vor der Umstellung eine SSH-Verbindung zur UTM bestehen. Bestehende SSH-Verbindungen werden nicht durch die Umstellung der Verschlüsselung oder der SSH Einstellungen unterbrochen.