Despre Linux

  • Acasă
  • Linux
    • Comenzi Linux
    • Tutoriale
  • RHCSA
    • Exerciții RHCSA
    • SELinux
    • Permisiuni
  • General
    • Open source
  • Contact

Configurarea unui server FTP minimal în Arch Linux

6 ianuarie 2018 By Bobses Un comentariu

Toți am accesat, de-a lungul timpului, servere FTP. Dar uneori avem nevoie să le și configurăm, pentru a pune la dispoziția utilizatorilor diverse fișiere. Una din cele mai simple implementări pentru server FTP în Linux este vsftpd (Very Secure FTP Daemon).

Demonstrația de mai jos am făcut-o pe Arch Linux, dar merge la fel de bine și în CentOS sau Ubuntu: în fond, Linux rămâne Linux, indiferent cu ce haine e îmbrăcat.

Instalare

În Arch Linux, instalarea se face simplu:

sudo pacman -S vsftpd

În CentOS:

sudo yum install vsftpd

În Ubuntu

sudo apt-get install vsftpd

Indiferent de distribuție, trebuie pornit și activat serviciul vsftpd:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

sau același lucru într-o singură comandă :

sudo systemctl enable --now vsftpd 

Pentru a vă convinge că noul server FTP funcționează, puteți accesa în browser una din adresele: ftp://127.0.0.1, ftp://hostname-ul_sistemului_vostru sau ftp://adresa_IP_interna:

În Arch Linux, serverul este instalat în /srv/ftp, iar în CentOS în /var/ftp:

Configurare

Fișierul de configurare al noului server FTP instalat se găsește, pentru Arch Linux și Ubuntu, în /etc/vsftpd.conf, iar pentru CentOS 7 în /etc/vsftpd/vsftpd.conf.

În funcție de firewall-ul folosit, trebuie să permiteți accesul la porturile folosite de serviciul FTP: 20, 21.

Nu voi insista prea mult pe fișierul de configurare: e destul de bine explicat de comentariile din interior. Voi menționa doar câteva setări obligatorii:

  • flagul WRITE_ENABLE trebuie setat pe YES pentru a permite uploadul:

write_enable=YES

  • pentru a permite userilor din /etc/passwd să se conecteze:

local_enables=YES

  • permiterea conectării utilizatorului anonim:

anonymous_enable=YES

  • chroot jail: împiedicarea unui utilizator de părăsire a directorului propriu și accesare a directoarelor altor utilizatori - trebuie adăugate următoarele linii în fișierul /etc/vsftpd.conf:

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

  • pentru o restricționare mai mare, trebuie specificată și linia:

chroot_local_user=YES

Utilizarea SSl/TLS pentru securizarea serverului FTP

În primul rând avem nevoie de un certificat X.509 SSL/TLS. Dacă nu avem unul, putem folosi un certificat self signed care se generează cu ușurință de noi:

# cd /etc/ssl/certs
# openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout vsftpd.pem -out vsftpd.pem
# chmod 600 vsftpd.pem

În fișierul /etc/vsftpd.conf vom face următoarele modificări:

ssl_enable=YES
force_local_logins_ssl=NO
force_local_data_ssl=NO
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=YES
rsa_cert_file=/etc/ssl/certs/vsftpd.pem --» calea corectă către certificatul SSL
rsa_private_key_file=/etc/ssl/certs/vsftpd.pem --» calea corectă către certificatul SSL

Rezolvarea hostname-ului în modul pasiv:

Pentru a suprascrie adresa IP de către hostname-ul serverului și a avea DNS-ul rezolvat la startup, vom adăuga următoarele 2 linii în fișierul /etc/vsftpd.conf

pasv_addr_resolve=YES
pasv_address=yourdomain.org

Pentru a testa conectarea cu SSL, faceți o noua conexiune în Filezilla și, la prima conectare, o să vă apară o fereastră care vă afișează certificatul - trebuie să acceptați acest certificat:


Acest scurt tutorial nu este nici pe departe complet - este doar un început pentru configurarea unui server FTP minimal. Bineînțeles, pe parcurs pot apărea tot felul de probleme, în funcție de distribuție, configurări, etc. - toate aceste neajunsuri se pot rezolva apelând cu încredere la Google, căci în mod sigur nu suntem nici primii și nici ultimii care se lovesc de acele probleme.

Partajează asta:

  • Dă clic pentru a partaja pe Facebook(Se deschide în fereastră nouă)
  • Dă clic pentru a partaja pe LinkedIn(Se deschide în fereastră nouă)
  • Dă clic pentru a partaja pe Twitter(Se deschide în fereastră nouă)

Similare

Din categoria: Tutoriale Etichete: certificat SSL, FTP, server FTP, SSL

Trackbacks

  1. Despre Linux – Virtualizare KVM: automatizarea instalării mașinilor virtuale CentOS spune:
    24 ianuarie 2018 la 19:43

    […] fișier pe un server ftp cu acces public – de aceea am explicat într-un articol anterior cum se creează în câțiva pași un server ftp minimal; fișierul va putea fi accesat la o adresă de forma […]

    Răspunde

Lasă un răspuns Anulează răspunsul

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Copyright © 2021 · Bobses