En el mercat hi ha múltiples aplicacions client i servidor per a implementar el servidor FTP. De les diverses opcions s'ha optat per l'aplicació ProFTPD (Professional FTP daemon) per a implementar en el servidor Linux. L'aplicació ProFTPD està inclosa en els paquets estàndard per a la distribució Debian, la qual cosa facilita la seva instal·lació.

Instal·lació i configuració per defecte servidor ProFTPD

Per a realitzar la instal·lació utilitzarem:

  • Sistema operatiu: Linux
  • Distribució: Debian
  • Versió: Stretch o 9

Donat que l'aplicació ProFTPD està inclosa en els repositoris estàndard , podem utilitzar el gestor de paquets "apt" per a instal·lar el daemon "ProFTPD". Hem d'assegurar-nos de tenir configurat el fitxer "/etc/apt/sources.list" amb els repositoris estàndard de Debian.

  1. Actualitzar repositoris de Linux

    apt update
  1. Instal·lació de l'aplicació

    apt install proftpd -y

Després de la instal·lació de l'aplicació ProFTPD el servei de FTP ja és funcional. Ens podem connectar al servei utilitzant un client FTP gràfic o de línia de comanda.

La configuració per defecte ens implementa un servidor que:

  1. No permet l'autentificació anònima
  2. Permet la càrrega d'arxius i la creació de carpetes en el servidor FTP. Sempre i quan s'assignin els permisos adequats.

Video: Instal·lació servei ProFTPD

Configuració servidor ProFTPD

Per a configurar el servei ProFTPD cal accedir al fitxer "/etc/proftpd/proftpd.conf" . En aquest fitxer hi consten ja una sèrie d'exemples de configuració comentats per tal que no tinguin efecte. Algunes de les opcions del servei ProFTPD es poden configurar simplement eliminant el caràcter de comentari de les directives que es desitjen activar.

A diferència d'altres serveis, com el de DHCP o DNS, per a aplicar la nova configuració no és necessari reiniciar el servei, sinó que serà suficient en tornar a carregar la configuració. Per fer-ho, utilitzarem la comanda systemctl .


    systemctl reload proftpd.service

Configuració ports passius

Per a configurar els ports que volem utilitzar per a la transmissió de les dades utilitzem la directiva PassivePorts . Aquesta directiva ens permet indicar quin rang de ports voldrem utilitzar per a la transmissió de dades.

En la imatge s'està configurant el servei FTP per tal que utilitzi el rang de ports entre 65000 i 65534 com a ports passius. Per tant, quan un client faci una connexió en mode passiu, el servidor respondrà amb un port escollit a l'atzar dins el rang de ports.

Video: Configuració servidor ProFTPD amb mode passiu

Autenticació anònima

La configuració per defecte del servidor ProFTPD ja incorpora una configuració predeterminada pels usuaris anònims. L'única cosa que cal fer, és descomentar les directives que es vulguin activar o complimentar la configuració per defecte afegint noves directives.

Confinament dels usuaris

Quan un usuari es connecta al servei FTP utilitzant un client FTP, accedeix sempre al seu directori HOME ($HOME). La configuració per defecte del servidor ProFTPD permet als usuaris a l'accés a qualsevol carpeta sobre la qual tinguin permissos de lectura. Per a no permetre que els usuaris puguin accedir a qualsevol directori diferent al que tenen assignat com a $HOME, disposem de la directiva DefaultRoot .


    DefaultRoot ~

Amb aquesta directiva els usuaris queden confinats al directori HOME que tinguin configurat.

Directiva Limit

La directiva Limit permet especificar quins són els límits del servidor FTP. El format de la directiva Limit és:


<Limit SITE_commanda | Opció >

Les opcions més importants que podem configurar amb la directiva Limit són:

  • ALL : inclou a totes les comandes excepte la de login
  • LOGIN : configurar qui pot accedir al servei FTP
  • READ : configurar l'accés per lectura
  • WRITE : configurar l'accés per escritura

Per a configurar el tipus d'accés podem utilitzar les directives:

També podem incloure comandes per a configurar quines opcions són vàlides amb els fitxers a través del servidor FTP. Una de les comandes que es poden configurar és chmod .

Per exemple, podem configurar l'accés per lectura utilitzant


<Limit READ>
    <!-- Directives de configuració -->
</Limit>

Directives configuració secció Limit

Per a configurar un determinat dret en el servidor disposem de diferents directives:

  • AllowAll
  • DenyAll
  • AllowUser usuari1[,usuari2]...
  • DenyUser usuari1[,usuari2]...

Així, per exemple, la configuració següent denega a tots els usuaris que puguin canviar els permissos d'un fitxer o un directori a través del servidor FTP.


  <Limit SITE_CHMOD>
    DenyAll
  </Limit>

Aquesta configuració permet a tots els usuaris que puguin carregar o crear directoris a través del servei FTP.


  <Limit WRITE>
    AllowAll
  </Limit>

UMASK

El paràmetre o directiva UMASK ens permet determinar quins permissos ha de tenir el fitxer quan es carregui en el servidor FTP. Per a saber els permissos del fitxer cal saber quin és el mode base. El mode base dependrà de si és un fitxer o un directori. El mode base que utilitza el servei ProFTPD és:

  • 0666 si és un fitxer
  • 0777 si és un directori

Els permisos que tindrà el fitxer o directori resulta de restar el valor associat a UMASK al mode base.

permisos = modeBase - umask (en realitat és un & entre modeBase i umask -> permisos = modeBase & umask)

Per exemple, si per un directori configurem que la seva umask és 0222 els permisos que tindran els directoris que es crein en el servidor FTP seran:

Permisos = 0777 (directori) - 0222 = 0555

results matching ""

    No results matching ""