Sådan installeres og konfigureres en FTP-server med Pure-FTPd + virtuelle brugere

Jeg er en af ​​dem, der kan lide at innovere og opdage nye ting, for ikke længe siden skulle jeg installere og konfigurere en FTP-server, og jeg besluttede at gøre det anderledes, end jeg altid har gjort.

I dette tilfælde valgte jeg en FTP-tjeneste med virtuelle brugere, brugere der gemmes i en krypteret fil (brugernavn, adgangskode, indstillinger osv.), alt sammen med Pure FTPd.

Her vil jeg vise dig, hvordan du gør det... godt, lad os komme i gang 

Først og fremmest skal du angive, at kommandoerne i denne vejledning er designet til distros som Debian eller baseret på dem, men hvis nogen bruger en anden distro på deres server, skal de installere de samme pakker og bruge indstillingerne nedenfor, det eneste de skal ændre er installationskommandoen.

Alle de kommandoer du vil læse vil blive udført som root, hvis du ønsker det kan du sætte "sudo" foran hver linje.

1. Først skal vi installere Pure FTPd:

apt-get install pure-ftpd

Det vil afslutte outputtet til noget som dette:

installation-ren-ftpd

2. Tjenesten er allerede aktiveret, men den er ubrugelig, hvis vi ikke har konfigureret den korrekt. Lad os sige, at vi har en lang, men næsten standard konfigurationsfil; den indeholder de sædvanlige ting, der fastslår, at anonyme brugere ikke er tilladt osv.

cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd.conf

3. Okay, lad os antage, at vores FTP-mappe er /var/www/ftp/, og vi vil oprette en bruger, der kan uploade information til mappen /var/www/ftp/sysadmin/. Lad os indsætte følgende i en terminal:

pure-pw useradd sysadmin -u 2001 -g 2001 -d /var/www/ftp/sysadmin/

Dette betyder følgende:

pure-pw : Kommando, der bruges til at manipulere Pure-FTPd-brugere
useradd : Vi angiver, at vi vil tilføje en bruger
sysadmin : Brugeren jeg vil oprette
-u 2001 : Bruger-ID for den pågældende bruger
-g 2001 : Gruppe-ID for denne bruger
-d /var/www/ftp/sysadmin/ : Den mappe, der vil være hjemmet for denne bruger, det vil sige, hvor de vil uploade ting

Når du sætter den forrige linje, vil den spørge dem om adgangskoden til den pågældende bruger.

De skal tidligere have oprettet sysadmin-mappen inde i /var/www/ftp/

4. Nu skal du opdatere brugerdatabasefilen. For at gøre dette skal du gå til mappen /etc/pure-ftpd/ (cd /etc/pure-ftpd) og skrive følgende i terminalen:

pure-pw mkdb

5. Nu skal vi starte Pure-FTPd, men angive at vi vil bruge den virtuelle brugerfil. Lad os først stoppe tjenesten:

/etc/init.d/pure-ftpd stop

Så vil vi sørge for, at det ikke starter som standard normalt:

chmod -x /etc/init.d/pure-ftpd

Og nu starter vi tjenesten på vores måde:

/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb

6. Hvis du prøver at bruge et program som FileZilla, vil du se, at du kan oprette forbindelse uden problemer med den oprettede bruger; du vil dog ikke kunne kopiere noget eller oprette mapper. Dette skyldes, at mappen /var/www/ftp/sysadmin/ (brugerens hjemmemappe i eksemplet) ikke har de nødvendige tilladelser. Dette kan rettes med:

chown -R 2001:2001 /var/www/ftp/sysadmin/

Husk, at Uid og Gid 2001 er den bruger, vi oprettede, vi oprettede den med kommandoen i forrige trin 3 

7. For at stoppe tjenesten skal du blot trykke på [Ctrl]+[C] på den samme terminal, eller på en anden terminal skal du gøre følgende:

killall pure-ftpd

Nu vil vi indikere, at tjenesten starter automatisk med systemet, når serveren starter, til dette ændrer vi filen /etc/rc.local og før den sidste linje, der siger "exit 0", sætter vi kommandoen, som vi starter med FTP-tjeneste:

/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb

Med andre ord ville det se sådan ud:

rc-local-pure-ftpd

Du kan redigere filen med nano, vi eller din foretrukne editor, eller hvis du foretrækker det, kopier og indsæt denne kommando, der vil gøre dit job lettere:

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, “faciliter”, det er en omfattende kommando ja, men det er simpelthen at erstatte tekst med perl og et harmløst ekko 

8. Når dette er gjort, skal du genstarte serveren, og du vil se, at pure-ftpd-tjenesten nu er startet og klar til at køre 

Hvordan sletter man brugere?

Som jeg nævnte før, er pure-pw -kommandoen det, vi skal bruge for at manipulere brugere. For at slette en bruger (for eksempel sysadmin) bruger vi følgende:

cd /etc/pure-ftpd/
pure-pw userdel sysadmin
pure-pw mkdb

Husk, at når du foretager en ændring af en bruger, skal du genskabe den virtuelle brugerdatabasefil, den er placeret i /etc/pure-ftpd/ og genereres/opdateres med pure-pw mkdb

Alligevel venner, jeg tror ikke, der er meget mere at tilføje, jeg inviterer dig til at læse pure-pw-hjælpen, fordi den giver os mange flere ting end det, jeg viste dig her (dette er kun en kort og næsten grundlæggende tutorial).

For et år eller to siden var jeg en af ​​dem, der linkede alt til OpenLDAP eller MySQL, men som tiden gik indså jeg, at så mange forbindelser til databaser, der er servere som sådan, genererer et forbrug, som vi ofte ikke har råd til, Derfor er brugen af ​​helt levedygtige alternativer såsom at bruge databaser i applikationens egne filer, som i dette tilfælde af Pure-FTPd .pdb 

Enhver tvivl eller spørgsmål vil jeg forsøge at hjælpe så meget jeg kan.

Hilsen og ... glad hacking!


Tilføj som foretrukken kilde i Google