4. Konfigurišite ProFTPd:
ProFTPd-ov glavni konfiguracijski fajl je /etc/proftpd/proftpd.conf. Na Debian-u, proFTPd nudi mogućnost uključivanja fajlova iz glavnog konfiguracijskog fajla. Tako ćemo mi da kreiramo fajl koji će se zvati /etc/proftpd/mysql.conf koji ćemo da uključimo iz glavnog fajla.
Prednost ovakvog metoda je u tome što ako naš novi config ne radi, mi lako možemo da stavimo komentar na njega i vratimo se na stari config.
Otvorite vaš omiljeni tekstualni editor, editujte /etc/proftpd/mysql.conf i stavite sledeći tekst u njega:
# Prisiljava upotrebu mysql backend-a
SQLBackend mysql
# Lozinke u MySQL-u koriste sopstvene PASSWORD funkcije
SQLAuthTypes Backend
SQLAuthenticate users* groups*
# detalji za konektovanje na mysql db
# dbname@host dbuser dbpass
SQLConnectInfo proftpddb@localhost proftpduser proftpdpassword
# Omogućite proFTPd-u da zna imena kolona u tabeli korisnika
# Ovo treba da se poklapa sa imenom u vašoj tabeli
SQLUserInfo ftpuser userid passwd uid gid homedir shell
# Omogućite proFTPd-u da zna imena kolona u tabeli grupe
# mi želimo da on stupa u interakciju sa njom. I ovde imena treba da se poklapaju sa onima u db
SQLGroupInfo ftpgroup groupname gid members
# proftpd će dinamički da kreira homedir ako on još ne postoji
SQLHomedirOnDemand on
# ažurirajte brojač kada se korisnik uloguje
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1,
accessed=now() WHERE userid='%u'" ftpuser
# promenite vreme modifikovanja svaki put kada korisnik izbriše fajl ili ga aplouduje
SQLLog STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser
Hajde sada da modifikujemo proftpd.conf i dodamo sledeće linije odmah nakon Include /etc/proftpd/modules.conf:
Include /etc/proftpd/mysql.conf
RootLogin off
RequireValidShell off
Include će uključiti naš prilagođeni fajl, RootLogin je podešen na off kako bi zabranio root-u da koristi ftp servis i konačno RequireValidShell je podešen na off kako bi omogućio našem virtuelnom korisniku da se uloguje. Zapamtite da je shell našeg ftp korisnika /bin/false.
Sada restartujte proftpd:
# /etc/init.d/proftpd restart
To je to, vi sada možete da se konektujete na vaš ftp server koristeći korisnika firstuser.
5. Savet
Ako dobijete sledeće poruku o grešci:
May 22 21:37:10 mydomain.com proftpd[9308] mydomain.com (WW.XX.YY.ZZ[WW.XX.YY.ZZ]): USER firstuser (Login failed): Invalid shell: '/sbin/nologin'
To se desilo najverovatnije zato što ste zaboravili da podesite RequireValidShell na off.
© Sva prava pridržana, Kompjuter biblioteka, Beograd, Obalskih radnika 4a, Telefon: +381 11 252 0 272 |
||