Vsftp server: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Pploovit (talk | contribs)
Okarjane (talk | contribs)
No edit summary
 
(19 intermediate revisions by 2 users not shown)
Line 2: Line 2:


Uuendame antud juhendit ja paigaldame Ubuntu serverile 12.04 vsftp serveri teenuse.  
Uuendame antud juhendit ja paigaldame Ubuntu serverile 12.04 vsftp serveri teenuse.  
Seadistame selle nii, et kõik ühenduse logid pannakse kirja /var/log/vsftpd.log faili.  
 
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.
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.)
Sisselogimisel suunatakse kõik kasutajad ühte kausta, kus neil on kirjutamise ja lugemise õigused. (Kasutajatel on väljapoole suunatud kasuta liikumine keelatud.)
Line 12: Line 13:
  sudo -i
  sudo -i


==Vsftpd==
==Mis on Vsftpd?==
Vsftpd (ingl.k Very Secure FTP Daemon) ilmselt kõige turvalisem ja kiirem FTP server UNIXI laadsetes süsteemides.
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==  
==Paigaldamine==  
Line 23: Line 28:


Seadistame vsftp serveri.
Seadistame vsftp serveri.


Seadistuse muutmiseks kasutame programmi nano:
Seadistuse muutmiseks kasutame programmi nano:
  nano /etc/vsftpd.conf
  nano /etc/vsftpd.conf


===Ligipääsu seadistamine===
==Ligipääsu seadistamine==


Kõige tähtsam muudatus, tuleb keelata anonüümsetele kasutajatele ligipääs FTP serverile.
 
Tuleb otsustada, kas tahetakse keelata anonüümsetele kasutajatele ligipääs FTP'le või mitte.
Keelamine:


  anonymous_enable=NO
  anonymous_enable=NO


Ennem lubas vsftp ka anonüümseid kasutajaid ligi.
Lubamine:
anonymous_enable=Yes


Lubame kontot omavatel isikutel ftp serverisse sisse logida:  
Lubame kontot omavatel isikutel ftp serverisse sisse logida:  
Line 44: Line 52:
  write_enable=YES
  write_enable=YES


Lõpetuseks tuleb veel keelata kasutajatele ligipääs teistele kaustadele:


  chroot_local_user=YES
 
Näide kodukataloogi asukoha muutmise kohta:
 
  sudo mkdir -p /srv/files/ftp
 
sudo usermod -d /srv/files/ftp ftp


===Logide seadistamine===
===Logide seadistamine===
Line 68: Line 80:


===FTP kasutajate ja kaustade seadistamine===
===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.
Loome ftp kautajatele oma kausta ning seadistame vajalikud õigused.
Line 76: Line 96:


Lisame kasutajad loodud gruppi:
Lisame kasutajad loodud gruppi:
  usermod -a G ftpuser “kasutajanimi”
  usermod -a -G ftpuser “kasutajanimi”




Line 83: Line 103:




Anname kaustale grupi ja kasutalegrupile lugemise ja kirjutamise õiguse ning kõigile teistele jätame ainul lugemise õiguse.
Anname kaustale grupi, grupile lugemise ja kirjutamise õiguse ning kõigile teistele jätame ainul lugemise õiguse.
   
   
  chown ftpuser /var/lib/ftp
  chown :ftpuser /var/lib/ftp
   
   
  chmod g+w /var/lib/ftp
  chmod g+w /var/lib/ftp
Line 95: Line 115:
Failis /etc/ftpusers on nimekiri kasutajatest kellel on keelatud meie serveri ftp kasutamine. Sinna kasutajanimesid lisades on võimalik kasutajate sisselogimist piirata.
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
  nano /etc/ftpusers
==FTP turvaliseks muutmine==
[https://help.ubuntu.com/12.04/serverguide/ftp-server.html]
/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==
==Tagavarakoopia==
Line 100: Line 155:
Tagavara tegemiseks tuleb teha koopiad järgmistest failidest ja kasutadest:
Tagavara tegemiseks tuleb teha koopiad järgmistest failidest ja kasutadest:


/etc/vsftpd.conf - failist
/etc/vsftpd.conf - failist


/etc/ftpusers - failist
/etc/ftpusers - failist


/var/lib/ftp - kasutast
/var/lib/ftp - kasutast


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


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


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


==Viited==
==Viited==


http://www.liberiangeek.net/2012/06/install-and-setup-ftp-server-vsftpd-in-ubuntu-12-04-precise-pangolin/
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==
==Autor==

Latest revision as of 11:06, 15 October 2013

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