SSH Zugriff auf Synology NAS

In der Regel werden die meisten Aktionen, um ein Synology NAS zu konfigurieren über die Web Oberfläche durchgeführt. Teilweise ist es aber auch wünschenswert, per Konsole auf das NAS zuzugreifen, um gewisse Aktionen auszuführen. Dies kann zur Analyse, für Wartungsarbeiten oder einfach nur, um das System besser zu verstehen erforderlich sein. Damit der Zugriff über die Konsole funktioniert, muss über die DSM Oberfläche der SSH Zugang aktiviert werden. Dazu wird der SSH Dienst über die “Systemsteuerung/Terminal & SNMP” aktiviert. Der Telnet Dienst kann bei Bedarf temporär als Notlösung aktiviert werden, wenn an der SSH Konfiguration etwas nicht stimmt und der Zugriff nicht mehr möglich ist.

Danach kann per SSH auf das NAS mit dem Benutzer “Admin” zugegriffen werden.

ssh admin@192.168.1.100

Um die Sicherheit zu erhöhen, ist es empfehlenswert, für den SSH Zugriff eigene Schlüssel zu verwenden. Als Beispiel, wie SSH Schlüssel erzeugt werden können, dient folgender Artikel.

Der neu erstellte öffentliche Schlüssel muss auf der Synology hinterlegt werden. Dazu wird das entsprechende Verzeichnis mit der “authorized_keys” Datei angelegt.

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chown -R admin:users ~/.ssh
chmod 0600 ~/.ssh/authorized_keys

Der Inhalt des öffentlichen Schlüssels wird in die Datei “~/.ssh/authorized_keys” eingetragen und gespeichert.

Synology NAS SSH public key

Damit die Authentifizierung über die SSH Schlüssel auch funktioniert, muss die SSH Konfiguration angepasst werden.

sudo vi /etc/ssh/sshd_config 

Dazu muss bei folgenden Zeilen das Kommentarzeichen “#” entfernt werden.

PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys

Um die Authentifizierung per Passwort zu verbieten, kann noch folgender Wert gesetzt werden.

PasswordAuthentication no

Um die Änderungen zu aktivieren, muss der SSH Daemon einmal durchgestartet werden.

synoservicectl --reload sshd

Wer jetzt versucht, sich per SSH Schlüssel auf die Synology NAS zu verbinden, wird vermutlich folgende Fehlermeldung erhalten.

Permission denied (publickey)
Synology NAS SSH permission denied (publickey)

Dies liegt an den eigenen Berechtigungen, die durch Synology vergeben werden. Um dies zu umgehen, gibt es zwei Möglichkeiten. Die Berechtigungen des Home Verzeichnisses des Admin Users müssen angepasst werden, damit der SSH Zugriff funktioniert. Dies kann mit folgendem Befehl geschehen.

chmod 755 /volume1/homes/admin/

Dies hat jedoch einen Eintrag im „Synology Sicherheitsberater“ zur Folge, dass die Berechtigungen nicht mehr stimmen. Alternativ lässt sich die Berechtigungsprüfung auch in der SSH Konfiguration abschalten. Dazu muss wieder die Datei “sshd_config” bearbeitet werden.

sudo vi /etc/ssh/sshd_config 

Hier muss der Wert “StrictModes no” hinzugefügt werden. Danach muss der SSH Daemon erneut durchgestartet werden.

synoservicectl --reload sshd

Jetzt klappt der SSH Zugriff mit Schlüsseln ohne Fehlermeldungen.