hier noch ein paar weitere hinweise zu meiner konfiguration:
konfiguriert wurde proftpd wiefolgt:
CFLAGS=-DHAVE_OPENSSL LIBS=-lcrypto ./configure --with-modules=mod_sql:mod_sql_mysql:mod_quotatab:mod_quotatab_sql --with-includes=/usr/include/mysql:/usr/local/openssl/include --with-libraries=/usr/include/mysql:/usr/local/openssl/lib
proftpd.conf:
# 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 operbation and anon.
ServerName "pop.citynet-hall.at"
ServerType standalone
DeferWelcome off
# Login beschleunigen
UsereverseDNS off
IdentLookups off
ShowSymlinks on
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
AllowOverwrite on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayFirstChdir .message
#LsDefaultOptions "-l"
DenyFilter \*.*/
# Uncomment this if you are using NIS or LDAP to retrieve passwords:
#PersistentPasswd off
# Port 21 is the standard FTP port.
Port 21
# 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 that the server normally runs at.
User root
Group root
# Normally, we want files to be overwriteable.
<Directory /*>
# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022
AllowOverwrite on
</Directory>
DefaultRoot ~
RequireValidShell off
#
# 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
SQLAuthTypes OpenSSL Crypt
SQLAuthenticate users* groups*
SQLConnectInfo mgmt_mail@localhost mgmt_cnh xxxxxxxxxx
SQLUserInfo proftpd_users username password uid gid homedir shell
SQLGroupInfo proftpd_groups groupname gid members
SQLUserWhereClause "login_enabled = 'y'"
SQLLog PASS login
SQLNamedQuery login UPDATE "last_login=now(), login_count=login_count+1 WHERE username='%u'" proftpd_users
SQLLog RETR download
SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b WHERE username='%u'" proftpd_users
SQLLog STOR upload
#
# mod_quota tab
#
QuotaEngine on
QuotaShowQuotas on
QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
SQLNamedQuery get-quota-limit SELECT "name, quota_type,per_session,limit_type, bytes_in_avail, bytes_out_avail,bytes_xfer_avail, files_in_avail, files_out_avail,files_xfer_avail FROM quotalimits WHERE name = '%{0}' AND quota_type ='%{1}'"
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used,bytes_out_used, bytes_xfer_used, files_in_used, files_out_used,files_xfer_used FROM quotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used= files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name= '%{6}' AND quota_type = '%{7}'" quotatallies
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4},%{5}, %{6}, %{7}" quotatallies
Ich versuchte mich mit dem Testuser anzumelden auf 3 verschiedene Arten das Passwort in der Datenbank einzugeben:
1.) {md5}$1$IgLSqs00$1fw
2.) {md5}JDEkSWdMU3FzMDAkMWZ3
3.) {md5}AQAAAAAAHwA=
zu 1.) Format wiefolgt: {md5}+original shadow-String
zu 2.) Format wiefolgt: {md5}+base64_encode($pass) (via phpscript)
zu 3.) Format wiefolgt: {md5}+base64_encode(@pack("H*", $pass)); (via phpscript)
Kann mich allerdings auf keine der 3 Arten einloggen (egal ob openSSL oder Crypt steht):
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - no supplemental groups found for user 'tester'
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "getpwnam" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "gid_name" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "gid_name" to module mod_auth_file
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "gid_name" to module mod_auth_unix
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "auth" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "check" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "check" to module mod_auth_file
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "check" to module mod_auth_unix
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "auth" to module mod_auth_file
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "auth" to module mod_auth_unix
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - ROOT PRIVS at mod_auth_unix.c:421
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - RELINQUISH PRIVS at mod_auth_unix.c:482
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - USER tester (Login failed): No such user found.
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching POST_CMD_ERR command 'PASS (hidden)' to mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching LOG_CMD_ERR command 'PASS (hidden)' to mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching LOG_CMD_ERR command 'PASS (hidden)' to mod_log
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching LOG_CMD_ERR command 'PASS (hidden)' to mod_auth
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching PRE_CMD command 'QUIT' to mod_core
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching PRE_CMD command 'QUIT' to mod_core
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching PRE_CMD command 'QUIT' to mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching PRE_CMD command 'QUIT' to mod_log
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching CMD command 'QUIT' to mod_core
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endpwent" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endpwent" to module mod_auth_file
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endpwent" to module mod_auth_unix
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endgrent" to module mod_sql
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endgrent" to module mod_auth_file
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - dispatching auth request "endgrent" to module mod_auth_unix
pop.citynet-hall.at (cnh195149221200.surfer.cnh.at[195.149.221.200]) - FTP session closed.
-------------------------------------------------------------------------------------
Bitte dringend um Hilfe, muss das bis Ende dieser Woche schaffen!
BIGTHX!!!
mfg street[/quote]