Kuidas installida ja konfigureerida FTP-server Pure-FTPd + virtuaalsete kasutajatega

Olen üks neist, kellele meeldib uuendusi teha ja uusi asju õppida, mitte kaua aega tagasi pidin ma installima ja konfigureerima FTP-serveri ning otsustasin seda teha teisiti kui alati.

Sel juhul valisin virtuaalsete kasutajatega FTP-teenuse, mille kasutajad salvestatakse krüpteeritud faili (kasutajanimi, parool, seaded jne) ja kõik see toimub Pure FTPd abil.

Siin ma näitan teile, kuidas seda teha… noh, alustame 

Kõigepealt täpsustage, et selles õpetuses olevad käsud on mõeldud sellistele distrodele nagu Debian või põhinevad neil, kuid kui keegi kasutab oma serveris mõnda muud levitamist, peavad nad installima samad paketid ja kasutama allpool määratud seadeid, mis on ainus, mida vaja muudetav on käsk install.

Kõik käsud, mida nad loevad, käivitatakse juurena, soovi korral saate igale reale lisada "sudo".

1. Esmalt peame installima Pure FTPd:

apt-get install pure-ftpd

See lõpetab väljundi umbes järgmiselt:

installimine-pure-ftpd

2. Teenus on juba aktiveeritud, aga sellest pole kasu, kui me pole seda õigesti seadistanud. Oletame, et meil on pikk, aga peaaegu standardne konfiguratsioonifail; see sisaldab tavapäraseid asju, näiteks anonüümsete kasutajate keelamist jne.

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

3. Olgu, oletame, et meie FTP kaust on /var/www/ftp/ ja me tahame luua kasutaja, kes saab üles laadida infot kausta /var/www/ftp/sysadmin/. Paneme terminali järgmise käsu:

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

See tähendab järgmist:

pure-pw: Pure-FTPd kasutajatega manipuleerimiseks kasutatav käsk
useradd: näitame, et lisame kasutaja
sysadmin: Kasutaja, kelle tahan luua
-u 2001: selle kasutaja UserID
-g 2001: selle kasutaja GroupID
-d / var / www / ftp / sysadmin /: kaust, mis on selle kasutaja koduks, see tähendab, kuhu ta asju üles laadib

Kui sisestate eelmise rea, küsib see teilt selle kasutaja parooli.

Nad peavad olema varem loonud kataloogi sysadmin kataloogis / var / www / ftp /

4. Nüüd peate kasutaja andmebaasi faili värskendama. Selleks minge kausta /etc/pure-ftpd/ (cd /etc/pure-ftpd) ja tippige terminali järgmine käsk:

pure-pw mkdb

5. Nüüd peame käivitama Pure-FTPd, aga täpsustama, et kasutame virtuaalkasutajate faili. Esmalt peatame teenuse:

/etc/init.d/pure-ftpd stop

Siis veendume, et see ei käivitu vaikimisi tavaliselt:

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

Ja nüüd alustame teenust oma viisil:

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

6. Kui proovite kasutada sellist rakendust nagu FileZilla, näete, et loodud kasutajaga saate probleemideta ühenduse luua; aga te ei saa midagi kopeerida ega katalooge luua. Selle põhjuseks on see, et kaustal /var/www/ftp/sysadmin/ (näites kasutaja kodukataloog) pole vastavaid õigusi. Selle saab parandada järgmiselt:

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

Pidage meeles, et Uid ja Gid 2001 on meie loodud kasutaja oma, lõime selle eelmises etapis käsuga 3 

7. Teenuse peatamiseks vajutage lihtsalt samal terminalil [Ctrl]+[C] või tehke teises terminalis järgmist:

killall pure-ftpd

Nüüd näitame, et serveri käivitamisel käivitub teenus süsteemist automaatselt, selleks muudame faili /etc/rc.local ja enne viimast rida, mis ütleb "exit 0", paneme käsu, millega alustame FTP teenus:

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

Teisisõnu näeks see välja järgmine:

rc-local-pure-ftpd

Faili saate muuta nano, vi või eelistatud redaktoriga või soovi korral kopeerige ja kleepige see käsk, mis hõlbustab teie tööd:

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

…jah jah… nagu sa loed “hõlbustama”, on see ulatuslik käsk jah, kuid see on lihtsalt teksti asendamine perliga ja kahjutu kajaga 

8. Kui see on tehtud, taaskäivitage server ja näete, et pure-ftpd teenus on nüüd käivitatud ja tööks valmis.

Kuidas kasutajaid kustutada?

Nagu ma varem mainisin, on kasutajate manipuleerimiseks vaja käsku pure-pw . Kasutaja (näiteks sysadmin) kustutamiseks kasutaksime järgmist:

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

Pidage meeles, et kui muudate mõnda kasutajat, peate taastama kasutajate virtuaalse andmebaasi faili, see asub kataloogis / etc / pure-ftpd / ja seda genereeritakse / värskendatakse puhta-pw mkdb-ga

Igatahes sõbrad, ma arvan, et pole palju rohkem lisada, kutsuge teid lugema pure-pw abi, sest see võimaldab meil palju enamat kui need, mida ma teile siin näitasin (see on lihtsalt lühike ja peaaegu põhiline õpetus).

Aasta-kaks tagasi olin üks neist, kes linkis kõik OpenLDAP-i või MySQL-iga, kuid aja möödudes mõistsin, et nii paljud ühendused andmebaasidega, mis on serverid, tekitavad tarbimist, mida me sageli ei saa endale lubada. elujõulised alternatiivid, näiteks andmebaaside kasutamine rakenduse enda failides, nagu antud juhul Pure-FTPd .pdb puhul 

Iga kahtluse või küsimuse korral püüan aidata nii palju kui saan.

Tervitused ja ... head häkkimist!


Lisa eelistatud allikana Google'is