Portál AbcLinuxu, 15. července 2025 13:47


Dotaz: Nejde se přihlásit jako anonymní uživatel v ProFTPD

5.9.2007 15:17 Ripper | skóre: 31
Nejde se přihlásit jako anonymní uživatel v ProFTPD
Přečteno: 1458×
Odpovědět | Admin
Dobrý den,

Už si nevím rady a google taky nic použitelného neporadil.

Nainstaloval jsem si ProFTPD 1.3.0-19, upravil konfigurák a nejde se mi přihlásit jako anonymní uživatel (časový limit pro spojení vypršel). Virtuální uživatelé jsou v MySQL.

Konfigurák vypadá takto:
#
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes reload proftpd after modifications.
# 

# Includes DSO modules
Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6	off

ServerName "server.tld"
ServerType inetd
DeferWelcome off
DefaultRoot /home/ftp/

MultilineRFC2228 on
DefaultServer on
ShowSymlinks on

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"

DenyFilter \*.*/

HiddenStor off
RootLogin off
Bind 192.168.1.2

DefaultAddress 192.168.1.2
AuthAliasOnly off
RequireValidShell off

# Port 21 is the standard FTP port.
Port 21

# In some cases you have to specify passive ports range to by-pass
# firewall limitations. Ephemeral ports can be used for that, but
# feel free to use a more narrow range.
# PassivePorts                    49152 65534

# 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 proftpd
Group nogroup

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022
# Normally, we want files to be overwriteable.
AllowOverwrite on

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
# PersistentPasswd		off

# Be warned: use of this directive impacts CPU average load!
#
# Uncomment this if you like to see progress and transfer rate with ftpwho
# in downloads. That is not needed for uploads rates.
# UseSendFile			off

TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log

< IfModule mod_tls.c >
TLSEngine off
< /IfModule >

< IfModule mod_quota.c >
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on
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 ftpquotalimits 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 ftpquotatallies 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}'" ftpquotatallies

SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally

RootLogin off
RequireValidShell off
< /IfModule>

< IfModule mod_ratio.c >
Ratios on
< /IfModule >


# Delay engine reduces impact of the so-called Timing Attack described in
# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02
# It is on by default. 
< 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 >
DeleteAbortedStores on
HiddenStor off
AllowOverwrite off
   < /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>

# The passwords in MySQL are encrypted using CRYPT
SQLAuthTypes            Plaintext Crypt
SQLAuthenticate         users groups


# used to connect to the database
# databasename@host database_user user_password
SQLConnectInfo  host@localhost heslo


# Here we tell ProFTPd the names of the database columns in the "usertable"
# we want it to interact with. Match the names with those in the db
SQLUserInfo     ftpuser userid passwd uid gid homedir shell

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo    ftpgroup groupname gid members

# set min UID and GID - otherwise these are 999 each
SQLMinID        500

# create a user's home directory on demand if it doesn't exist
SQLHomedirOnDemand on

# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog  STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser
DeleteAbortedStores on
Log proftpd mi píše:
error opening scoreboard: bad/corrupted file
Poradí mi někdo prosím, co s tím, co v konfiguráku je špatně? Předem díky.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

5.9.2007 20:34 Opičák | skóre: 18 | blog: Opicakovy_blaboly
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Odpovědět | | Sbalit | Link | Blokovat | Admin
určitě se každému chce číst tak dlouhý konfigurák...co třeba začít nějakým výpisem z logu?
6.9.2007 12:10 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Výpis z logu je přece pod konfigurákem. Nic víc nepíše.

Konfigurák je dlouhý, ale běžně tu jsou i delší. Komentáře se dají přece vynechat a pak to není tak šílené. Nechal jsem je tam, protože jsem kofnigurák vkládal, tak jak je, aby nedošlo k překlepu a tak podobně.
6.9.2007 21:27 Opičák | skóre: 18 | blog: Opicakovy_blaboly
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
No používám ProFTPd, používám i virtuální uživatele v MySQL, ale mám ten konfigurák rozhodně jednodušší. Všechno mi jede OK.
6.9.2007 21:55 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
A jestlipak jsi ze souboru:
/etc/ftpusers
SMAZAL slovo "ftp" a precetl jsi si ho ? :-)
Never give up ! Stay ATARI !
6.9.2007 22:01 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
jinak moje cast proftpd.conf kvuli konfiguraci mysql:
# The passwords in MySQL are encrypted using CRYPT
SQLAuthTypes            Plaintext Crypt
SQLAuthenticate         users* groups*


