PureFTPd-mysql installeren (6)

De ftp-server draait al een paar dagen op poort 2121. Vanuit het interne netwerk is daar geen enkel probleem mee. Maar van buitenaf is er een behoorlijk probleem. De ftp-client wil in passive mode gaan en kan vervolgens niet connecten.

Na wat nazoekwerk kom ik erachter dat de router (een sitecom DC-202v5) een stukje verkeer aan het blokkeren is. De poorten die namelijk gebruikt worden voor de Passive verbinding worden niet doorgelaten.

Aanmaken bestand PassivePortRange:

Arkon:~# nano /etc/pure-ftpd/conf/PassivePortRange
Arkon:~# /etc/init.d/pure-ftpd-mysql restart
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/d
40000 45000

En vervolgens het herstarten van de ftp-server:

/etc/init.d/pureftpd restart

En die forwarden. Als het goed is moet het nu wel lukken.

PureFTPd-mysql installeren (5)

Voordat ik het uitzoekwerk van snortblock afgerond heb zal ik toch iets moeten doen om ftp misbruik te beperken. De enige snelle oplossing die ik hiervoor het is het aanpassen van het poortnummer. Dit kan ik in mijn geval op 2 plaatsen doen, namelijk in de router door een poort door te sturen naar het interne ip adres van Arkon op poort 21 (standaard). Of door pureftpd te laten luisteren op een andere poort. Dit doe je door een bestand aan te maken in /etc/pureftpd/conf en hierna de server te herstarten:

Arkon:~# nano /etc/pure-ftpd/conf/Bind
Arkon:~# /etc/init.d/pure-ftpd-mysql restart
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -O clf:/var/log/pure-ftpd/transfer.log -u 1000 -j -A -E -S **** -B

In dit bestand zet je enkel het poortnummer waarop je de ftp-server wil draaien.

Zoals je (niet) ziet staat nu het poortnummer op een andere poort door middel van de optie -S die staat voor –bind

Nu nog even de gegevens in de router updaten naar deze wijziging zodat we ook van buitenaf bereikbaar zijn op dat poortnummer. Helaas werkt mijn router niet zo vernuftigd zoals ik hierboven noemde, ik kan enkel poorten 1:1 doorsturen. Een poortwissel met het forwarden kent ie niet 🙁

PureFTPd-mysql installeren (3)

De ftp-server draait nu dus helemaal naar behoren. Maar hoe zit het nu met de rechten die de bestanden meekrijgen. Elk bestand krijgt nu de groep ‘ftpgroup’ en user ‘ftpuser’ mee. Op zich prima natuurlijk. Maar als je ook enkele gebruikers hebt met shell toegang dan wil je die toch de beschikking geven over hun eigen bestanden.

Heel simpel te realiseren, als je in de pureftpd mysql tabel onder GID en UID het juiste id-nummer van de gebruiker meegeeft dan komt dat meteen goed.

PureFTPd-mysql installeren (2)

Het installeren van de ftp-server ging gisteren voorspoedig. Vandaag kwam ik er echter achter dat ik niet de mogelijkheid heb om symlinks te volgen. Als de ftp-login dus gebruikt wordt om een website te beheren dan heb ik een probleem want ik wil de homedir van de gebruikers wel onder /home laten staan. En de website blijft onder /var/www dus dan blijft enkel het symlinken over.

Nu is dat vrij makkelijk op te lossen. Door in het bestand /etc/default/pure-ftpd-common de optie virtualchroot op true te zetten.

# VIRTUALCHROOT:# whether to use binary with virtualchroot support
# valid values are "true" or "false"
# Any change here overrides the setting in debconf.VIRTUALCHROOT=true

Hiermee kun je dus de symlinks volgen maar daarbuiten kun je nergens naartoe.

Even de ftp-server herstarten met

Arkon:~# /etc/init.d/pure-ftpd-mysql restart

en de boel is aangepast.

PureFTPd-mysql installeren

Bronpagina vanaf http://www.howtoforge.com

Vandaag gaan we een database gestuurde ftp-server aanmaken. Ik had hier mijn twijfels over, zoveel gebruikers ga ik niet hebben. De server gaat namelijk gebruikt worden voor mijzelf en een enkeling waar ik data voor wil hebben staan. Meer dan 10 gebruikers gaan er zeker niet komen, ik twijfel er al aan of ik er 5 ga halen. Henk van de Kamer heeft me echter overgehaald. Voor ftp wil je om beveiligingstechnische redenen geen echte gebruikers aanmaken. Een goed punt dus.
Continue reading “PureFTPd-mysql installeren”

Debian etch installatie (again…)

Helaas…

Ben ik gedurende het weekend regelmatig druk geweest met Arkon (dat is de hostname die ik de microclient gegeven heb). Dan krijg ik het uiteraard voor elkaar om het geheel zondagavond nog te slopen…

Ik was nog druk bezig met het installeren van een ftp-server. Aangezien deze standaard op inetd leunt kreeg ik het niet voor elkaar om ‘m te starten. Dus maar eens terugzoeken hoe ik Debian Etch geinstalleerd gekregen heb. Dat betekend het teruglezen van de pagina’s op Het Lab. Ik kwam in elk geval tegen dat ik vergeten was om voor de 2e keer de initrd te vernieuwen nadat een aantal modules nog expliciet uitgesloten werden. Jammer dat ik dus het volgende stukje niet uitgeschakeld heb:

## de volgende is waarschijnlijk nodig voor niet SATA (bijvoorbeeld cd-rom)
#install ide_core /bin/true

De harde schijf die ik gebruik is namelijk een ide-schijf. En zonder harde schijf is er geen mogelijkheid dat er een besturingssysteem geladen wordt.

Na het opnieuw booten van de usb-stick met de netboot installatiebestanden heb ik nog getracht om van daar uit de initrd opnieuw op te bouwen. Helaas is me dat niet gelukt. Na een tijdje hiermee geprutst te hebben heb ik de knuppel maar in het hoenderhok gegooid en ben verdergegaan met het opnieuw installeren.

De verloren tijd moeten we dan maar onder de noemer leerervaring zetten.