proftpd - przy włączonym module tls opcja DefaultRoot jest ignorowana
: 07 czerwca 2010, 13:57
Cześć.
Mam problem z konfiguracją serwera proftpd na Lennym.
Próbowałem go skonfigurować w ten sposób, aby po zalogowaniu przez tls użytkownik był uwięziony we wskazanym katalogu.
Niestety przy włączonym module tls opcja DefaultRoot jest ignorowana. Jeśli moduł tls wyłączę wszystko działa jak należy.
Dodam, że problem występuje podczas korzystania z programu WinSCP wersja 4.2.6. Z FileZilla wszystko działa jak należy.
Mój plik proftpd.conf:Mój plik tls.conf:
Mój plik modules.conf
Proszę Was o wytłumaczenie przyczyn takiego zachowania serwera.
Pozdrawiam,
Piotr Repetowski
PS.
Zauważyłem, że opisana sytuacja występuje tylko w przypadku jednego użytkownika. Użytkownik ten posiada możliwość logowania przez ssh. W przypadku użytkowników, których powłoką jest /bin/false, próba logowania przez WinSCP kończy się niepowodzeniem.
Czy zdefiniowanie powłoki dla użytkownika jest przyczyną opisanej sytuacji?
Mam problem z konfiguracją serwera proftpd na Lennym.
Próbowałem go skonfigurować w ten sposób, aby po zalogowaniu przez tls użytkownik był uwięziony we wskazanym katalogu.
Niestety przy włączonym module tls opcja DefaultRoot jest ignorowana. Jeśli moduł tls wyłączę wszystko działa jak należy.
Dodam, że problem występuje podczas korzystania z programu WinSCP wersja 4.2.6. Z FileZilla wszystko działa jak należy.
Mój plik proftpd.conf:
Kod: Zaznacz cały
Include /etc/proftpd/modules.conf
UseIPv6 on
IdentLookups off
UseReverseDNS off
ServerName "FTP server"
ServerIdent off
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayChdir .message true
ListOptions "-A"
DenyFilter \*.*/
DefaultRoot ~/www
RequireValidShell off
Port 21
<IfModule mod_dynmasq.c>
# DynMasqRefresh 28800
</IfModule>
MaxInstances 20
MaxClientsPerHost 4
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
AllowRetrieveRestart on
AllowStoreRestart on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
<IfModule mod_quotatab.c>
QuotaEngine off
</IfModule>
<IfModule mod_ratio.c>
Ratios off
</IfModule>
<IfModule mod_delay.c>
DelayEngine on
</IfModule>
<IfModule mod_ctrls.c>
ControlsEngine off
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>
<IfModule mod_ctrls_admin.c>
AdminControlsEngine off
</IfModule>
Include /etc/proftpd/tls.conf
Kod: Zaznacz cały
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSRSACertificateFile /etc/ssl/certs/ftpserver.cert.pem
TLSRSACertificateKeyFile /etc/ssl/private/ftpserver.key.pem
TLSOptions NoCertRequest
TLSVerifyClient off
TLSRequired on
</IfModule>
Kod: Zaznacz cały
ModulePath /usr/lib/proftpd
ModuleControlsACLs insmod,rmmod allow user root
ModuleControlsACLs lsmod allow user *
LoadModule mod_ctrls_admin.c
LoadModule mod_tls.c
LoadModule mod_sql.c
#LoadModule mod_ldap.c
LoadModule mod_sql_mysql.c
#LoadModule mod_sql_postgres.c
LoadModule mod_radius.c
LoadModule mod_quotatab.c
LoadModule mod_quotatab_file.c
#LoadModule mod_quotatab_ldap.c
LoadModule mod_quotatab_sql.c
LoadModule mod_quotatab_radius.c
LoadModule mod_wrap.c
LoadModule mod_rewrite.c
LoadModule mod_load.c
LoadModule mod_ban.c
LoadModule mod_wrap2.c
LoadModule mod_wrap2_file.c
#LoadModule mod_wrap2_sql.c
LoadModule mod_dynmasq.c
LoadModule mod_ifsession.c
Pozdrawiam,
Piotr Repetowski
PS.
Zauważyłem, że opisana sytuacja występuje tylko w przypadku jednego użytkownika. Użytkownik ten posiada możliwość logowania przez ssh. W przypadku użytkowników, których powłoką jest /bin/false, próba logowania przez WinSCP kończy się niepowodzeniem.
Czy zdefiniowanie powłoki dla użytkownika jest przyczyną opisanej sytuacji?