Jag är en av dem som gillar att förnya och lära sig nya saker, för inte länge sedan var jag tvungen att installera och konfigurera en FTP-server och jag bestämde mig för att göra det annorlunda än jag alltid gjorde.
I det här fallet valde jag en FTP-tjänst med virtuella användare, användare som kommer att lagras i en krypterad fil (användare, lösenord, inställningar etc.), alla med Ren FTPd.
Här visar jag dig hur du gör det ... ja, låt oss komma igång 😉
Först och främst, ange att kommandona i den här självstudien är avsedda för distros som Debian eller baserat på dem, men om någon använder en annan distro på sin server måste de installera samma paket och använda inställningarna nedan, det enda som behöver ändra är installationskommandot.
1. Först måste vi installera Pure FTPd:
apt-get install pure-ftpd
Utgången slutar ungefär så här:
2. Tjänsten är redan aktiverad, men det har ingen nytta för oss om vi inte har konfigurerat den ordentligt, låt oss lägga en omfattande konfigurationsfil men den är nästan standard, den innehåller det normala, fastställer att anonyma användare inte är tillåtna, etc. etc .
cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd.conf
3. Anta att vår FTP-mapp är / var / www / ftp / och vi vill skapa en användare som kan ladda upp information till / var / www / ftp / sysadmin / mappen, låt oss lägga följande i en terminal:
pure-pw useradd sysadmin -u 2001 -g 2001 -d /var/www/ftp/sysadmin/
Detta betyder följande:
pure-pw: Kommando som används för att manipulera Pure-FTPd-användare
useradd: Vi anger att vi kommer att lägga till en användare
sysadmin: Användaren som jag vill skapa
-u 2001: UserID för den användaren
-g 2001: GroupID för den användaren
-d / var / www / ftp / sysadmin /: Mappen som kommer att vara hem för den användaren, det vill säga där de laddar upp saker
När du går in i föregående rad kommer den att be om användarens lösenord.
4. Nu måste de uppdatera användardatabasfilen, för detta går vi in i mappen / etc / pure-ftpd / (cd / etc / pure-ftpd) och lägger i terminalen:
pure-pw mkdb
5. Nu måste vi starta Pure-FTPd men indikerar att vi kommer att använda filen för virtuella användare, låt oss först stoppa tjänsten:
/etc/init.d/pure-ftpd stop
Då ser vi till att det inte startar som standard normalt:
chmod -x /etc/init.d/pure-ftpd
Och nu börjar vi tjänsten på vårt sätt:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
6. Om de försöker använda ett program som Filezilla kommer de att se att de kan ansluta utan problem med den skapade användaren, men de kommer inte att kunna kopiera något eller skapa kataloger, det beror på / var / www / ftp / sysadmin / mappen ( användarens hem enligt exemplet) har inte rätt behörigheter, det kommer att fixas med ett:
chown -R 2001:2001 /var/www/ftp/sysadmin/
Kom ihåg att Uid och Gid 2001 är den av användaren som vi skapade, vi skapade den med kommandot i föregående steg 3 😉
7. För att stoppa tjänsten, tryck bara på [Ctrl] + [C] i samma terminal eller gör en:
killall pure-ftpd
Nu kommer vi att indikera att tjänsten startar automatiskt med systemet när servern startar, för detta ändrar vi filen /etc/rc.local och före den sista raden som säger "exit 0" lägger vi kommandot som vi startar FTP-tjänst:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
Med andra ord skulle det se ut så här:
Du kan redigera filen med nano, vi eller din föredragna redigerare, eller om du föredrar, kopiera och klistra in det här kommandot som underlättar ditt arbete:
perl -pi -e "s[exit 0][/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb]g" /etc/rc.local && echo "exit 0" >> /etc/rc.local
... ja ja ... som du läser, «underlätta», är det ett omfattande kommando ja, men det är helt enkelt att ersätta text med perl och ett ofarligt eko 🙂
8. När detta är klart startar du om servern så ser du att tjänsten pure-ftpd startas och är redo att arbeta 😀
Hur tar jag bort användare?
Som jag sa tidigare, kommandot ren-pw är vad vi behöver för att manipulera användare, för att radera en användare (till exempel sysadmin) låt oss sätta följande:
cd /etc/pure-ftpd/
pure-pw userdel sysadmin
pure-pw mkdb
Kom ihåg att när du ändrar någon användare måste du återskapa användarnas virtuella databasfil, den finns i / etc / pure-ftpd / och den genereras / uppdateras med pure-pw mkdb
Hur som helst vänner, jag tror att det inte finns mycket mer att lägga till, bjuda in dig att läsa hjälp av pure-pw eftersom det tillåter oss mycket mer än de jag visade dig här (det här är bara en kort och nästan grundläggande handledning).
För ett eller två år sedan var jag en av dem som länkade allt till OpenLDAP eller MySQL, men med tiden insåg jag att så många anslutningar till databaser som är servrar som sådan genererar konsumtion som vi ofta inte har råd med. av helt livskraftiga alternativ som att använda databaser i programmets egna filer, till exempel Pure-FTPd .pdb 🙂
Varje tvivel eller fråga kommer jag att försöka hjälpa så mycket jag kan.
Hälsningar och ... lycklig hacking!
Att det .. Dokumentation vid fel 😀
Och jag skriver redan inlägget om hur jag installerar Nginx + MySQL + Spawn_FastCGI som jag gjorde i Justice, och tack vare det fungerar bloggen så bra :)
Jag hoppas kunna ha den redo för imorgon eller övermorgon.
Bra inlägg; Det var roligt nyligen jag kämpade för att sätta min ftp-server även om jag inte kunde med vsftpd och jag gick till pure-ftpd och gå vad om jag tror att jag saknar är att sätta ett exempel på den tydliga konf dokumentationen är väldigt bra, men åtminstone grunderna. Kryptering, eller åtminstone forwading-porten om routern används.
Förresten med detta kommando pure-ftpwho låter dig veta vem som är ansluten till servern, och om något laddar ner;).
Och enligt dig är det inte så nödvändigt att sätta en databas för att ansluta till servern.
Tack för kommentaren 🙂
Ja, jag förklarade inte många saker (allt faktiskt) i konfigurationen, det är att jag antar att någon som vet hur man hanterar en server, som vill installera en FTP-tjänst, att någon inte skulle ha stora problem med att läsa kommentarer till conf-filen ^ - ^
Hälsningar och igen, tack för kommentaren
Hej Mycket bra inlägg, jag använder (eller åtminstone för tillfället) vsftpd men jag har några problem med det, och jag ville se om jag hände det här, har du någon url eller doc för att se hur dess konfiguration är?
Tack så mycket };)
Du kan se konfigurationen här: http://ftp.desdelinux.net/pure-ftpd.conf
Eventuella frågor eller om du behöver något öppna en tråd i forumet som vi gärna hjälper dig 🙂
Mycket bra 😀
Bara en liten sak, perl-kommandot saknar symbolen ^, så det ändrar inte den andra utgång 0 som finns i kommentarerna:
perl -pi -e "s[^exit 0][/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb]g" rc.local && echo "exit 0" >> rc.local
hälsningar
Utmärkt, jag har bara en fråga, hur kan jag skapa en skrivskyddad användare? Jag använder Centos 6.5, pureftpd, ispconfig och grafikläge.
Jag använder ispconfig endast för ftp
hälsningar och tack
Det här sättet att installera pureftp är en ASCO 🙂 du lämnar tjänsten som root, skapar en virtuell användare och ändrar sedan behörigheterna för filsystemet och ufff en lång etc. Hur paketet är installerat är klart att använda, det finns inget behov av att göra alla dessa steg
Du är inbjuden att publicera en mindre "motbjudande" guide .. 😉
Vad föreslår du? Sätt ftp-servern för att lyssna på en port> 1024? Om ftp-servern lyssnar på sin standardport: 22 måste den köras som root såvida du inte ändrar kärnans funktioner, om det du vill är att förbättra säkerheten, använd ett MAC-ramverk med SELinux, en annan variant skulle vara att fängsla / chroot serverfp .
Länken för pure-ftpd.conf är nere eller finns inte. Kan du återställa det?
tack
2 år senare är länken för filen pure-ftpd.conf fortfarande nere 🙁