PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu ProFTPD-Konfiguration via Webmin



Dannyo
27.08.03, 16:45
Ich habe mir gerade Webmin gezogen und installiert, habe jetzt den ProFTP-Server durch Webmin installiert und konfiguriert.

Meine Frage(n): Wie kann ich jetzt sichergehen, dass der ProFTP-Server korrekt läuft (die Konfiguration war so einfach, dass ich noch etwas skeptisch bin ;) ) und vorallem: Wie kann ich User-Accounts für ProFTP anlegen, damit ich es bewerkstelligen kann, dass BESTIMMTE User nur auf BESTIMMTE Ordner zugreifen können ?

Danke im Voraus für eure Hilfe ! :)

Dannyo

Dannyo
27.08.03, 19:07
Bitte, kann mir jemand helfen ? Es ist wirklich dringend... möchte den Server heute um Mitternacht wieder ins Netz hängen und ich habe keine Spur von Ahnung was die Useraccounts des FTP-Servers betrifft...

Wär wirklich super, wenn mir hier jemand weiterhelfen könnte :)

derRichard
27.08.03, 19:21
Original geschrieben von Dannyo
Bitte, kann mir jemand helfen ? Es ist wirklich dringend... möchte den Server heute um Mitternacht wieder ins Netz hängen und ich habe keine Spur von Ahnung was die Useraccounts des FTP-Servers betrifft...

Wär wirklich super, wenn mir hier jemand weiterhelfen könnte :)
hallo!

vergiss webmin.
wenn du dir sicher sein willst, dass der proftp richtig und _sicher_ läuft, dann musst ihn selber konfigurieren.

//richard

Dannyo
27.08.03, 19:27
Und wie kann ich Useraccounts für bestimmte Ordner anlegen ?

derRichard
27.08.03, 19:43
Original geschrieben von Dannyo
Und wie kann ich Useraccounts für bestimmte Ordner anlegen ?
hallo!

schon mal was von rtfm gehört?
http://www.proftpd.org/docs/

//richard

Doh!
27.08.03, 21:41
Original geschrieben von Dannyo
Bitte, kann mir jemand helfen ? Es ist wirklich dringend... möchte den Server heute um Mitternacht wieder ins Netz hängen und ich habe keine Spur von Ahnung was die Useraccounts des FTP-Servers betrifft...

Wär wirklich super, wenn mir hier jemand weiterhelfen könnte :)

Für 100 € die Stunde bau ich Dir 'ne Konfiguration...

Dannyo
29.08.03, 20:58
Original geschrieben von derRichard
hallo!

schon mal was von rtfm gehört?
http://www.proftpd.org/docs/

//richard

Das habe ich sowieso gemacht, aber ich kann eben noch nicht besonders viel damit anfangen, da ich erst seit einer Woche mit Linux zu tun habe und noch etwas unbeholfen bin.

Bin aber schon ein bisschen weiter gekommen:

Mittlerweile komme ich über meinen Root-Account FAST rein :D
Ich kann mich mit meinem Serve verbinden, er akzeptiert Username und Passwort und schließlich gibt der FTP-Client die Meldung "Entering Passive Mode" zurück... und ab hier gehts nimmer. Er zögert lange und schreibt schließlich "Socks: request rejected or failed" hin. Irgendeine Kleinigkeit scheint also noch zu fehlen... kann mir jemand sagen um welche Kleinigkeit es sich da handelt.

Und wo wir schon dabei sind... ich habe in der "Benutzer und Gruppen"-Konfigurationskategorie neue User inklusive ihren Home-Dirs angelegt und möchte diesen für diese Homedirs nun FTP-Zugriff gewähren. Was muss ich tun ?

Tut mir leid, aber aus der FAQ auf proftpd.de werde ich nicht wirklich schlau.

Wäre nett, wenn mir hier jemand helfen würde. :)

Dannyo
29.08.03, 22:51
Kommt schon, Leute ! Die Sache ist wirklich verdammt wichtig für mich... Hat denn niemand eine Ahnung was man gegen dieses Problem tun könnte ? :rolleyes:

Goauld
29.08.03, 23:24
viel zu aufwendig zu konfiggen und wenne dich mit der proftpd. conf eingearbeitet und es geschafft hast, dann stellste fest, dasse ne ganz andere konfiguration brauchst, die dir der proftpd garnicht bieten kann :p
nimm den glftpd, der kann alles;) und ist superleicht einzurichten.
http://www.glftpd.com/

