Pureftpd-mysql Lenny

Fórumok

Hali,

Van egy működő debian etch-en működő pureftpd-mysql szerverem, és mivel van hozzá egy klassz webes admin felület nem szeretnék mást használni. Mivel költözik az FTP szerver egy másik gépre gondoltam oda már az 5-ös debiant teszem fel. Sajna ezen nem akar összejönni a mysql-es authentikáció. Hozzá se nyúl pureftpd a mysql szerverhez.
Mindent az howtoforge-on lévő hogyan alapján csináltam.
http://www.howtoforge.com/pureftpd_mysql_virtual_hosting

Először a szerver sem volt hajlandó futni, de arra találtam megoldást.

Unix authentikáció megy, mysql nem :(
Valmi öttlet?

Hozzászólások

Sokat nem segitek tudom, de infomorzsanak annyit, hogy nalam lenny-n megy a pureftpd mysql auth-tal, igaz nalam forrasbol van telepitve.

Én csomagból húztam fel, viszont nem a sima pure-ftpd van fent hanem a pure-ftpd-mysql.

Az OLD_PASSWORD sajnos nem segít :(, de ez valószínűsíthető is volt hiszen hozzá se nyúl az adatbázishoz. A mysql log tök üres (ha mással pl phpmyadminnal matatok benne az benne van, szóval a log tuti megy).

Van valamilyen érdembeni különbség a pure-fptd és a pure-ftpd-mysql között ???

Nekem az újabb mysql authentikációkkal szokott gondom lenni. Ilyenkor az OLD_PASSWORD szokott segiteni.

MD5 is volt, de olvastam hogy valakinek csak cleartext-tel volt hajlandó menni, de ....
A fő probléma nem az adatbázisnál van!
A pureftpd-mysql hozzá se szagol az adatbázishoz, de nem értem miért.
A konfig file jó. Az /etc/pure-ftpd/auth könyvtárban ott a 30mysql a 65unix és a 70pam linkek mellett. 30mysql link az etc/pure-ftpd/conf/MySqlConfigFile-ra mutat amiben etc/pure-ftpd/db/mysql.conf van benne.

a konfig file így néz ki :

MYSQLSocket /var/run/mysqld/mysqld.sock
#MYSQLServer localhost
#MYSQLPort 3306
MYSQLUser pureftpd
MYSQLPassword ftpdpass
MYSQLDatabase pureftpd
#MYSQLCrypt md5, cleartext, crypt() or password() - md5 is VERY RECOMMENDABLE uppon cleartext
MYSQLCrypt cleartext
MYSQLGetPW SELECT Password FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetUID SELECT Uid FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetGID SELECT Gid FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetDir SELECT Dir FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetBandwidthUL SELECT ULBandwidth FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetBandwidthDL SELECT DLBandwidth FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetQTASZ SELECT QuotaSize FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetQTAFS SELECT QuotaFiles FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")

Hozzá se nyúl pureftpd a mysql szerverhez.
Ezt miből látod? Nem logol a MySQL logba? Más logol, ha pl. simán parancssorból kapcsolódsz?

És az alap kérdés: unix socketen vagy tcp-n figyel a MySQL?

a.

Kiindulásképp a howtoforge-os oldal jó! http://www.howtoforge.com/pureftpd_mysql_virtual_hosting
Csak némi változtatásokat kell eszközölni a telepítésnél.
Még a pure-ftpd-mysql telepítése előtt ezekre lesz szükséged: mysql-server mysql-common mysql-client libmysqlclient15-dev openbsd-inetd
Nálam speciel kijött az a hiba hogy nem tudott írni az /etc/inetd.conf-ba, mivel nem volt feltelepítve alapból az openbsd-inetd. A howtoforge-os leírásban szó esik hogy telepítéskor kérdezi hogy standalone módba fusson e vagy sem, ezt nálam nem kérdezte. Ezt manuálisan kellett beállítani itt: /etc/default/pure-ftpd-common
[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...]

Ezek után szerkeszted az /etc/inetd.conf fájlt és kikommentálod az ftp sort:
[...]
#:STANDARD: These are standard services.
#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper
[...]

Újraindítod a masinériát és megnézed, hogy tényleg elindul-e démonként. (reboot)

És kész is!
A howtoforge nagy ötlet volt anno, de már elavult sajnos. :(

Köszi a tippet. Még nem néztem meg mivel addig nyafiztak a partnerek hogy nem lehetne-e valamilyen web alapú csoda az FTP helyett, hogy a végén feltettem nekik egy OWL-t.
Innen aztán az is töltögethet akinek a tűzfala nem engedi ki az FTP-t, azokról meg nem is beszélve akik azt se tudják mi az hogy FTP.

Minden segítséget köszönök.

Yuyy. Hat inetd-s szerverkent en nem futtatnek ftp szerver. A pure ftpd az kepes standalone-kent is futni, (egyebkent a standalone eppen azt jelenti, hogy _nem_ inetd-bol fut) es az a jobb.
De ha mar inetd, akkor is inkabb xinetd-t javaslok. Szeparalt konfigok, es atlathatobbak.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Szerintem leírtam feketén-fehéren, hogy inetd-t is csak azért telepítettem fel mert pure-ftpd-mysql írni szeretett volna az /etc/inetd.conf-ba. Mivel nem volt fent inetd így hibaüzenettel tért vissza. És ezek után állítottam át pure-ftpd -t STANDALONE!!!!! módba!
Abban viszont igazad van, hogy nem próbáltam ki, hogy inetd nélküli rendszerre telepítem pure-ftpd-mysql -t, és hogy ha átállítom standalone módra, akkor működik e. És nem is fogom már kipróbálni mert úgy ahogyan leírtam, úgy működik STANDALONE!!!!! módban!
Remélem eléggé kihangsúlyoztam, hogy így is STANDALONE módban fut! :\

Ez zavart meg:

Ezek után szerkeszted az /etc/inetd.conf fájlt és kikommentálod az ftp sort:
[...]
#:STANDARD: These are standard services.
#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper
[...]

Ugyanis ugy tunt, az eredeti konfigban van ott a kommentjel, es te szedted ki a kommentjelet elole. Igy nem is volt ertelme az egesznek.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

hjaj :)
Gyárilag nincs ott komment, én tettem bele. Amúgy mindent úgy írtam le ahogyan lennie kell, nem azt írtam le ahogyan volt, hanem úgy ahogyan kell lennie, sztem ez mindenkinek triviális volt...
Alapban nincs kommentelve a beállítás, azért írtam oda hogy KIKOMMENTELEM AZ FTP sort, ergo teszek egy kibeb.ott # jelet az elejére (ismétlem alapba nincs ott komment mert inetd-ben futna az egész, azt kapcsolom ki)
am nem tudom honnan jött az az ötleted hogy kiszedem a kommentjelet előle...
remélem végre érthető :)

Azt próbáld ki, hogy nem socket-re csatlakozol, hanem localhostra a 3306-os porton keresztül. Szerintem én is belefutottam már ebbe (legalábbis rémlik), és így oldottam meg, mivel sürgetett az idő.

Nem tudom segítek-e vele, de korábban én is vmware-ból futtattam egy debian 5-öt, és teljesen ugyan ez a probléma állt fent, az indítás típusát átírtam inetd-ről standalone-ra és máris működött minden flottul.