# used to connect to the database
# databasename@host database_user user_password
SQLConnectInfo  ftp@localhost proftpd ctspk62en


# Here we tell ProFTPd the names of the database columns in the "usertable"
# we want it to interact with. Match the names with those in the db
SQLUserInfo     ftpuser userid passwd uid gid homedir shell

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo    ftpgroup groupname gid members

# set min UID and GID - otherwise these are 999 each
SQLMinID        500

# create a user's home directory on demand if it doesn't exist
SQLHomedirOnDemand on

# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog  STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser

# User quotas
# ===========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

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 ftpquotalimits 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 ftpquotatallies 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}'" ftpquotatallies
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally

RootLogin off
RequireValidShell off

Vice zde
Never give up ! Stay ATARI !
7.9.2007 10:48 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
V tom seznamu zakázaných uživatelů nemám ftp. Ale díky za radu.
7.9.2007 15:35 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
TAk jsem zkusil do konfiguráku přidat

ScoreboardPath etc/proftpd

Připojení se stále nedaří, ale proftpd.log nevypisuje nic, zato v deamonlogu mám toto:
15:14:58 server proftpd[2887]: Fatal: unknown configuration directive 'ScoreboardPath' on line 35 of '/etc/proftpd/proftpd.conf' 
the.max avatar 6.9.2007 23:14 the.max | skóre: 46 | blog: Smetiště
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Odpovědět | | Sbalit | Link | Blokovat | Admin

ServerName              "bobika"          # Jmeno serveru
ServerType              standalone                      # standalone nebo inetd
ServerIdent             on "bobika"
DeferWelcome            on                              # Zabranuje zobrazeni hlasky dokus se uzivatel neprihlasi
MultilineRFC2228        on
DefaultServer           on
DefaultRoot             ~
ShowSymlinks            on                              # Zobrazovat symbolicke odkazy ano nebo ne (on|off)
TimeoutNoTransfer       600                             # Maximalni casovy usek mezi prihlasenim a libovolnym prikazem
TimeoutStalled          600                             # Maximálni casovy usek exitujicího spojeni bez prenaseni dat
TimeoutIdle             1200                            # Maximalni doba necinosti klienta
ListOptions             "-l"
DenyFilter              \*.*/
Port                    21                              # Cislo portu, ktery server bude pouzivat.
MaxInstances            50
User                    nobody                          # Jmeno uzivatele a skupina, pod kterym pobezi server.
Group                   nogroup
Umask                   022  022                        # Umask 022 is a good standard umask to prevent new files and dirs (second parm) from being group and world writable.
AllowOverwrite          on                              # Normally, we want files to be overwriteable.

< Anonymous /var/ftp>
    User                ftp
    Group               ftp
    UserAlias           anonymous ftp                   # Chceme, aby 'anonymous' bylo to samé jako 'ftp'
    DirFakeUser         on ftp                          # Cosmetic changes, all files belongs to ftp user
    DirFakeGroup        on ftp
    RequireValidShell   off
    MaxClients          10                              # Limit paraelniho poctu pripojeni tohoto uzivatele
    DisplayChdir        .message
    < Directory *>
        < Limit WRITE>
            AllowAll
        < /Limit>
    < /Directory>
< /Anonymous>

Takhle to mam ja uz celkem dlouho a funguje.Uz ani nevim kde jsem to opsal;-) P.S. ty mezery u tagu Anonymous, Limit a Directory tam nemam, jsou tam jen proto, ze jinak to sem neslo vlozit... takze odmaznout.
KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
7.9.2007 11:28 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
TAk lišíme se v tom anonymním uživateli, tak jsem to upravil podle tebe, ale pořád to samé. Díky za konfigurák. Mezery samozřejmě ignoruju, já je v tom svém konfiguráku tady mám taky, vím, že to jinak nejde.
7.9.2007 06:17 Tomáš Janeček | skóre: 12
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co PAM? Nemas treba blbe nastaveny PAM pro ProFTPd? Koukni se do /etc/pam.d jestli tam nahodou neni soubor pro-ftpd nebo ftpd...
Něco děsně chytrýho a vtipnýho
7.9.2007 07:39 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
PAM nepotrebuje ...
Never give up ! Stay ATARI !
7.9.2007 10:22 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Pam je v konfiguráku proftpd zakomentovaný, tak by to tím být nemělo.
7.9.2007 16:00 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
V /etc/pam.d/proftpd mám toto:
#%PAM-1.0
auth       required	pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
@include common-auth

