Lade...
 
RootingLinkstationLS441D        

RootingLinkstationLS441D

Abstract:

Eine kurze Anleitung für die Aktivierung des SSH-Services auf der Buffalo-NAS. 

Konfiguration:

  •  

Linkstation LS441DE mit installierter Firmware 1.84 (aktuell mit Stand: 31.07.2018)

  • ACP Commander GUI (Siehe Link im Abschnitt Links)

Howto:

Frühere Versionen der Firmware haben noch einen Telnet-Server beinhaltet. Mit diesem ging die Aktivierung deutlich einfacher, da man mit dem ACP-Commander zuerst den Telnet-Server startete und dann über Telnet den SSH-Server konfigurieren konnte. EDIT: Der Telnetserver ist im busybox-Binary versteckt. Mehr dazu nachher. Mit dem ACP-Commander kann man nur zeilenweise Kommandos abgeben und bekommt Feedback. Also ist erst einmal nichts mit vi, nano oder joe - der gute alte sed kommt wieder zum Einsatz.

Starten des ACP-Commanders:

Nach dem Download der GUI kann das Programm gestartet werden: Entweder man nimmt das Package für die jeweilige Plattform oder die plattformunabhängige JAR.

Screenshot 20180802 222239  

Das Programm sucht eigenstänidig nach Linkstations im lokalen Netzwerk. Nachteil: Wenn keine gefunden wird, kann auch keine IP manuell eingegeben werden.

Mit dem Passwort des admin-Users kann man sich dann verbinden und Kommandos absetzen. Die Shell ist allerdings nicht interaktiv und daher kann man keinen Editor starten.

Linux liefert allerdings mit sed einen Kommandozeilentexteditor mit, der Dateien in solchen Umgebungen manipulieren kann.

Die Befehle:

First things first: Setzen des root-Passworts. Dafür entweder den ACP-Commander verwenden (set root pw) oder folgenden Befehl eingeben:

(echo newrootpass;echo newrootpass)|passwd

Anschließend den SSH-Server konfigurieren.

Skript auf ausführen setzen:

chmod 0755 /etc/init.d/sshd.sh

Port 22 einstellen. Wenn man einen anderen Port will, kann das zweite "22" durch eine andere Zahl ersetzt werden

sed -i 's/#Port 22/Port 22/g' /etc/sshd_config

Protokoll 2 der Sicherheit wegen

sed -i 's/#Protocol 2/Protocol 2/g' /etc/sshd_config

Root-Login zulassen.  Kann auch auf "no" gestellt werden. Dann kann man sich mit einem andere in der Web-GUI erstellten User anmelden. 

sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/sshd_config

Strictmode ist ebenfalls wichtig für die Sicherheit

sed -i 's/#StrictModes yes/StrictModes yes/g' /etc/sshd_config

SFTP-Einstellungen

sed -i 's/\/usr\/lib\/sftp-server/\/usr\/local\/libexec\/sftp-server/g' /etc/sshd_config

Laut init.Skript wird der SSH-Server allerdings nur gestartet, wenn die Variable SUPPORT-SFTP in der Datei /etc/nas_feature auf 1 gesetzt ist.  Das legt die Lösung nahe, die Variable in der Datei auf 1 zu setzen. Allerdings generiert die Firmware diese Datei bei jedem Start neu. Aus diesem Grund muss die entsprechende Zeile im Init-Skript abgeändert werden:

sed -i 's/"${SUPPORT_SFTP}" = "0"/"${SUPPORT_SFTP}" = "1"/g' /etc/init.d/sshd.sh

Ob die Änderung erfolgreich war, kann versucht werden, den SSH-Server zu starten:

/etc/init.d/sshd start

Sollte der Test erfolgreich sein, kann die NAS neu gestartet werden:

reboot

Installieren der Addons:

von der Website Buffalo-Central kann eine Datei mit ein paar zusätzlichen Binaries wie w, su oder joe geladen werden.

wget http://downloads.nas-central.org/Uploads/OldUploads/LS_Pro_temporary/Binaries/addons.tar

Auf der Linkstation LS441D wird zumindest eine zusätzlich library benötigt:

wget http://downloads.nas-central.org/Users/kaiten/libproc-3.2.6_arm9.tgz
tar -C / -xzvf libproc-3.2.6_arm9.tgz

Gratulation, die Linkstation wurde gerootet.

Telnet-Server

Den Punkt habe ich übersprungen, da ich den Telnet-Server telnetd nicht auf Anhieb gefunden habe.

Unter http://buffalo.nas-central.org/wiki/Open_Stock_Firmware wird beschrieben, dass der telnet-Daemon sich mit

/usr/sbin/telnetd 

starten lässt. Das hat bei mir aber nicht funktioniert. Wenn ich allerdings

busybox telnetd

ausführe, läuft auf dem Port 23 der Telnet-Server.

Debian auf der Linkstation:

In einigen Berichten ist von der Installation von Optware oder der Installation eines Debian-Systems die Rede. Da dort allerdings die LS421D benutzt wurde, habe ich an dem Punkt mit dem SSH-Server aufgehört. Vielleicht habe ich bald die Zeit und die Muße, Debian auf der LS441D zu installieren.

Links:

ACP-Commander-GUI

Erstellt von lbischof. Letzte Änderung: Freitag August 3, 2018 00:37:54 CEST by lbischof. (Version 11)