Ja sam jedan od onih koji voli inovirati i učiti nove stvari, ne tako davno morao sam instalirati i konfigurirati FTP server i odlučio sam to učiniti drugačije nego uvijek.
U ovom slučaju sam se odlučio za FTP uslugu s virtualnim korisnicima, korisnicima koji će biti pohranjeni u šifriranoj datoteci (korisničko ime, lozinka, postavke itd.), sve s Pure FTPd-om.
Ovdje ću vam pokazati kako se to radi… pa, hajde da počnemo
Prije svega navedite da su naredbe u ovom vodiču namijenjene distro sistemima kao što je Debian ili se temelje na njima, međutim ako netko koristi drugu distro distrivku na svom poslužitelju mora instalirati iste pakete i koristiti postavke postavljene u nastavku, jedina stvar koja treba treba promijeniti naredbu install.
1. Prvo moramo instalirati Pure FTPd:
apt-get install pure-ftpd
Izlaz će završiti otprilike ovako:
2. Usluga je već aktivirana, ali je beskorisna ako je nismo pravilno konfigurirali. Recimo da imamo dugačku, ali gotovo standardnu konfiguracijsku datoteku; ona sadrži uobičajene stvari, uspostavljanje da anonimni korisnici nisu dozvoljeni itd.
cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd.conf
3. U redu, pretpostavimo da je naš FTP folder /var/www/ftp/ i želimo kreirati korisnika koji može slati informacije u folder /var/www/ftp/sysadmin/. U terminal ćemo upisati sljedeće:
pure-pw useradd sysadmin -u 2001 -g 2001 -d /var/www/ftp/sysadmin/
To znači sljedeće:
pure-pw: Naredba koja se koristi za manipulaciju Pure-FTPd korisnicima
useradd: Naznačujemo da ćemo dodati korisnika
sysadmin: Korisnik kojeg želim stvoriti
-u 2001: UserID tog korisnika
-g 2001: GroupID tog korisnika
-d / var / www / ftp / sysadmin /: Fascikla koja će biti dom tog korisnika, odnosno tamo gdje će oni prenositi stvari
Kada uđete u prethodni redak, tražit će vas lozinku tog korisnika.
4. Sada trebate osvježiti datoteku korisničke baze podataka. Da biste to učinili, idite u mapu /etc/pure-ftpd/ (cd /etc/pure-ftpd) i u terminal upišite sljedeće:
pure-pw mkdb
5. Sada moramo pokrenuti Pure-FTPd, ali uz navođenje da ćemo koristiti datoteku virtualnih korisnika. Prvo, zaustavimo servis:
/etc/init.d/pure-ftpd stop
Tada ćemo se pobrinuti da se uobičajeno ne započne:
chmod -x /etc/init.d/pure-ftpd
A sada uslugu započinjemo na naš način:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
6. Ako pokušate koristiti aplikaciju poput FileZille, vidjet ćete da se možete bez problema povezati s kreiranim korisnikom; međutim, nećete moći ništa kopirati ili kreirati direktorije. To je zato što mapa /var/www/ftp/sysadmin/ (korisnikov početni direktorij u ovom primjeru) nema odgovarajuće dozvole. Ovo se može popraviti na sljedeći način:
chown -R 2001:2001 /var/www/ftp/sysadmin/
Zapamtite, Uid i Gid 2001 je onaj korisnika kojeg smo kreirali, kreirali smo ga naredbom u prethodnom koraku 3
7. Da biste zaustavili uslugu, jednostavno pritisnite [Ctrl]+[C] na istom terminalu ili na drugom terminalu uradite sljedeće:
killall pure-ftpd
Sada ćemo naznačiti da će se usluga automatski pokrenuti sa sistemom kada se poslužitelj pokrene, za to modificiramo datoteku /etc/rc.local i prije zadnjeg retka koji kaže "izlaz 0" stavimo naredbu kojom započinjemo FTP usluga:
/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb
Drugim riječima, izgledalo bi ovako:
Datoteku možete urediti pomoću nano, vi ili željenog uređivača, ili ako želite, kopirajte i zalijepite ovu naredbu koja će vam olakšati rad:
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
…da da… kao što čitate, „olakšati“, to je opsežna naredba da, ali to je jednostavno zamjena teksta perl-om i bezopasan eho
8. Kada je ovo završeno, ponovo pokrenite server i vidjet ćete da je pure-ftpd servis pokrenut i spreman za rad.
Kako izbrisati korisnike?
Kao što sam već spomenuo, naredba pure-pw nam je potrebna za manipulaciju korisnicima. Da bismo izbrisali korisnika (na primjer, sysadmin), koristili bismo sljedeće:
cd /etc/pure-ftpd/
pure-pw userdel sysadmin
pure-pw mkdb
Imajte na umu da kad god napravite promjenu bilo kojem korisniku, morate regenerirati datoteku virtualne baze podataka korisnika, ona se nalazi u / etc / pure-ftpd / i generira / ažurira s pure-pw mkdb
U svakom slučaju, prijatelji, mislim da se nema puno više za dodati, pozivam vas da pročitate pomoć pure-pw, jer nam omogućava puno više od onoga što sam vam pokazao ovdje (ovo je samo kratki i gotovo osnovni vodič).
Prije godinu-dvije bio sam jedan od onih koji su sve povezivali sa OpenLDAP-om ili MySQL-om, ali kako je vrijeme prolazilo shvatio sam da toliki broj konekcija na baze podataka koji su serveri kao takvi stvaraju potrošnju koju si često ne možemo priuštiti, stoga je korištenje potpuno održive alternative kao što je korištenje baza podataka u vlastitim datotekama aplikacije, kao u ovom slučaju Pure-FTPd .pdb
Svaka sumnja ili pitanje pokušat ću pomoći koliko god mogu.
Pozdrav i ... sretno hakiranje!