Eine Anleitung wie man einen SFTP-Server einrichtet.
- OpenSSH-Server installieren (bei Online Servern sollte es schon installiert sein ;D):
apt-get install openssh-server
oder
apt-get install ssh
- Die SSH Konfigurationsdatei editieren:
nano /etc/ssh/sshd_config
Die Zeile „Subsystem sftp internal-sftp“ einfügen und die andere auskommentieren:
Subsystem sftp internal-sftp #Subsystem sftp /usr/lib/openssh/sftp-server
- Benutzer anlegen:
Methode 1
Benutzer und Verzeichniss anlegen:useradd -m -s /bin/bash timon
Rechte zuweisen:
chown root:timon /home/timon chmod 755 /home/timon
„root“ damit er effektiv darin eingesperrt ist und er standardmäßig keine Dateien auf dem Server hochladen kann.
Passwort setzen:
passwd timon
SSH Zugang? false = NEIN | true = JA:
usermod -s /bin/false timon
Methode 2
Ordner erstellen:
mkdir /home/timon
Benutzer erstellen:
useradd timon
Rechte zuweisen:
chown root:timon /home/timon chmod 755 /home/timon
Homeverzeichniss ändern:
usermod -d /home/timon timon
Passwort setzen:
passwd timon
SSH Zugang? false = NEIN | true = JA:
usermod -s /bin/false timon
- Nochmals die SSH-Konfigurationsdatei editieren:
nano /etc/ssh/sshd_config
und folgendes am Ende der Datei für jeden Benutzer einfügen, damit dieser auch nur auf sein Homeverzeichniss Zugriff hat:
Match User timon ChrootDirectory /home/timon ForceCommand internal-sftp
- SSH einmal neustarten
/etc/init.d/ssh restart
Da dieser Benutzer jetzt nur Lese-Rechte hat, muss noch ein Ordner erstellt werden, wo er Schreib und Lese-Rechte hat:
- Ordner erstellen:
mkdir /home/timon/server
- Rechte vergeben:
chown maria:maria /home/timon/server chmod 755 /home/timon/server
In dem Ordner server (/home/timon/server) kann der Benutzer jetzt machen was er möchte!
Als SFTP-Client kann man z.B. das Firefox Addon Fireftp, Filezilla oder WinSCP nutzen.