Nachdem ich erfolglos versucht habe den integrierten FTP-Server aus der oleg-Firmware (renewed: WL500gpv2-1.9.2.7-rtn-r3121)
nach newbiefan's Anleitung zu konfigurieren, habe ich einfach mal vsftpd aus dem Repo installiert und möchte nun meine Erkenntnisse mit euch teilen.
Voraussetzung ist natürlich ein fertig aufgesetzter WL500gP(v2) nach wengi's How To mit der oleg-Firmware (renewed).
Bevor ihr meine Lösung allerdings in die Tat umsetzt, sollte sich einer das Ganze mal kritisch ansehen und vor allem Tipps geben
wie man die Sache sicherer gestalten kann. Der angelegte Benutzer ist ja ein vollwertiger Benutzer!
- per SSH (unter Windows mit PuTTY) auf dem Router einloggen und das vsftpd-Paket installieren:
falls nicht vorhanden auch "adduser" installieren (wird später für die Benutzerverwaltung benötigt):Code:ipkg install vsftpd
Code:ipkg install adduser- Datei "vsftpd" in /opt/etc/xinetd.d/ mit folgendem Inhalt anlegen (damit vsftpd per xinetd gestartet wird):
Code:service ftp { socket_type = stream server = /opt/sbin/vsftpd protocol = tcp port = 21 user = admin group = root wait = no disable = no }- Konfiguration in vsftpd.conf nach Bedarf anpassen. Meine sieht wie folgt aus:
Code:anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 #anon_upload_enable=YES #anon_mkdir_write_enable=YES dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES #chown_uploads=YES #chown_username=whoever vsftpd_log_file=/opt/var/log/vsftpd.log #xferlog_std_format=YES idle_session_timeout=600 data_connection_timeout=120 #nopriv_user=ftpsecure #async_abor_enable=YES #ascii_upload_enable=YES #ascii_download_enable=YES ftpd_banner=Du benutzt zwennysFTPserver auf zwennysgateway #deny_email_enable=YES #banned_email_file=/opt/etc/vsftpd.banned_emails chroot_local_user=YES #chroot_list_enable=YES #chroot_list_file=/opt/etc/vsftpd.chroot_list ls_recurse_enable=YES listen=NO #listen_ipv6=YES- Die FTP-Benutzer habe ich einfach mit "adduser" erstellt:
Anschließend müsst ihr ein Passwort eingeben und dieses nochmal bestätigen. Der Benutzer ist dann in /etc/passwd eingetragen.Code:adduser Benutzername- In /etc/passwd muss dann noch das Heimatverzeichnis (home) zum gewünschten FTP-Pfad für den Benutzer geändert werden.
Der Pfad ist absolut und wird vorgegeben mit /home/Benutzername.
Erstellt man also einen Benutzer namens ftpuser würde der Eintrag in /etc/passwd folgendermaßen aussehen:
Aus Sicherheitsgründen glaube ich sollte die letzte Spalte von "/bin/sh" besser auf "/bin/false" gesetzt werden,Code:ftpuser:waKS/Rlnrx4XY:1001:1001:Linux User,,,:/home/ftpuser:/bin/sh
damit das Benutzerkonto nicht missbraucht werden kann!
Ihr könnt den Benutzer übrigens ganz einfach wieder mit
löschen.Code:deluser Benutzername- Jetzt könnt ihr xinetd neustarten und damit vsftpd anschmeißen:
Code:/opt/etc/init.d/S10xinetd restart
Damit solltet ihr dann per FTP-Cliet auf die FTP-Freigaben gelangen.