proFTP für einen User einrichten, Sicherheit beachten

stefkey

Member
Hallo,

ich habe einen Debian-Squeeze vServer (LAMP)
Nun möchte ich noch proftp installieren weil ein Kollege seine Seite per FTP verwalten möchte.

Die Seiten sind ablegt in /var/www/Kollege1/

So wie ich das nun verstanden kann ich mit
ftpasswd --passwortkollege1 --name Kollege1 --uid 9999 --home /var/www/kollege1 --shell /bin/false

nun den ftp User anlegen.

Ist das richtig? Ist das eine gute Möglichkeit oder gibt es andere/bessere Varianten.

FTP soll rund um die Uhr laufen wird aber vermutlich nur von einer Person genutzt. Sicher solls trotzdem konfiguriert sein (/etc/proftpd/proftpd.conf:
"DefaultRoot ~" auskommentieren werde ich die Zeile)


hmmm... vielleicht nocht verschlüsselte Verbindung voraussetzen?
 
Einfacher und Sicherer ist es eben einen sftp-Only User einzurichen (ssh hast Du vermutlich eh schon).

Mein Grundrezept dazu (in der sshd_config):

Code:
Match group sftponly
         ChrootDirectory /var/sftponly/%u
         X11Forwarding no
         AllowTcpForwarding no
         ForceCommand internal-sftp -u 002

Jetzt musst Du /var/sftponly/Kollege1 erstellen (das muss 'root' gehören).
Und dann noch einen bind mount von /var/www/Kollege1/ nach
/var/sftponly/Kollege1/webseiten, Kollege1 in die Gruppe 'sftponly', umrühren, fertig.
 
oh vielen Dank remote_mind,

da muss ich ja nix installieren! Ich bin es gerade am versuchen.

Ich habe auch diese Anleitung gefunden:
http://www.laub-home.de/wiki/SFTP_Only_und_chroot_direkt_mit_OpenSSH

Da ergibt sich nun noch eine Frage:
Wenn ich per filezilla nun etwas hochlade sind die Rechte auf Kollege1:Kollege1 und rw_rw____

Nun kann der apache2 Server die Dateien nicht lesen, der apache-user ist bei mir www-data

Was wäre jetzt zu tun damit der Webserver die hochgeladenen Dateien lesen kann?
Können die Uploads als www-data gesichert werden oder ist das fest immer der sftp-user Kollege1?


1000 Dank!
 
Last edited by a moderator:
Also bei der umask die gesetzt wird (-u 002) sollte 'other' Leserechte auf die Datei bekommen. Bei mir klappt das auch, es kann also am Client liegen - da musst Du mal schauen ob es Optionen bzgl. der Permissions nach dem Upload liegt.

Eine andere Möglichkeit wäre es die Umask auf 022 zu setzen (group nur Leserechte) und dann den User www-data in die Gruppe aufzunehmen.

beste Grüße,
Nils
 
hi Nils,

danke nochmal.

Ich hatte -u 07 aus dem Link genommen.

Nun hätte ich am liebsten gerne rw_r__r__

Ich bekomms einfach nicht raus. Ich habe mich gerade mit umask beschäftigt.
Die Files haben ja 0660 wenn mit umask nichts angestellt wird. umask zieht nun die Rechte ab sowie ich das verstanden habe. Ich hätte ja nun gedacht mit -u 012 hinkomme... ich habe auch anderes versucht. Es will nicht. Mann, gibts das?
Kannst du mir die richtige Zahl nennen?
 
Nun hätte ich am liebsten gerne rw_r__r__

Richtig ist dafür die umask 022. Wenn bei 022 das letzte 'r' fehlt solltest Du den Fehler eher im Client suchen, manchmal haben auch die Rechte der lokalen Datei (die, die Du überträgst) etwas damit zu tun, d.h. manche Clients versuchen remote die gleichen Rechte einzustellen wie lokal.
 
Eine andere Möglichkeit wäre es die Umask auf 022 zu setzen (group nur Leserechte) und dann den User www-data in die Gruppe aufzunehmen.

beste Grüße,
Nils

Aber hier sagst du doch mit 022 bekommt nur die Gruppe Leserechte.

D.h. mit 022 fehlt das letzte r

Tipfehler, oder hab ichs falsch verstanden?
 
Kein Tippfehler:

Für die Rechte 0644 (u=rw,g=r,o=r) bzw. 0755 brauchst die die umask 0022. Die erste 0 kannst Du auch weglassen => 022.

Für die Rechte 0640 (u=rw,g=r,o=) bzw. 0750 lautet die umask 0027.


Du solltest Dich dringend ist das Berechtigungssystem Deines Servers einarbeiten, sonst brauchst Du Dir um die Sicherheit eines (S)FTP keine Gedanken mehr zu machen.


---
.A.
 
hmm, vielen Dank. Ja, theoretisch klar. Aber praktisch macht es das nicht... ich muss schauen wo der Hund begraben liegt. Vielen Dank nochmal zuerst an alle!
 
Back
Top