Avatar billede dennism Nybegynder
19. september 2005 - 18:51 Der er 26 kommentarer og
1 løsning

Debian: pureftpd-mysql

Jeg er ved at installere pureftpd-mysql, og har fuldt følgende vejledning:
http://linux-support.dk/index.php?id=2

Jeg oprettede følgende tabel:

*******************************
create database vhosts;
use vhosts;

DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` int(128) NOT NULL auto_increment,
`username` varchar(128) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
`domain` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`homedir` varchar(128) NOT NULL default '/home/pureftpd/root/',
`QuotaFiles` varchar(255) NOT NULL default '',
`QuotaSize` varchar(255) NOT NULL default '',
`ULRatio` varchar(255) NOT NULL default '',
`DLRatio` varchar(255) NOT NULL default '',
`ULBandwidth` varchar(255) NOT NULL default '',
`DLBandwidth` varchar(255) NOT NULL default '',
`disabled` int(1) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`),
UNIQUE KEY `username` (`username`),
UNIQUE KEY `domain` (`domain`)) TYPE=MyISAM;

GRANT SELECT, UPDATE, INSERT, DELETE
ON vhosts.*
TO vhosts@localhost
IDENTIFIED BY 'pass';
*******************************

Både bruger, database og tabel virker fint - testet med phpmyadmin. Og når jeg logger ind med vhosts i phpmyadmin, har jeg også adgang til databasen.

I min passwd har jeg:
vhosts:x:2000:2000::/home/vhosts:

Så brugeren og gruppen vhosts burde være oprettet på serveren.

Min pureftpd-mysql.conf er:
*******************************
# /etc/pureftpd-mysql.conf
MYSQLServer localhost
MYSQLPort 3306
MYSQLSocket /var/run/mysqld/mysqld.sock
MYSQLUser vhosts
MYSQLPassword pass
MYSQLDatabase vhosts
MYSQLCrypt any
MYSQLDefaultUID 2000
MYSQLDefaultGID 2000
MYSQLGetPW SELECT Password FROM users WHERE username="\L" AND disabled <> "1"
MYSQLGetDir SELECT homedir FROM users WHERE username="\L"
MySQLGetQTAFS SELECT QuotaFiles FROM users WHERE username="\L"
MySQLGetQTASZ SELECT QuotaSize FROM users WHERE username="\L"
MySQLGetRatioUL SELECT ULRatio FROM users WHERE username="\L"
MySQLGetRatioDL SELECT DLRatio FROM users WHERE username="\L"
MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE username="\L"
MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE username="\L"
# End of file
*******************************

Når jeg kører /etc/init.d/pureftpd restart, får jeg følgende fejl:
Restarting ftp server: PureFTPd421 Konfigurations fejl: Forkert SQL konfigurations fil: /etc/pureftpd-mysql.conf

Nogen der kan hjælpe mig videre herfra? Kan ikke selv se nogen fejl i min conf-fil :(
Avatar billede janust Nybegynder
19. september 2005 - 19:23 #1
Siden fejlen ligger i /etc/init.d/pureftpd ville det nok være meget relevant at poste din version af denne. Du er jo glad for at ændre i opsætningen uden at skabe dig det store overblik, så post lige netop din version.
Avatar billede dennism Nybegynder
19. september 2005 - 19:42 #2
#!/bin/bash

##### EDIT THIS
PASSIVEMODEPORTS="40000:50000"
INTERFACE="ppp0"

##### STOP
DAEMON="/usr/local/sbin/pure-ftpd"
IP=`ifconfig ${INTERFACE} | grep inet | cut -d : -f 2 | cut -d \  -f 1`
ARGS="-S 21 -b -d -H -i -c 10 -B -D -A -j -Z -w -E -I 2 -C 2 -k 95 -Y 1 -l mysql:/etc/pureftpd-mysql.conf -p ${PASSIVEMODEPORTS} -P ${IP}"

case "$1" in start)
echo -n "Starting ftp server:"
echo -n " PureFTPd"
start-stop-daemon --start --quiet --exec ${DAEMON} -- ${ARGS}
echo "."
;;
stop)
echo -n "Stopping ftp server:"
echo -n " PureFTPd"
start-stop-daemon --stop --quiet --exec ${DAEMON} -- ${ARGS}
echo "."
;;
reload | restart)
echo -n "Restarting ftp server:"
echo -n " PureFTPd"
start-stop-daemon --stop --quiet --exec ${DAEMON} -- ${ARGS}
sleep 2
start-stop-daemon --start --quiet --exec ${DAEMON} -- ${ARGS}
echo "."
;;
*)
echo;
echo -e " << PureFTPd Starter 1.0.0 >> ";
echo;
echo "USAGE: /etc/init.d/pureftpd [option]"; echo;
echo "START Brings up the ftp server";
echo "STOP Brings down the ftp server completely";
echo "RELOAD|RESTART Brings the ftp server down and then up again";
echo;
esac