Doh!
30.08.03, 01:26
Original geschrieben von Goauld
viel zu aufwendig zu konfiggen und wenne dich mit der proftpd. conf eingearbeitet und es geschafft hast, dann stellste fest, dasse ne ganz andere konfiguration brauchst, die dir der proftpd garnicht bieten kann :p
nimm den glftpd, der kann alles;) und ist superleicht einzurichten.
http://www.glftpd.com/

Gewäsch.

Zu Dannyo:

Poste mal bitte Deine proftpd.conf und les Dir den Link in meiner Sig. durch. Solltest Du ein prof. Sysadmin sein lass Dir einen väterlichen Rat geben: Bringe Dich niemals in eine Situation, in der von Dir verlangt wird, innerhalb einer Woche einen Server unter Linux aufzubauen, ohne dass Du Ahnung von Linux hast. Bei Windows kannst Du alles irgendwie kurzfristig hinwackeln. Bei Linux musst Du wissen was Du tust.

Doh!
30.08.03, 01:43
Original geschrieben von Dannyo
Ich habe mir gerade Webmin gezogen und installiert, habe jetzt den ProFTP-Server durch Webmin installiert und konfiguriert.

Meine Frage(n): Wie kann ich jetzt sichergehen, dass der ProFTP-Server korrekt läuft (die Konfiguration war so einfach, dass ich noch etwas skeptisch bin ;) ) und vorallem: Wie kann ich User-Accounts für ProFTP anlegen, damit ich es bewerkstelligen kann, dass BESTIMMTE User nur auf BESTIMMTE Ordner zugreifen können ?

Danke im Voraus für eure Hilfe ! :)

Dannyo

Wenn Du ordentliche Hilfe willst, dann frag auch ordentlich:

Also

1. In welchem Umfeld willst Du den Server einsetzen? Nur im privaten Netzwerk oder öffentlich?

2. Welcher "Kundenkreis" soll angesprochen werden? Soll es ausschließlich Userzugänge geben oder auch anonyme Zugänge? Wieviele verschiedene User sollen sich anmelden?

3. http://www.proftpd.org/docs/example-conf.html

4. Die User werden über die Unix-rechte im Betriebsystem selbst geregelt. Will heißen, wenn Du zum Beispiel 20 User auf Deiner Linuxbüchse anlegst, dann kannst Du es so machen, dass dieses per FTP auf ihre Homeverzeichnisse zugreifen können:

[code]
...
DefaultRoot ~
...

<Directory ~>
[Hier Deine Accesregeln einfügen]
</Directory>

Das ~ Zeichen ist bei Unix ein besonderes Zeichen und bedeutet immer Homeverzeichnis des aktuellen Users. Hast Du also einen user "dummbeutel", der sein Homeverzeichnis unter "/home/dummbeutel" hat, so wird mit DefaultRoot ~ dorthingewechselt. Als Username und Login wird das benutzt, was der User auch auf der Linuxbüxhse hat.

Bitte lese Dir die unter 3. angegebenen Konfigurationen durch und versuche Sie anhand der Direktivenliste http://www.proftpd.org/docs/directives/linked/by-name.html und http://www.proftpd.de/28.0.html zu verstehen. Es macht keinen Sinn, wenn Du hier eine Lösung vorgefertigt bekommst und diese nicht verstehst! Fange mit den einfachen Konfigs an und mache dann weiter,

Dannyo
30.08.03, 11:59
Hallo Doh! ! :)

aaaalso:


Poste mal bitte Deine proftpd.conf und les Dir den Link in meiner Sig. durch. Solltest Du ein prof. Sysadmin sein lass Dir einen väterlichen Rat geben: Bringe Dich niemals in eine Situation, in der von Dir verlangt wird, innerhalb einer Woche einen Server unter Linux aufzubauen, ohne dass Du Ahnung von Linux hast. Bei Windows kannst Du alles irgendwie kurzfristig hinwackeln. Bei Linux musst Du wissen was Du tust.
Meine proftpd.conf ist leicht erklärt: Die Standardkonfiguration mit gelöschtem "Anonymous"-Bereich.
Bisher lief alles gut, habe RedHat aufgesetzt, einen LAMPS installiert und eingerichtet, es rennt bereits alles fabelhaft. Nur mit dem proftpd habe ich nicht gerechnet :D


1. In welchem Umfeld willst Du den Server einsetzen? Nur im privaten Netzwerk oder öffentlich?
Öffentlich. Der Server ist ziemlich hochfrequentiert und die HP zum Server ist www.austriansoccerboard.com. Habe also ein ziemlich großes Clientel, bzw. ein kleineres Clientel, das einen FTP-Zugang braucht.


