Vsftp server

From EIK wiki
(Redirected from FTP server)

FTP serveri paigaldamine ja seadistamine (vsftpd)

Uuendame antud juhendit ja paigaldame Ubuntu serverile 12.04 vsftp serveri teenuse.

Seadistame vsftp serveri nii, et kõik ühenduse logid pannakse kirja /var/log/vsftpd.log faili. Sisse on lubatud logida ainult neil kasutajatel, kes omavad süsteemis kontot. Sisselogimisel suunatakse kõik kasutajad ühte kausta, kus neil on kirjutamise ja lugemise õigused. (Kasutajatel on väljapoole suunatud kasuta liikumine keelatud.) Teatud kasutajate sisselogimine ftpsse on keelatud, samas süsteemikontot lukku ei panda.

Kõiki toiminguid tehakse root kasutaja õigustes.

Root kasutaja õigused saame järgmiselt:

sudo -i

Mis on Vsftpd?

Vsftpd (ingl.k Very Secure FTP Daemon) ilmselt kõige turvalisem ja kiirem FTP server UNIXI laadsetes süsteemides.

Vsftpd toetab IPv6 ja SSL'i. Kõige uuem vsftpd versioon on v3.0.2.


Paigaldamine

Kõigepalt paigaldame vajalikud komponendid, milleks antud juhul on vsftp serveri tarkvara.[1]

apt-get install vsftpd

Seadistamine

Seadistame vsftp serveri.

Seadistuse muutmiseks kasutame programmi nano:

nano /etc/vsftpd.conf

Ligipääsu seadistamine

Tuleb otsustada, kas tahetakse keelata anonüümsetele kasutajatele ligipääs FTP'le või mitte.

Keelamine:

anonymous_enable=NO

Lubamine:

anonymous_enable=Yes

Lubame kontot omavatel isikutel ftp serverisse sisse logida:

local_enable=YES

Lubame kontot omavatel isikulte ftp serveris kirjutamise:

write_enable=YES


Näide kodukataloogi asukoha muutmise kohta:

sudo mkdir -p /srv/files/ftp
sudo usermod -d /srv/files/ftp ftp

Logide seadistamine

Hiljem on hea näha, mis on meie serveris toimunud.

Kontrollime ja muuudame ning lisame vajalikud kirjed

# logimine allala ja ülesselaadimitstele:
xferlog_enable=YES

# teekonna ja failinimi kuhu logi hakatakse salvestama:
vsftpd_log_file=/var/log/vsftpd.log

# lülitame välja ftp xferlog formaadi(kui see juba välja lülitatud ei ole):
# xferlog_std_format=YES

# kõik ftp päringud ja vastused pannakse logisse kirja:
log_ftp_protocol=YES


FTP kasutajate ja kaustade seadistamine

Vsftpd kasutajad jagunevad kolme gruppi:

1)Lokaalsed kasutajad

2)Anonüümne kasutaja

3)Virtuaalsed kasutajad

Loome ftp kautajatele oma kausta ning seadistame vajalikud õigused.

Alustame vastava grupi loomisest:

addgroup ftpuser


Lisame kasutajad loodud gruppi:

usermod -a -G ftpuser “kasutajanimi”


Loome ftp kasutajatele üldise kausta:

mkdir /var/lib/ftp


Anname kaustale grupi, grupile lugemise ja kirjutamise õiguse ning kõigile teistele jätame ainul lugemise õiguse.

chown :ftpuser /var/lib/ftp

chmod g+w /var/lib/ftp


Kõik lokaalse konto omajad suunatakse ftpsse logimisel samasse kausta (võimalik on ka igale kasutajale oma konfiguratsioon luua, aga seda me hetkel ei käsitle). Kui seda kirjet seadistuses ei määrata, siis suunatakse kasutajad oma kodukausta. ”/home/user/”

local_root=/var/lib/ftp/

Failis /etc/ftpusers on nimekiri kasutajatest kellel on keelatud meie serveri ftp kasutamine. Sinna kasutajanimesid lisades on võimalik kasutajate sisselogimist piirata.

nano /etc/ftpusers

FTP turvaliseks muutmine

[2]

/etc/vsftpd.conf failist leiab valikuid, et muuta vsftpd rohkem kindlamaks. Näiteks saab lubada kasutatajel ligipääseda vaid oma kodukaustale, kasutades käsku:

chroot_local_user=YES

Samuti saab limiteerida kindlatele kasutajale vaid ligipääsu oma kodukaustale:

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

Pärast käskude sisestamist konfiguratsioonifaili, tuleb teha fail /etc/vsftpd.chroot_list, mis sisaldaks nimekirja kasutajatest, üks kasutaja rea kohta. Seejärel teha restart vsftpd-le


restart vsftpd

Lisaks sellele, sisaldab /etc/ftpusers nimekirja kasutajatest, kellele on keelatud FTP ligipääs. "Default" kasutajateks on root, daemon, nobody, etc. Kui on soovi lisaks keelata mõnele kasutajale ligipääs FTP serverile, tuleks nad lihtsalt sinna nimekirja lisada.

FTP saab ka krüpteerida kasutades FTPS-i. FTPS konfigureerimsieks, tuleks muuta /etc/vsftpd.conf faili ja lisada lõppu järgnevad read:

ssl_enable=Yes

Samuti tuleks jälgida sertifikaadi ja "key related" sätteid.

rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Tavaliselt on need sätted seatud ssl-cert package poolt, kuid "production" keskkonnas tuleks need asendada kindla "hosti" sertifikaadi ja võtmega.

Nüüd tuleks teha vsftpd restart ning kasutajad peavad kasutama FTPSi, et saada ligi.:

sudo restart vsftpd

Tagavarakoopia

Tagavara tegemiseks tuleb teha koopiad järgmistest failidest ja kasutadest:

/etc/vsftpd.conf  - failist
/etc/ftpusers - failist
/var/lib/ftp -	 kasutast

Võimalikud varundamise vahendid on näiteks cp, tar.

Mõistik on teha ka koopia süsteemikasutaja kontodest.

Taastamisel tuleb failid/kaustad kopeerida samadesst kohtadesse tagasi, kus nad eelnevalt olid.

Viited

http://www.liberiangeek.net/2012/06/install-and-setup-ftp-server-vsftpd-in-ubuntu-12-04-precise-pangolin/

https://security.appspot.com/vsftpd.html

https://help.ubuntu.com/12.04/serverguide/ftp-server.html

Autor

Karel Niine V.1 Ubuntu server 10.04

Parandasid: Piia Ploovits, Kristian Kivimägi V.2 Ubuntu server 12.04 Kuupäev: 20.05.2013