exit 0
Avatar billede dennism Nybegynder
19. september 2005 - 19:42 #3
Sådan ser den ud. Har ik rettet noget i forhold til den i artiklen.
Avatar billede janust Nybegynder
20. september 2005 - 14:26 #4
Findes filen /etc/pureftpd-mysql.conf?
Avatar billede dennism Nybegynder
20. september 2005 - 15:24 #5
Ja, den findes. Dens indhold har jeg angivet i spørgsmålets beskrivelse.
Avatar billede janust Nybegynder
20. september 2005 - 15:35 #6
Okay, lad os få en log fil at forholde os til.
Tilføj startop agrumentet '-O CLF:/var/log/ftp.log' i /etc/init.d/pureftpd og genstart serveren.

Hint: I dit script er alle startop argumenter samlet i linjen som starter med 'ARGS=', hvorefter de bliver kaldt senere i scriptet.

Jeg vil selvfølgelig have dig til at poste outputtet af din nye logfil her i tråden.
Avatar billede janust Nybegynder
20. september 2005 - 15:36 #7
Det kunne godt se ud som om at clf i '-O CLF:/var/log/ftp.log' skal staves med småt.
Prøv med småt hvis den store case ikke virker.
Avatar billede dennism Nybegynder
20. september 2005 - 15:51 #8
Vil lige høre dig først, om det har noget at sige at min /etc/init.d/pureftpd og pureftpd-mysql.conf er hentet ned med wget. Har nemlig kopieret indholdet af disse over i en fil med notepad på min win-maskine, og lagt op på server, hvorfra jeg så har hentet dem ned med wget.
Kan dette have ødelagt noget? Fordi det er dos-konverteret?
Avatar billede dennism Nybegynder
20. september 2005 - 15:52 #9
Håber du forstår hvad jeg mener..jeg ville være fri for at skulle side og skrive det hele selv. så kopierede det bare over i notepad, gemte på serveren og hentede ned med wget.
Avatar billede dennism Nybegynder
20. september 2005 - 16:06 #10
Er kommet til den konklusion, at det nok ik har noget at sige. Hvis bare jeg åbner filen i f.eks. nano og gemmer den igen, burde den være som den skal.

Men når jeg skriver /etc/init.d/pureftd restart, får jeg følgende retur:

ppp0: error fetching interface information: Device not found
Restarting FTP server: PureFTPd/user/local/sbin/pure-ftpd: option requires an argument -- P
.
Avatar billede janust Nybegynder
20. september 2005 - 16:26 #11
Kunne det tænkes du ikke har et interface, som hedder ppp0? - Jeg ved ikke om du kan se det, men du er ganske elendig til selv at skaffe information.

Er SQL fejlen væk?
Avatar billede janust Nybegynder
20. september 2005 - 16:30 #12
Emnet om interfaces er berørt i Debianguiden i en sådan grad at jeg tør betro dig selv at finde din information der. Herefter lader jeg dig helt selv finde ud af hvad relation det har til dit eget problem.
Avatar billede dennism Nybegynder
20. september 2005 - 16:31 #13
På trods af, at den melder fejl når man starter, så virker serveren faktisk fint :)

