SFTP - Nur Download, kein Upload möglich

schneiderinho

New Member
Hallo Leute,

ich bin gerade dabei meinen ersten Linux Server (Ubuntu 10.04) aufzusetzen und sämtliche Webserver Dienste laufen auch bereits. Einzig beim SFTP-Zugang habe ich momentan noch ein Problem:

Ich habe einen Nutzer namens user1. Diesen benutze ich sowohl für den Shellzugriff als auch für den SFTP Zugang. Der Nutzer ist kein root, hat jedoch sudo-Rechte. Zur Installation habe ich folgende Befehle genutzt:

Code:
# Gruppe sftponly erstellt
sudo groupadd sftponly
# user1 zur Gruppe hinzugefügt
sudo adduser user1 sftponly
# Dann in der sshd_config die Zeile über das Subsystem in folgende geändert:
Subsystem sftp internal-sftp
# Und am Ende noch folgende Zeilen eingefügt/geändert:
Match group sftponly
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Ziel war es dem Nutzer SFTP-Rechte für alle Verzeichnisse zu geben. Herausgekommen dabei ist dass ich mir alle Verzeichnisse und Daten anschauen kann, aber keine Dateien hochladen kann.
Als Clienten wurden hierbei Coda und Transmit genutzt (beide OSX).

Weiß jemand woran das liegen kann oder kennt eine gute Anleitung zur Einrichtung eines vollen FTP-Zugangs?

Vielen Dank schonmal!
 
Dir fehlen als einfacher Nutzer auf Dateisystem-Ebene die Schreibrechte. Das ist auch so gewollt, sonst könnte ja jeder Benutzer System-Dateien überschreiben. sudo greift unter SFTP nicht.

Du musst deine Files mit SFTP ins Home-Verzeichnis des Benutzers laden und anschließend per ssh und sudo an die richtige Stelle schieben. Zum Bearbeiten von Files direkt auf dem Server kannst du nano benutzen.
 
Ah ok, vielen Dank erstmal. Dann weiß ich jetzt wenigstens woran es liegt.

Ich nehme also meinen Standardbenutzer user1, richte für ihn den SFTP-Zugang ein und sperre ihn in seinen Ordner.
Alle Daten, die beispielsweise nach /var/www oder ähnliches müssen werden dann immer zuerst in den privaten Ordner geladen und später per sudo in den eigentlichen Ordner geladen.

Gibt es hier Skripte oder Programme die einem bei diesem Vorgang etwas unter die Arme greifen können ohne bei der Sicherheit einzubüßen?
 
Du könntest auch den /var/www für deinen User schreibbar machen. Dann kannst du deine Daten direkt dort reinblasen.

Mögliches Szenario: Du legst eine Gruppe web-admin an, fügst deinen User dieser Gruppe zu und machst das Verzeichnis /var/www schreibbar für die Gruppe web-admin.

Chrooted dein SFTP-Server ins Home-Verzeichnis des Users, hilft dir ein bind-mount auf ein Unterverzeichnis dieses Home-Verzeichnisses. So wäre es möglich, dass sich dein User per SFTP anmeldet, ein Verzeichnis www in seinem Home-Verzeichnis vorfindet und dort seine Daten reinschreibt. Diese wären dann sofort unter /var/www verfügbar.

Bitte beachten: Dieses Szenario muss natürlich auf deine Gegebenheiten angepasst werden. Nicht einfach übernehmen, sonst baust du dir unter Umständen Sicherheitslöcher ein!
 
Back
Top