# This is disabled because anonymous logins will fail otherwise,
# unless you give the 'ftp' user a valid shell, or /bin/false and add
# /bin/false to /etc/shells.
#auth       required	pam_shells.so

@include common-account
@include common-session
7.9.2007 19:45 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
tak vyhod tu konfiguraci SQL a pouzij default proftpd.conf a kdyz to pojede, tak chyba v PAM neni ... A budes mit i jistotu, ze ten konfiogurak je OK ....

PAM bude asi logovat to /var/log/secure nebo messages, nebo syslog ...
Never give up ! Stay ATARI !
7.9.2007 20:58 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Tak jsem zakomentoval všechno, co se SQL týče, ale bohužel stále to samé.
7.9.2007 20:54 Opičák | skóre: 18 | blog: Opicakovy_blaboly
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
uživatel ftp existuje? /home/ftp existuje? auth.log existuje? je v něm nějaká hláška o chybě při autentizaci? prošmejdi všechny logy co by se toho mohly týkat.
7.9.2007 21:11 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Uživatel existuje i složka /home/ftp/ a uživatel má k ní práva a je vlastníkem.

Kromě logu proftpd ještě mám zmínku o něm v deamon.logu a to:
Sep  7 20:47:18 server proftpd[3636]: connect from 192.168.1.4 (192.168.1.4)
Sep  7 20:47:19 server proftpd[3636]: setting default address to 192.168.1.2 
Ostatní logy jsou v pohodě a nehlásí nikde žádnou chybu.
7.9.2007 21:39 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Koukam, ze server jede pres inetd:
ServerType inetd
Pro jistotu, kdyz menis ten konfigurak, restartujes i inetd ??? Sice to neni normalne potreba, ale jak rikam .. pro jistotu ..
Never give up ! Stay ATARI !
7.9.2007 21:47 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Jj, je jako deamon. Myslíš tím při každé změně konfiguráku provést /etc/init.d/proftpd restart? To samozřejmě dělám.
8.9.2007 04:05 %%%%
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
no prvni co bych udelal - nez ad-hoc menit konfigurak, tak to vyhodit z x?inet.d a spustit to z terminalu na popredi s debug hlaskama na strandatni chybovy vystup.

Vetsinou napise co se nelibi. Bud pri startu nekde prava nebo pri prihlasovani spatny mapovani user/id nebo prava nebo allow/deny.

No a nebo to bude jen problem s tim, ze se nedari nahrat treba vsechny moduly, protoze se nekde neresolvuje nejaky symbol... muze to byt cokoliv. Krok cislo jedna byva - dostat z toho nejakou chybovou hlasku. Kdyz neni hlaska, tak aspon strace+ltrace.
8.9.2007 20:35 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Stejně jako dokumentace, tak i samotný proftpd je poměrně nemluvný.

Dostal jsem z toho jen to, co píšu výš. něco, že nemůže najít scoreboard soubor.
8.9.2007 09:26 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Nee, on bezi jako daemon, ale pres inetd !!! Takze musis /etc/init.d/inetd restart .... :-)

Nebo ho dat jako standalone:

misto:
ServerType inetd
dat
ServerType standalone
Never give up ! Stay ATARI !
8.9.2007 20:30 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Pak mi to došlo, ale to nepomáhá.
8.9.2007 09:34 Opičák | skóre: 18 | blog: Opicakovy_blaboly
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
mě běží pouze jako standalone ....přes inetd jsem to nikdy nepouštěl.
8.9.2007 10:13 svaca | skóre: 38
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
inetd je OK, Standalone je doporucovano pri velkem traficu ...
Never give up ! Stay ATARI !
10.9.2007 12:48 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Díky všem, co se mi pokusili pomoci, ale problém stále trvá a nedaří se mi ho ani s google vyřešit. Dávám "otázka nebyla vyřešena" a zkusím položit dotaz bez konfiguráku přehledněji a více konkrétněji.

Ještě jednou všem díky.
14.9.2008 17:20 Kenji
Rozbalit Rozbalit vše Re: Nejde se přihlásit jako anonymní uživatel v ProFTPD
Odpovědět | | Sbalit | Link | Blokovat | Admin
Teď jsem měl stejný problém a při hledání řešení jsem narazil jsem na tento topic, tak sem dávám odkaz na vyřešení, které mi pomohlo: Tady/?PHPSESSID=7110e5a0f1a4afc5018363cd5a8977d8 Stačí smazat /var/run/proftpd/proftpd.scoreboard, Proftpd si ho pak vytvoří sám.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.