Hur man installerar och konfigurerar en FTP-server med virtuella användare av Pure-FTPd +

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.

Alla kommandon som de kommer att läsa kommer att köras som root. Om du vill kan du lägga "sudo" till varje rad.

1. Först måste vi installera Pure FTPd:

apt-get install pure-ftpd

Utgången slutar ungefär så här:

installation-ren-ftpd

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.

De måste ha skapat sysadmin-mappen tidigare i / var / www / ftp /

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:

rc-local-pure-ftpd

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!


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   livlig sade

    Att det .. Dokumentation vid fel 😀

    1.    KZKG ^ Gaara sade

      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.

  2.   Rodolfo sade

    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.

    1.    KZKG ^ Gaara sade

      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

  3.   tahuri sade

    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 };)

    1.    KZKG ^ Gaara sade

      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 🙂

  4.   Atheyus sade

    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

  5.   Omar sade

    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

  6.   monsun sade

    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

    1.    livlig sade

      Du är inbjuden att publicera en mindre "motbjudande" guide .. 😉

    2.    sedlav sade

      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 .

  7.   Ll skräddare sade

    Länken för pure-ftpd.conf är nere eller finns inte. Kan du återställa det?
    tack

  8.   bilagor sade

    2 år senare är länken för filen pure-ftpd.conf fortfarande nere 🙁