xxx.xxx.xxx.xxx - FTP session opened.
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'USER ralph' to mod_tls
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'USER ralph' to mod_rewrite
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'USER ralph' to mod_core
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'USER ralph' to mod_core
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'USER ralph' to mod_auth
xxx.xxx.xxx.xxx - dispatching CMD command 'USER ralph' to mod_auth
xxx.xxx.xxx.xxx - no supplemental groups found for user 'ralph'
xxx.xxx.xxx.xxx - dispatching POST_CMD command 'USER ralph' to mod_sql
xxx.xxx.xxx.xxx - dispatching LOG_CMD command 'USER ralph' to mod_sql
xxx.xxx.xxx.xxx - dispatching LOG_CMD command 'USER ralph' to mod_log
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_tls
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_rewrite
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_core
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_core
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_wrap
xxx.xxx.xxx.xxx - dispatching PRE_CMD command 'PASS (hidden)' to mod_auth
xxx.xxx.xxx.xxx - dispatching CMD command 'PASS (hidden)' to mod_auth
xxx.xxx.xxx.xxx - no supplemental groups found for user 'ralph'
xxx.xxx.xxx.xxx -
xxx.xxx.xxx.xxx - Config for SEVERNAME:
xxx.xxx.xxx.xxx - /*
xxx.xxx.xxx.xxx - Limit
xxx.xxx.xxx.xxx - AllowAll
xxx.xxx.xxx.xxx - Limit
xxx.xxx.xxx.xxx - AllowAll
xxx.xxx.xxx.xxx - AllowOverwrite
xxx.xxx.xxx.xxx - HideNoAccess
xxx.xxx.xxx.xxx - DisplayLogin
xxx.xxx.xxx.xxx - DisplayFirstChdir
xxx.xxx.xxx.xxx - HiddenStores
xxx.xxx.xxx.xxx - DirFakeUser
xxx.xxx.xxx.xxx - DirFakeGroup
xxx.xxx.xxx.xxx - DirFakeMode
xxx.xxx.xxx.xxx - SQLAuthTypes
xxx.xxx.xxx.xxx - SQLAuthenticate
xxx.xxx.xxx.xxx - SQLConnectInfo
xxx.xxx.xxx.xxx - SQLDefaultGID
xxx.xxx.xxx.xxx - SQLDefaultUID
xxx.xxx.xxx.xxx - SQLMinUserGID
xxx.xxx.xxx.xxx - SQLMinUserUID
xxx.xxx.xxx.xxx - SQLLog_PASS
xxx.xxx.xxx.xxx - SQLNamedQuery_counter
xxx.xxx.xxx.xxx - SQLLog_RETR
xxx.xxx.xxx.xxx - SQLLog_STOR
xxx.xxx.xxx.xxx - SQLNamedQuery_transfer1
xxx.xxx.xxx.xxx - SQLLog_ERR_RETR
xxx.xxx.xxx.xxx - SQLLog_ERR_STOR
xxx.xxx.xxx.xxx - SQLNamedQuery_transfer2
xxx.xxx.xxx.xxx - AllowForeignAddress
xxx.xxx.xxx.xxx - Umask
xxx.xxx.xxx.xxx - MaxClientsPerHost
xxx.xxx.xxx.xxx - MaxClients
xxx.xxx.xxx.xxx - AllowStoreRestart
xxx.xxx.xxx.xxx - AllowRetrieveRestart
xxx.xxx.xxx.xxx - TransferLog
xxx.xxx.xxx.xxx - RequireValidShell
xxx.xxx.xxx.xxx - ServerIdent
xxx.xxx.xxx.xxx - DeferWelcome
xxx.xxx.xxx.xxx - DefaultServer
xxx.xxx.xxx.xxx - DisplayLogin
xxx.xxx.xxx.xxx - DisplayConnect
xxx.xxx.xxx.xxx - DisplayFirstChdir
xxx.xxx.xxx.xxx - HiddenStores
xxx.xxx.xxx.xxx - DirFakeUser
xxx.xxx.xxx.xxx - DirFakeGroup
xxx.xxx.xxx.xxx - DirFakeMode
xxx.xxx.xxx.xxx - AuthPAM
xxx.xxx.xxx.xxx - SQLAuthTypes
xxx.xxx.xxx.xxx - SQLAuthenticate
xxx.xxx.xxx.xxx - SQLConnectInfo
xxx.xxx.xxx.xxx - SQLDefaultGID
xxx.xxx.xxx.xxx - SQLDefaultUID
xxx.xxx.xxx.xxx - SQLMinUserGID
xxx.xxx.xxx.xxx - SQLMinUserUID
xxx.xxx.xxx.xxx - SQLUserTable
xxx.xxx.xxx.xxx - SQLUsernameField
xxx.xxx.xxx.xxx - SQLPasswordField
xxx.xxx.xxx.xxx - SQLUidField
xxx.xxx.xxx.xxx - SQLGidField
xxx.xxx.xxx.xxx - SQLHomedirField
xxx.xxx.xxx.xxx - SQLShellField
xxx.xxx.xxx.xxx - SQLLog_PASS
xxx.xxx.xxx.xxx - SQLNamedQuery_counter
xxx.xxx.xxx.xxx - SQLLog_RETR
xxx.xxx.xxx.xxx - SQLLog_STOR
xxx.xxx.xxx.xxx - SQLNamedQuery_transfer1
xxx.xxx.xxx.xxx - SQLLog_ERR_RETR
xxx.xxx.xxx.xxx - SQLLog_ERR_STOR
xxx.xxx.xxx.xxx - SQLNamedQuery_transfer2
xxx.xxx.xxx.xxx - AllowForeignAddress
xxx.xxx.xxx.xxx - Umask
xxx.xxx.xxx.xxx - UserID
xxx.xxx.xxx.xxx - UserName
xxx.xxx.xxx.xxx - GroupID
xxx.xxx.xxx.xxx - GroupName
xxx.xxx.xxx.xxx - MaxClientsPerHost
xxx.xxx.xxx.xxx - MaxClients
xxx.xxx.xxx.xxx - AllowStoreRestart
xxx.xxx.xxx.xxx - AllowRetrieveRestart
xxx.xxx.xxx.xxx - IdentLookups
xxx.xxx.xxx.xxx - TimeoutStalled
xxx.xxx.xxx.xxx - TransferLog
xxx.xxx.xxx.xxx - ExtendedLog
xxx.xxx.xxx.xxx - ExtendedLog
xxx.xxx.xxx.xxx - ExtendedLog
xxx.xxx.xxx.xxx - DefaultRoot
xxx.xxx.xxx.xxx - MaxLoginAttempts
xxx.xxx.xxx.xxx - RequireValidShell
xxx.xxx.xxx.xxx - CURRENT-CLIENTS
xxx.xxx.xxx.xxx - USER
xxx.xxx.xxx.xxx - USER ralph: Login successful.
xxx.xxx.xxx.xxx - ralph chdir("/home/www/web2/html/fileadmin/kunden/dude"): Permission denied
xxx.xxx.xxx.xxx - FTP session closed.
#
# Basic
#
ServerName "mein server"
serverType standalone
ServerAdmin
meine@email.de#
# Debug Level
# emerg, alert, crit (empfohlen), error, warn. notice, info, debug
#
#SyslogLevel emerg
#SystemLog /var/log/proftpd.system.log
#
# uncomment, if you want to hide the servers name:
#
ServerIdent on "mein server"
DeferWelcome on
DefaultServer on
#
# Display
#
DisplayLogin /messages/ftp.motd
DisplayConnect /net/messages/ftp.pre
DisplayFirstChdir index.txt
HiddenStor off
DirFakeUser on meinfake
DirFakeGroup on meinfake
DirFakeMode 0000
# Enable PAM for authentication...
#
AuthPAM on
# Setting this directive to on will cause authentication to fail
# if PAM authentication fails. The default setting, off, allows
# other modules and directives such as AuthUserFile and friends
# to authenticate users.
#
# AuthPAMAuthoritative on
# This directive allows you to specify the PAM service name used
# in authentication (default is "proftpd" on SuSE Linux).
# You have to setup the service in the /etc/pam.d/<other_name>.
#
#AuthPAMConfig <other_name>
# Port 21 is the standard FTP port.
Port 9999
#------------------------mysql Modul: 4.x
#
# Zugangskontrolle
#
SQLAuthTypes Plaintext
SQLAuthenticate users*
SQLConnectInfo db@localhost user pass
SQLDefaultGID 65534
SQLDefaultUID 65534
SQLMinUserGID 100
SQLMinUserUID 500
SQLUserInfo ftp username password uid gid homedir shell
#
# aktive SQL Kommandos, ab hier passiert etwas :-)
#
SQLLog PASS counter
SQLNamedQuery counter UPDATE "letzter_zugriff=now(), count=count+1 WHERE username='%u'" ftp
# xfer Log in mysql
SQLLog RETR,STOR transfer1
SQLNamedQuery transfer1 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'c', NULL" xfer_stat
SQLLOG ERR_RETR,ERR_STOR transfer2
SQLNamedQuery transfer2 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'i', NULL" xfer_stat
#------------------------mysql
# Port 21 is the standard FTP port.
Port 9999
# disable listen on 0.0.0.0:21 - the port (and IP) should
# be specified explicitly in each VirtualHost definition
#
#Port 0
# listen for each (additional) address explicitly that is
# specified (via Bind and Port) in a VirtualHost definition
#
#SocketBindTight on
#
# FXP Unterstuetzung
#
AllowForeignAddress on
# Umask 022 is a good standard umask to prevent new dirs
# and files from being group and world writable.
Umask 002
# Set the user and group that the server normally runs at.
User nobody
Group nogroup
# Maximal Werte setzen
MaxClientsPerHost 10 "Nicht mehr als %m Verbindungen"
MaxClients 10 "Leider sind schon %m Clients verbunden"
# RateReadBPS 5000
# RateReadFreeBytes 5000
# RateReadHardBPS on
#Classes on
#Class default limit 5
#Class internet limit 2
#Class local limit 3
#Class internet ip 0.0.0.0/0
#Class internet ip 192.168.99.99/24
#Class local ip 127.0.0.1/24
#Class local ip 192.168.0.0/24
#
# Restart erlauben
#
AllowStoreRestart on
AllowRetrieveRestart on
# Normally, we want files to be overwriteable.
<Directory /*>
AllowOverwrite off
HideNoAccess on
<Limit READ>
AllowAll
</Limit>
<Limit Write>
# DenyAll
AllowAll
</Limit>
</Directory>
# It is a very good idea to allow only filenames containing normal
# alphanumeric characters for uploads (and not shell code...)
#PathAllowFilter "^[a-zA-Z0-9_.-]()'+$"
#PathAllowFilter "^[a-zA-Z0-9 _.-]()'+$"
# We don't want .ftpaccess or .htaccess files to be uploaded
#PathDenyFilter "(\.ftp)|(\.ht)[a-z]+$"
#PathDenyFilter "\.ftp[a-z]+$"
# Do not allow to pass printf-Formats (security! see documentation!):
#AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$"
#DenyFilter "%"
# 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
# Performance: skip DNS resolution when we process the logs...
UseReverseDNS on
# Turn off Ident lookups
IdentLookups on
# Set the maximum number of seconds a data connection is allowed
# to "stall" before being aborted.
TimeoutStalled 300
# Where do we put the pid files?
ScoreboardFile /var/run/proftpd.scoreboard
#
# 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
#
# Do a chroot for web-users (i.e. public or www group), but
# do not change root if the user is also in the users group...
#
DefaultRoot / !users
#
# Limit login attempts
#
MaxLoginAttempts 3
#
# Users needs a valid shell
#
RequireValidShell off
muss dir fake user ein real existierender user im system sein? also auf linux ebene?