2. Welcher "Kundenkreis" soll angesprochen werden? Soll es ausschließlich Userzugänge geben oder auch anonyme Zugänge? Wieviele verschiedene User sollen sich anmelden?
Außer meinem Root-Zugang sollte es ca. zehn weitere Usersccounts geben.

ad 3: Sehe ich es richtig, dass wenn ich z.B. einen User "Arschkrampf" habe und dieser in seinem "Home"-Ordner schalten und walten sollte, wie er will, dass ich in die proftpd.conf die folgenden Zeilen einfügen muss ?

<Directory ~>
AllowUser mcres
DenyAll
</Directory>
Reicht das oder fehlt da noch was ?



4. Die User werden über die Unix-rechte im Betriebsystem selbst geregelt. Will heißen, wenn Du zum Beispiel 20 User auf Deiner Linuxbüchse anlegst, dann kannst Du es so machen, dass dieses per FTP auf ihre Homeverzeichnisse zugreifen können:
Ja, das mit dem Useranlegen habe ich schon verstanden, das Einbinden in die .conf ist mein gröberes Problem.

Denke, dass ich die für meine Zwecke notwendigen Direktiven verstehe (das heisst, sofern mein oben gepostetes Beispiel richtig ist...).

Ein anderes Problem:
Ich kann mich als root nicht mit dem FTP-Server verbinden bzw. eigentlich kann ich mich schon verbinden, er nimmt Benutzername und Passwort an, schreibt schon eine Willkommens-Message und danach bricht er bei "Entering Passive Mode" ab und beendet mit der Meldung "Socks: request rejected or failed".
Denke mal, dass das nur daran liegen kann, dass z.B. die Firewall blockiert. Wie kann ich dieses Problem lösen ?
Geht es möglicherweise mit "service iptables stop" ?
Und wenn ja: Nachdem ich die iptables gestoppt habe und der FTP-Zugang funktioniert, was mache ich schließlich mit den gestoppten iptables ? Einfach ausgeschaltet lassen ist ja wohl etwas fahrlässig, oder ?

Auf jeden Fall mal vielen Dank für die Hilfe !

*cheers
Dannyo

Doh!
30.08.03, 13:35
<Directory ~>
<Limit ALL>
AllowGroup users
</Limit>
</Directory>


Damit werden haben in den Homeverzeichnissen alle User das Recht alles zu machen. Um zu verhindern, dass irgendwie ein User in einem Homeverzeichnis eines anderen was machen kannst, würde ich die Rechte der User mit
chmod -R 700 /pfad/zum/jeweiligen/homeverzeichnis
auf den User selbst einschränken.

Ich weiß nicht, ob es bei Proftp auch einen Platzhalter für den aktuellen user gibt, falls ja, könnte man das auch mit dem machen.

Dannyo
30.08.03, 13:40
Wenn ich ein Verzeichnis auf 700 chmodde, sgt das ja quasi aus, dass der Eigentümer des Ordners alle Rechte hat und alle anderen nicht.
Nur: Ist durch das simple Anlegen eines Users und seines Home-Dirs schon definiert, dass er der Eigentümer dieses Dirs ist ?

Also, noch ein Beispiel:

Ich habe einen User namens "test", dessen Home-Dir z.B. "/htdocs/test" ist.
Ich setze das Verzeichnis "test" auf CHMOD 700 und trage die folgenden Zeilen in die conf-Datei ein:

<Directory ~>
<Limit ALL>
AllowUser test
</Limit>
</Directory>

Sollte es so funktionieren ?

Doh!
30.08.03, 13:50
Original geschrieben von Dannyo

Nur: Ist durch das simple Anlegen eines Users und seines Home-Dirs schon definiert, dass er der Eigentümer dieses Dirs ist ?


Ich glaub per default wird 744 eingestellt

Doh!
30.08.03, 13:51
Original geschrieben von Dannyo


Also, noch ein Beispiel:

Ich habe einen User namens "test", dessen Home-Dir z.B. "/htdocs/test" ist.
Ich setze das Verzeichnis "test" auf CHMOD 700 und trage die folgenden Zeilen in die conf-Datei ein:

<Directory ~>
<Limit ALL>
AllowUser test
</Limit>
</Directory>

Sollte es so funktionieren ?

Wobei mit einem AllowUser anstelle von AllowGroup sollte 700 nicht nötig sein, sonst müsste es passen

