Mal zuerst: Proftpd ist supergeil. Ich hatte zwar weit harte Tage bis das Dinlief, aber nun scheint es doch mal soweit zu sein, dass ich am Config "feilen" kann.
Zunächst aber:
- Proftpd schreibt nichts in mein ExtendedLog /var/log/proftftpd_x.log
Ich habe aus einem Beispiel folgendes kopiert:
#
# Logging options
#
TransferLog /var/log/proftpd.xferlog
# Some logging formats
#
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat write "%h %l %u %t \"%r\" %s %b"
# Log file/dir access
ExtendedLog /var/log/proftpd.access_log WRITE,READ write
# Record all logins
ExtendedLog /var/log/proftpd.auth_log AUTH auth
# Paranoia logging level....
ExtendedLog /var/log/proftpd.paranoid_log ALL default
den Server neu gestartet und getestet. Aber nichts wurde in meine Logfiles geschrieben.
Ich hab dann die Sample Configuration "Complex virtual Hosts" genommen und leicht modifizier und die hat gefunzt.
Meine aber nicht :-(
Hier noch das Ganze:
# This sample configuration file illustrates creating two
# virtual servers, and associated anonymous logins.
ServerName "ProFTPD"
ServerType Standalone
# Port 21 is the standard FTP port.
Port 21
# Global creates a "global" configuration that is shared by the
# main server and all virtualhosts.
<Global>
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
</Global>
# Set the user and group that the server normally runs at.
User nobody
Group nogroup
# 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
# Maximum seconds a data connection may "stall"
TimeoutStalled 300
#
# Logging options
#
TransferLog /var/log/proftpd.xferlog
# Some logging formats
#
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat write "%h %l %u %t \"%r\" %s %b"
# Log file/dir access
ExtendedLog /var/log/proftpd.access_log WRITE,READ write
# Record all logins
ExtendedLog /var/log/proftpd.auth_log AUTH auth
# Paranoia logging level....
ExtendedLog /var/log/proftpd.paranoid_log ALL default
# -------------------------------------------------------------
# First virtual server
<VirtualHost localhost>
ServerName "Local FTP Server"
MaxClients 10
MaxLoginAttempts 1
# DeferWelcome prevents proftpd from displaying the servername
# until a client has authenticated.
# DeferWelcome on
# Limit normal user logins, because we only want to allow
# guest logins.
<Limit LOGIN>
DenyAll
</Limit>
# Next, create a "guest" account (which could be used
# by a customer to allow private access to their web site, etc)
<Anonymous ~ftp/ftp>
User ftp
Group users
AnonRequirePassword on
<Limit LOGIN>
AllowAll
</Limit>
HideUser root
HideGroup root
# A private directory that we don't want the user getting in to.
<Directory logs>
<Limit READ WRITE DIRS>
DenyAll
</Limit>
</Directory>
</Anonymous>
</VirtualHost>
# Another virtual server, this one running on our primary address,
# but on port 4000. The only access is to a single anonymous login.
<VirtualHost server1>
ServerName "Have fun."
Port 4000
Umask 027
AuthUserFile /etc/proftpd/passwd
AuthGroupFile /etc/proftpd/group
DefaultRoot /shared/Download
<Limit LOGIN>
DenyAll
</Limit>
<Anonymous ~ftp>
User ftp
Group users
UserAlias test ftp
AuthAliasOnly off
AuthUsingAlias on
AnonRequirePassword on
RequireValidShell off
<Limit LOGIN>
AllowGroup users
DenyAll
</Limit>
<Limit WRITE>
DenyAll
</Limit>
# Specify the Upload Directory
<Directory "/Download/Uploads">
<Limit ALL>
DenyAll
</Limit>
<Limit DELE>
DenyAll
</Limit>
<Limit LIST CDUP CWD XCWD XCUP>
AllowGroup users
AllowAll
</Limit>
<Limit READ MKD STOR STOU>
AllowGroup ftp
AllowAll
</Limit>
</Directory>
<Directory "/Download/Hidden">
# HideGroup users
<Limit ALL NLST>
DenyAll
</Limit>
</Directory>
</Anonymous>
</VirtualHost>