Hallo Leute,
Mein Proftpd Server kränkelt z.Zt. noch ein bisschen. Installiert ist er auf einem Suse Linux 8.2 Minimalsystem. Die Installation lief ohne Probleme, starten tut der Server richtig sowohl über xinetd (wg. einer dynDNS domain), als auch im standalone Modus.
Folgendes Problem bin ich im Moment nicht im stande zu lösen: Es ist kein Upload möglich, der Server beantwortet den Uploadversuch mit
550 - Permission denied. Ich bin verwundert, da ich den Server schon einmal am laufen hatte und nun eigentlich nur die Pfade in der proftpd.conf angepasst hatte, sowie MasqueradeAdress und PassivePorts in der Config mit angegeben habe. Der Rest ist eigentlich unverändert...naja, offensichtlich irgendwie doch nicht.
Hier erstmal ein Auszug aus meiner Config, sowohl der reguläre Login, als auch der anonymous Teil:
# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use. It establishes a single server
# and a single anonymous login. It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.
ServerName "Home FTP"
ServerType standalone
DefaultServer on
UseReverseDNS off
IdentLookups off
# Port 21 is the standard FTP port.
Port 21
PassivePorts 60000 60002
# DynDNS Domain
MasqueradeAddress homelink.serveftp.net
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 000
# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
# MaxInstances 30
# Set the user and group under which the server will run.
User ftpadmin
Group proftpd
# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot /extension/ftp/pub
<Directory /extension/ftp/*>
<Limit WRITE>
DenyAll
</Limit>
</Directory>
<Directory /extension/ftp/pub/++UPLOAD++>
<Limit READ>
DenyAll
</Limit>
<Limit STOR WRITE>
AllowAll
</Limit>
</Directory>
...
Die umask wurde von mir erstmal auf 000 gesetzt, da ich schon nach dem letzten Strohhalm greife
.
Hier der Anonymous Teil der proftpd.conf:
<Anonymous /extension/ftp/pub>
User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp
# Limit the maximum number of anonymous logins
MaxClients 3
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message
# Forbid writing in pub directory
<Directory *>
<Limit READ WRITE STOR>
AllowAll
</Limit>
</Directory>
# Allowing upload in ++UPLOAD++ directory, yet
# read/write/rename is still prohibited
<Directory ++UPLOAD++>
<Limit READ>
DenyAll
</Limit>
<Limit STOR WRITE>
AllowAll
</Limit>
</Directory>
...
Wie man sehen kann, stimmen die Kommentare im Moment nicht. Ich habe die Verzeichnisse, was die anzuwendenden Befehle angeht, völlig aufgemacht. Der Server lief schon einmal eingeschränkter, nämlich wo nur STOR-Befehle erlaubt waren - und zwar ganz ohne Probleme.
proftpd -l ergibt Folgendes:
Complied-in modules:
mod_cor.c
mod_xfer.c
mod_auth_unix.c
mod_auth_file.c
mod_auth.c
mod_ls.c
mod_log.c
mod_site.c
mod_cap.c
Alles in allem sollte die doch eine Standardinstallation vom proftpd sein, oder ? Das Tar wurde von mir entpackt und mit ./Configure, dann make && make install installiert. Fehlermeldung gab es bei der Installation keine, alle Dateien liegen in den richtigen Pfaden.
Proftpd gestartet mit proftpd -n -d5 bringt folgendes Ergebnis:
linux.loccal - ProFTPD 1.2.9 (stable) (built Thu Jun 17 21:00:17 CEST 2004) standalone mode STARTUP
Kommt also ohne Fehler hoch. SmartFTP, läuft unter Windows 2000, loggt sich auf dem Server erfolgreich ein, egal ob anonymous oder mit einem am System exisitierenden USER. Diese Tool hatte ich vorher auch schon ohne Probleme gentutz:
Resolving host name homelink.serveftp.net...
Connecting to (homelink.serveftp.net) -> IP: 217.94.117.45 PORT: 21
Connected to (homelink.serveftp.net) -> Time = 0ms
Socket connected waiting for login sequence.
220 ProFTPD 1.2.9 Server (Home FTP) [217.94.117.45]
USER anonymous
331 Anonymous login ok, send your complete email address as your password.
PASS (hidden)
230 Anonymous access granted, restrictions apply.
SYST
215 UNIX Type: L8
FEAT
211-Features:
MDTM
REST STREAM
SIZE
211 End
PWD
257 "/" is current directory.
TYPE A
200 Type set to A
PORT 192,168,0,2,4,148
200 PORT command successful
Opening data connection IP: 192.168.0.2 PORT: 1172.
LIST -aL
150 Opening ASCII mode data connection for file list
430 bytes received successfully. (430 B/s) (00:00:01).
226 Transfer complete.
Wenn die Verbindung geschlossen wird, bringt Proftpd:
linux.local (217.94.117.45[217.94.117.45]) - dispatching CMD command 'QUIT' to mod_core
linux.local (217.94.117.45[217.94.117.45]) - FTP Session closed.
Ein Upload scheitert kläglich, SmartFTP:
TYPE I
200 Type set to I
PORT 192,168,0,2,4,159
200 PORT command successful
Opening data connection IP: 192.168.0.2 PORT: 1183.
STOR summitaufsat1.wmv
[B]550 summitaufsat1.wmv: Permission denied[/B]
TYPE A
200 Type set to A
PORT 192,168,0,2,4,160
200 PORT command successful
Opening data connection IP: 192.168.0.2 PORT: 1184.
LIST -aL
150 Opening ASCII mode data connection for file list
117 bytes received successfully. (117 B/s) (00:00:01).
226 Transfer complete.
Proftpd sagt dazu:
linux.local (217.94.117.45[217.94.117.45]) - unable to open 'sumitaufsat1.wmv' for writing: Permission denied
Wer kann mir da bitte helfen ? Woran liegt es ? Der Server lief doch schon einmal mit fast ähnlicher Konfiguration. Vor allem weiß ich jetzt nicht, ob das Problem auf meinem Windows 2000 Rechner oder auf dem FTP Server zu suchen ist. Die Logins funktionieren alle tadellos, die Restrictions greifen und alles ist wunderbar. Bloss ich kann nichts hochladen. Downloads funktionieren soweit ich das schon getestet habe. Entschuldigung für den langen Text, aber ich habe mir geschworen, dass ich den Server auf Gedeih und Verderb wieder an den Start bekomme
. Ich hoffe, dass mir jemand helfen kann.