Strona 1 z 1
proftpd nie wpuszcza użytkowników
: 01 sierpnia 2011, 21:13
autor: husky83
Mam konto na pewnym vpsie. Zainstalowałem proftpd. Utworzyłem poniższym skryptem użytkownika:
Kod: Zaznacz cały
su -c "ftpasswd --group --file /etc/proftpd/ftp.group --gid $2 --name $1 && ftpasswd --passwd --file /etc/proftpd/ftp.passwd --shell /bin/false --not-system-password --uid $2 --name $1 --home=/server/ftp/$1"
Poleceniem:
Wszystko przebiega pomyślnie, przeładowuję konfig serwera (Przeładowanie a potem start) i nic! Od roota, przez wszelkie konta użytkowników tworzone tym skryptem lub po prostu przez polecenie:
Cały czas to samo.
Jakkolwiek się próbuję logować, na
konto jakiegokolwiek
użytkownika zawsze:
proftpd.conf jest obecnie oryginalny, bez zmian, chociaż próbowałem różnych wersji.
Bardzo proszę o pomoc.
Ps. Właściwie użytkowników będzie maksymalnie 3-4 i to zaufane osoby, więc aż tak bardzo dużych zabezpieczeń raczej nie trzeba.
Z góry dziękuję za wszelką pomoc!
: 01 sierpnia 2011, 22:16
autor: mendeczka
Błąd ten ewidentnie znaczy o błędnym loginie lub haśle.
http://ubuntu.pl/forum/viewtopic.php?t=94723 zerknij na to - powinno Ci pomóc. Ps. następnym razem daj więcej danych - plik konfiguracyjny na pewno by się przydał
: 01 sierpnia 2011, 23:12
autor: lessmian2
W /etc/shells masz /bin/false?
: 02 sierpnia 2011, 06:07
autor: husky83
Tak, w /etc/shells jest /bin/false
.
Plik konfiguracyjny standardowy, bez zmian (chociaż wcześniej próbowałem różnych wersji).
Co do hasła - na pewno jest poprawne, w ciągu znaków 1234 nie można się pomylić (a już sobie takie testowe włączyłem)
.
Chwilowo nie mam dostępu do SSH jednak potem spróbuję jeszcze wg tego poradnika
i wtedy też wrzucę tutaj konfig.
Edycja:
Przetestowałem według tej konfiguracji - jedyna działająca, wielkie podziękowania!
PS.
A jak zrobić, żeby jeden z użytkowników miał dostęp do /var/www?
Edycja2:
A jednak jakiś problem jest? Połączyłem się z ftp bez problemu z pomocą total commandera, ale to jedyny program, którym udaje mi się połączyć. Inne się zawieszają (Notepad++) albo wysypują błędy w stylu:
Kod: Zaznacz cały
Could not retrieve directory listing
Unable to build data connection: Connection refused
A Total Commander problemów nie widzi, odbiera listę plików bez niczego. Mimo wszystko te inne programy działają bezproblemowo z innymi serwerami, więc chyba jednak chodzi o konfigurację serwera.
: 02 sierpnia 2011, 08:41
autor: Bastian
A to w trybie aktywnym czy pasywnym? Bez plików konfiguracyjnych możemy sobie zgadywać. Jeśli chcesz się bawić ftpd to nie korzystaj z gotowców, których zasad działania nie rozumiesz, tylko poczytaj konfigurację i sam skonfiguruj serwer. Unikniemy wtedy konieczności czytania tego:
PS. A jak zrobić, żeby jeden z użytkowników miał dostęp do /var/www?
: 02 sierpnia 2011, 08:51
autor: husky83
Bez względu na tryb, próbowałem i pasywnego i aktywnego.
Co do mojego wcześniejszego pytania - pewnie chodzi Ci o '~', które zamyka użytkownika w katalogu domowym. Próbowałem po prostu w moim katalogu dodać link symboliczny do /var/www, ale nie działało. Zresztą póki co przeniosłem sobie www do folderu domowego użytkownika ftp. Zawsze to jakieś obejście.
Konfig jak mówiłem z gotowca:
Kod: Zaznacz cały
Include /etc/proftpd/modules.conf
UseIPv6 off
ServerName "FTP SERWER"
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DefaultRoot ~
#DisplayLogin welcome.msg
#DisplayFirstChdir .message
ListOptions "-l"
DenyFilter \./
UseReverseDNS off
IdentLookups off
RequireValidShell off
AuthUserFile /home/ftpd.passwd
Port 21
MaxInstances 30
User serwer
Group ftpusers
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
<IfModule mod_tls.c>
TLSEngine off
</IfModule>
<IfModule mod_quota.c>
QuotaEngine on
</IfModule>
<IfModule mod_ratio.c>
Ratios on
</IfModule>
<IfModule mod_delay.c>
DelayEngine on
</IfModule>
<IfModule mod_ctrls.c>
ControlsEngine on
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>
<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
</IfModule>
# A basic anonymous configuration, no upload directories.
<Anonymous ~ftp>
User ftp
Group nogroup
# # We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp
# # Cosmetic changes, all files belongs to ftp user
DirFakeUser on ftp
DirFakeGroup on ftp
#
RequireValidShell off
#
# # Limit the maximum number of anonymous logins
MaxClients 10
#
# # We want 'welcome.msg' displayed at login, and '.message' displayed
# # in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message
#
# # Limit WRITE everywhere in the anonymous chroot
<Directory /home/ftp>
<Limit WRITE>
DenyAll
</Limit>
</Directory>
#
# # Uncomment this if you're brave.
# # <Directory incoming>
# # # Umask 022 is a good standard umask to prevent new files and dirs
# # # (second parm) from being group and world writable.
# # Umask 022 022
# # <Limit READ WRITE>
# # DenyAll
# # </Limit>
# # <Limit STOR>
# # AllowAll
# # </Limit>
# # </Directory>
#
</Anonymous>
: 02 sierpnia 2011, 18:55
autor: Bastian
Link symboliczny jest jakimś, nawet nie najgorszym rozwiązaniem przy takim konfigu jaki masz. Jak robiłeś to dowiązanie. Czy zadbałeś o odpowiednie prawa?
: 02 sierpnia 2011, 20:36
autor: husky83
Dowiązanie symboliczne utworzyłem tak:
Już nawet /var/www i samo dowiązanie www mają prawa 777.
W total commanderze, gdy wybieram www, pojawia się komunikat o braku pliku
A wracając do połączenia przez inne programy - nadal nic. Próba połączenia się przez firefoxa kończy się takim komunikatem:
Kod: Zaznacz cały
(null) Down: 0 Files (0mb) Up: 0 Files (0mb) 10,000,000:1 CR: LEECH
215 UNIX Type: L8
Edycja:
Ten komunikat firefoxa naprowadził mnie na coś. RATIO!
Znalazłem w konfigu:
Kod: Zaznacz cały
<IfModule mod_ratio.c>
Ratios on
</IfModule>
Zmieniłem na:
i działa.
Pozostaje ostatni problem - z linkami symbolicznymi.
: 02 sierpnia 2011, 22:27
autor: Bastian
W proftpd. conf dodaj
Kod: Zaznacz cały
[Directory /var/www]
[Limit READ WRITE DIRS]
Order Allow, Deny
Allow All
[/Limit]
[/Directory]