Men når jeg genstarter min server-maskine, så er FTP-serveren ikke aktiv bagefter. Hvordan laver jeg sådan, at den automatisk bliver startet når debian starter op?
Avatar billede dennism Nybegynder
20. september 2005 - 16:33 #14
Hvor i debianguiden finder jeg noget om ppp0? Har bladret rundt, men synes ikke at kunne finde det.
Avatar billede janust Nybegynder
20. september 2005 - 16:41 #15
Kan du ikke godt se at jeg synes det er træls at sidde og lege gæk med dig, når du så helt selv løser problemet. Du havde måske glemt at læse guiden ordenligt, som du plejer?

Eksperten er altid den sidste udvej, vi gidder fanme ikke side her og hjælpe dig med en simpel opskrift. Det er jo helt umuligt da vores udgangspunkt er at du har fulgt den! - Vi kan jo ikke se hvor du er sprunget over, vel...

Svaret på dit sidste spørgsmål kan du finde på Google. Du burde få dig en t-shirt med trykket "Tænk selvstændigt - NU!"
Avatar billede janust Nybegynder
20. september 2005 - 16:47 #16
Lille ven, ppp0 er værdien for interfaces. Det er altså værdien ppp0 som der er forkert i denne sammenhæng =)

http://debianguiden.dk/dists/stable/html/opsaetning-og-brug.html#netvaerk
Avatar billede dennism Nybegynder
20. september 2005 - 16:53 #17
Dvs. at det altså er min netværksopsætning, som driller pureftpd?
Avatar billede janust Nybegynder
20. september 2005 - 17:00 #18
Du, Dennis har angivet et interface som ikke findes. Kan du så forstå det?
Du har garranteret tænkt dig at køre serveren på eth0, men jeg kan jo ikke tænke for dig, vel!

Kan du ikke forstå så simple ting egner du dig ikke til at administrere en Linux server!
Avatar billede dennism Nybegynder
20. september 2005 - 17:13 #19
Beklager - havde ikke bemærket at interfacet skulle ændres øverst i filen.
Smider du lige et svar?

Tak for din tålmodighed.
Avatar billede janust Nybegynder
20. september 2005 - 17:14 #20
Jeg er da altid glad for at det endelig virker =)
Avatar billede dennism Nybegynder
20. september 2005 - 17:15 #21
Jeg har iøvrigt lige siddet og rodet lidt med serveren, og det viser sig, at mine brugere ikke kan slette filerne på deres homedir. Jeg har forsøgt at finde hjælp på google, men kan ikke finde noget som forklarer mig hvordan jeg kan give brugerne rettighed til at slette. Kan du hjælpe mig med det?
Avatar billede janust Nybegynder
20. september 2005 - 18:59 #22
http://debianguiden.dk/dists/stable/html/fil-rettigheder.html
Din bruger vhost skal eje de pågældende mapper og filer.
Jeg vil tro at 'chmod -R vhost:vhost /sti/til/rod/mappe' vil virke. Prøv at give mig videre feedback på det.
Avatar billede janust Nybegynder
20. september 2005 - 19:00 #23
Doh, du skal ikke bruge 'chmod -R vhost:vhost /sti/til/rod/mappe' men 'chown -R vhost:vhost /sti/til/rod/mappe' =)
Avatar billede janust Nybegynder
20. september 2005 - 19:04 #24
Det kræver et vist overblik og indsigt i Linux at kunne kende sådanne små fejl når man ser dem. Debianguiden giver dig faktisk en okay forståelse for Linux. Du kunne sætte dig for at læse den, så meget er det heller ikke =)
Avatar billede dennism Nybegynder
20. september 2005 - 19:12 #25
Skal jeg ikke passe på med f.eks. at køre:
chown -R vhost:vhost /var/www/

Det er disse filer jeg vil give vhost:vhost adgang til, men går ud fra, at apache også skal have rettighed til dem?
Avatar billede dennism Nybegynder
20. september 2005 - 19:41 #26
Du behøver ik svare, har selv klare det.

Tak for din hjælp!
Avatar billede janust Nybegynder
20. september 2005 - 20:15 #27
Ved ikke hvad du har gjort. Men du kan bare gøre www-data medlem af gruppen vhosts =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester