SFTP-Server einrichten

Aus Carl-Christian Sautter - Wiki
Wechseln zu: Navigation, Suche

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.