vsftpd

Linux.fista
Siirry navigaatioon Siirry hakuun
Tulostettavaa versiota ei enää tueta ja siinä voi olla renderöintivirheitä. Päivitä selaimesi kirjanmerkit ja käytä selaimen tavallista tulostustoimintoa sen sijaan.


vsftpd
Käyttöliittymä taustapalvelu
Lisenssi GPLv2
Kotisivu security.appspot.com/vsftpd.html

vsftpd (Very Secure FTP Daemon) on FTP-taustapalvelu.

Asennus

vsftpd löytyy useimpien jakeluiden paketinhallinnasta nimellä vsftpd. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

Asetukset

Komennot, jotka alkavat $-merkillä suoritetaan tavallisena käyttäjänä ja komennot, jotka alkavat #-merkillä suoritetaan pääkäyttäjänä. Katso myös su, sudo ja doas.

Ohjelman asetustiedoston sijainti riippuu hieman jakelusta.
CentOS

/etc/vsftpd/vsftpd.conf

Debian

/etc/vsftpd.conf

Asetusten kommentoiminen ulos ei välttämättä auta, sillä vsftpd saattaa tuolloin käyttää oletusasetuksia. Asetusten muuttamisen jälkeen vsftpd tulee myös aina käynnistää uudelleen, jotta asetukset tulevat voimaan.

# service vsftpd restart 

Anonyymi FTP-tunnus voidaan ottaa pois käytöstä muuttamalla anonymous_enable asetusta

anonymous_enable=NO

Kun käyttäjä yhdistää FTP-palvelimelle, voi käyttäjä liikkua koko järjestelmässä mikäli tiedostot ja hakemistot ovat luettavissa. Tämä ei ole suotavaa, sillä kuka tahansa käyttäjä voi tuolloin lukea ja ladata tiedostoja esimerkiksi /etc, /var tai /usr hakemistoista. Käyttäjien oikeudet voidaan rajata heidän omiin kotihakemistoihinsa muuttamalla chroot_local_user-asetusta.

chroot_local_user=YES

FTP on suunniteltu selväkieliseksi protokollaksi, mikä tarkoittaa sitä että tiedot kulkevat salaamattomina asiakkaan ja palvelimen välillä. Yhteys voidaan kuitenkin salata SSL/TLS-protokollalla. Ensin luodaan sertifikaatti ja salainen avain.

# openssl req -x509 -days 365 -newkey rsa:2048 -nodes -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem

Tämän jälkeen tulee asetustiedostoon lisätä seuraavat muutokset:

# Otetaan TLS/SSL käyttöön
ssl_enable=YES

# Pakotetaan asiakasohjelma käyttämään TLS-salausta sisäänkirjautuessa
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH

# Määritellään SSL-sertifikaatti ja salainen avain
rsa_cert_file=/etc/vsftpd/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/vsftpd.pem

# Määritellään portit passiivisille yhteyksille
pasv_max_port=65535
pasv_min_port=64000

vsftpd tarjoaa useita tapoja yhteyksien ja kaistan hallintaan.

# Anonyymien yhteyksien nopeus voidaan rajoittaa esimerkiksi 50KB/s
anon_max_rate=50000

# Käyttäjien yhteyksien nopeus voidaan rajoittaa esimerkiksi 100KB/s
local_max_rate=100000

# Yhteys katkaistaan 300 sekunnin toimettomuuden jälkeen
idle_session_timeout=300

# Maksimi yhteyksien määrä yhdestä IP-osoitteesta auttaa torjumaan muun muassa palvelunestohyökkäyksiä.
max_per_ip=50

Lokitus kannattaa myös ottaa käyttöön.

xferlog_enable=YES
xferlog_std_format=NO
xferlog_file=/var/log/vsftpd.log 
log_ftp_protocol=YES
debug_ssl=YES