Goauld
30.08.03, 14:10
das ganze geht natürlich auch ohne chmod und nur mit/in der conf.
du legst als erstes einen user mit seinem stammverzeichnis an, dann den nächsten u.s.w. danach schreibst du in der conf folgendes:
DefaultRoot ~

nun können die user nur noch in ihren stammverzeichnis walten und schalten und kommen da nicht mehr raus!

übrigens würd ich aus sicherheitsgründen in der conf auch noch folgendes schreiben:
RootLogin off
über root sich in den ftp einzuloggen ist nicht gut, dann schon eher über ssh

damit die user nun auch noch alles in ihrem stammverzeichnis machen können musst du folgendes in der conf eintragen:
<Directory /*>
AllowOverwrite on
</Directory>

das wäre jetzt eine ganz simple konfiguration für user in ihrem stammverzeichnis

Dannyo
30.08.03, 14:26
<Directory /*>
AllowOverwrite on
</Directory>

Das impliziert aber alle User, oder ?
Ich brauche also nicht für jeden Benutzer, den ich anlege eine Zeile nach diesem Erscheinungsbild in der conf anlegen... !?

ok, so weit ist das ja mal ok, jetzt habe ich nur mehr das vermeintliche Firewall-Problem:
Nachdem im FTP-Client "Entering passive mode" aufscheint, schaltet er sich mit dem Argument "Socks: request rejected or failed" ab... ein Freund von mir meinte, dass dies nur an der Firewall liegen könne.
Ich sollte also die Funktion "service iptables stop" ausführen.
Aber: Wenn ich dieses Service stoppe, läuft ja keine Firewall mehr, oder sehe ich das falsch ?

Goauld
30.08.03, 15:05
Das impliziert aber alle User, oder ? Ich brauche also nicht für jeden Benutzer, den ich anlege eine Zeile nach diesem Erscheinungsbild in der conf anlegen... !?

richtig und nein brauchste nicht für jeden einzeln festlegen. wie gesagt das wäre ne ganz simple aber wirkungsvolle konfig. wenn dir das erstmal langt dann is gut, wenn nicht, dann musste dich unbedingt weiter mit der config beschäftigen. der proftpd kann ne menge, nur wasser kochen noch nicht, das kann widerum der glftpd :D

schalte doch einfach mal kurz die firewall, entweder mit dem befehl oder mit hilfe vom webmin ab, dann siehste doch obs daran liegt?

Dannyo
30.08.03, 15:16
Naja, ich denke mehr als das brauche ich ohnehin nicht...

ok, werde das jetzt mal alles versuchen, auch das mit der Firewall.

VIELEN, VIELEN DANK AN ALLE FÜR EURE HILFE ! Ich gebe dann Bescheid ob es funktioniert hat :)

*cheers
Dannyo

Doh!
30.08.03, 17:10
Original geschrieben von Goauld

DefaultRoot ~


Korrekt, hab' ich vergessen


Original geschrieben von Goauld

RootLogin off


Jo auch gut
Dazu würde ich den usern, auch das Login an einer Konsole auf dem Rechner verbieten, sonst können die sich per ssh draufverbinden: Dazu in der "/etc/passwd" die Einträge
"/bin/bash" in "/bin/false" umändern, oder das korrekter mit "usermod -s /bin/false [username]" machen. In der Proftpd.conf musst Du dann im Global noch "RequireValidShell off" setzen.


Original geschrieben von Goauld

<Directory /*>
AllowOverwrite on
</Directory>




The AllowOverwrite directive permits newly transfered files to overwrite existing files. By default, ftp clients cannot overwrite existing files.


Du musst also die Limit-Directive dennoch setzen.

Doh!
30.08.03, 17:13
Original geschrieben von Dannyo
Das impliziert aber alle User, oder ?
Ich brauche also nicht für jeden Benutzer, den ich anlege eine Zeile nach diesem Erscheinungsbild in der conf anlegen... !?

ok, so weit ist das ja mal ok, jetzt habe ich nur mehr das vermeintliche Firewall-Problem:
Nachdem im FTP-Client "Entering passive mode" aufscheint, schaltet er sich mit dem Argument "Socks: request rejected or failed" ab... ein Freund von mir meinte, dass dies nur an der Firewall liegen könne.
Ich sollte also die Funktion "service iptables stop" ausführen.
Aber: Wenn ich dieses Service stoppe, läuft ja keine Firewall mehr, oder sehe ich das falsch ?

Probier erst mal, ob Du eine FTP verbindung vom selben Rechner machen kannst:

ftp localhost. Wenn das funzt, dan kümmern wir uns um die FW