Hello!
Lenne egy kis problémám a ProFTPd-vel.
A rendszer amire felraktam:
Debian Etch 4.0 Netinstall (vagy 4.03 ... ezt amúgy hol lehet megnézni ?)
Kernel 2.6.18-6-686
ProFTPD Version: 1.3.0 (stable)
Elég alap rendszert raktam fel,arra törekedek hogy minél kisseb legyen a rendszer( nincs X stb.) Fontos szempont hogy a hardware minnél kisseb eröforrásokkal rendelkezzen, le akarom tesztelni hogy mi az a minimális software & hardware környezet ami megfelelöen ki tudja a következöket szolgálni:
-
-ftp szerver a usereknek a quake 3as modok,pályák feltöltéséhez
-ssh szerver a játékszerver adminisztárcióhoz
-php és sql környezet a játék szerverekhez stat-okhoz és egyéb webes dolgokhoz.
-programozhato rcon (pl.: http://rubyforge.org/projects/rcon/ ) kisseb adminisztrativ bot-ok hoz.
A proftpd-s problémám az lenne hogy úgy tűnik a mod_ifsession.c modul mintha nem működne.
Ha kiadok egy proftpd -vv parancsot ezt kapom rá:
- ProFTPD Version: 1.3.0 (stable)
- Scoreboard Version: 01040002
- Built: mar gen 2 10:57:47 CET 2007
- Module: mod_core.c
- Module: mod_xfer.c
- Module: mod_auth_unix.c
- Module: mod_auth_file.c
- Module: mod_auth.c
- Module: mod_ls.c
- Module: mod_log.c
- Module: mod_site.c
- Module: mod_delay/0.5
- Module: mod_dso/0.4
- Module: mod_auth_pam.c
- Module: mod_readme.c
- Module: mod_cap/1.0
- Module: mod_ctrls/0.9.4
..... furcsa modon nem látom benne a mod_ifsession.c-t, pedig a modules.conf ban benne van és a modul létezik is a /usr/lib/proftpd ben.
Az /etc/proftpd/modules.conf tartalma:
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_quotatab.c
LoadModule mod_quotatab_file.c
LoadModule mod_quotatab_ldap.c
LoadModule mod_quotatab_sql.c
LoadModule mod_radius.c
LoadModule mod_wrap.c
LoadModule mod_rewrite.c
LoadModule mod_ifsession.c
És a /etc/proftpd/proftpd.conf tartalma:
Include /etc/proftpd/modules.conf
DefaultServer on
DeferWelcome off
DenyFilter \*.*/
DisplayLogin welcome.msg
DisplayFirstChdir .message
ExtendedLog /var/log/proftpd/ftp_auth.log AUTH auth
ExtendedLog /var/log/proftpd/ftp_access.log WRITE,READ write
Group nogroup
IdentLookups off
ListOptions "-l -h -A"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat write "%h %l %u %t \"%r\" %s %b"
MaxInstances 30
MultilineRFC2228 on
Port 21
ServerName "Debian"
ServerType standalone
ShowSymlinks on
SystemLog /var/log/proftpd/proftpd.log
TimeoutIdle 1200
TimeoutNoTransfer 600
TimeoutStalled 600
TransferLog /var/log/proftpd/xferlog
UseIPv6 off
User nobody
UseReverseDNS off
<Global>
DefaultRoot ~
<IfGroup ftpuser>
DefaultRoot ~/pub/
</IfGroup>
<IfGroup q3user>
DefaultRoot ~/.q3a/
</IfGroup>
RootLogin on
RequireValidShell on
</Global>
<Directory /*>
Umask 022 022
AllowOverwrite on
</Directory>
<Limit SITE_CHMOD>
AllowUser root
DenyAll
</Limit>
<Limit LOGIN>
DenyGroup !ftpuser,!q3user,!root
</Limit>
<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 célom az lenne hogy 2 csoportnak kölönbözö DefaultRoot-ot adjak, azaz leygen 1 csoport akik (ftpuser) a /home/ftp/pub ba jelentekznek be, és legyen 1 csoport akik a saját account-juk home könytárának .q3a/ könytárába jelentkezzenek be (igen jól látjátok 1 kis quake 3 szerver lesz :)). Szóval ha valaki tudna segiteni hogy miért nme müködik a mod_ifsession kérem segitsen.
A másik problémám hogy a ftp szerver logja igencsak hamar irgalmatlan nagy lesz, és attol félek ez elöb utol meg terheli a gépet. Mivel elég alap rendszer van fent (kb 270 mega az egész) valószínüleg nem lett beálitva alapbol a logrotate a proftpd-hez. A kérdésem az lenne hogy elég ha az /etc/logrotate.d/ be berakok egy proftpd nevü filet a köbetkezö tartalommal :
/var/log/proftpd/proftpd.log /var/log/proftpd/xferlog {
missingok
notifempty
postrotate
/usr/bin/kill -HUP `cat /var/run/proftpd.pid 2>/dev/null` 2>/dev/null || true
endscript
}
.. ezt már megtettem csak egyellőre nem látok változást :S
- 911 megtekintés
Hozzászólások
...ehh, közben rájöttem hogy a mod_ifsession nem kezeli a DefaultRoot direktívát.
Leszedtem a 1.3.1-es proftpd forrássát, belefordítottam a mod_ifsession-t, gond nélkül müködik.
Hogy tudnám megoldani azt hogy egy virtualhoston belül a különbözö csoportok külön DefaultRoot-ot kapjanak. Egyáltalán ez megoldható ? Vagy csinaljak 2 virtualhost-ot ?
Bocsi hogy ijen lami modon kérdezgetek itt, de egyfolytában keresgélek googleval de erre még nem találtam megoldát :(
- A hozzászóláshoz be kell jelentkezni
:)
na megoldottam!
jól el vagyok itt magamban :) ... legalább valami cinikus hozzászolást tegyen valaki :)
... franc se gondolta volna hogy a DefaultRoot direktivát töbször is lehet használni .....(5 órán keresztüli googlizás meg töbszörös ujraforditás forrásból közben sem gondoltam erre)
DefaultRoot /home/ftp/pub/ ftpuser,!root
DefaultRoot ~/.q3a/ q3user,!root
.... úgy tűnik a "~" jelölt user home könyvtárát csak 1 DefaultRoot bejegyzésnél lehet felhasználni.
- A hozzászóláshoz be kell jelentkezni
Ügyes vagy, kitartó, gratulálok... :)
- A hozzászóláshoz be kell jelentkezni
grat.
- A hozzászóláshoz be kell jelentkezni
Bocs, csak most olvastam a kérdést.
Proftp: látom megoldottad, valóban többször lehet használni.
Logrotate: rotálj naponta (daily), és tömörítsd is rögtön (compress)
- A hozzászóláshoz be kell jelentkezni
Hali,
Van egy proftpd-m (ProFTPD Version: 1.2.10 (stable)) ami PostgreSQL-be van kötve és mostanáig jól ment. Kb. 1-2 hete van az a jelenség, hogy akár aktív akár passzív kliens jön, a belépés még sikerül de könyvtár listát már nem kapnak, mert egyszerűen megáll az ftp szerver a kliens meg végül timeout-ol.
Eddig ilyen nem volt, debug logban meg semmi extra, amikor kiadom kliensben a dir-t (ls -t), a szerver logban megjelenik, hogy a PASV-t elkezdi átadogatni a moduloknak és végül a mod_log-nak és utána semmi.
Reverse DNS lookup kikapcsolva.
Help plíz...
- A hozzászóláshoz be kell jelentkezni
Az ftp kontrol kapcsolat a 21-es porton megy - és működik. A könyvtár listázáshoz, fájl fel-/letöltéshez viszont az ftp nyit egy adat kapcsolatot is és az adatokat ezen pumpálja át. Ha útközben módosult egy tűzfal szabály vagy teszem azt volt egy tűzfal restart és a conntrak_ftp modul nem töltődött be, akkor az adat kapcsolat nem alakítható ki --> time outra fut a művelet, érdemi eredmény nélkül.
- A hozzászóláshoz be kell jelentkezni
A lehető legmélyebb hálám.
nf_conntrack_ftp
fck.
- A hozzászóláshoz be kell jelentkezni
Nalam a modulokat nem a tuzfal tolti, hanem a rendszer maga. Majd minden rendszert ra lehet erre venni, a boot-time tuzfalscript pedig tkp leegyszerusitheto egy iptables-restore /var/lib/iptables/rules-save sorra.
- A hozzászóláshoz be kell jelentkezni