Diferència entre revisions de la pàgina «ASIX/M08/UF2/P21»

De Lordwektabyte Wiki
Salta a la navegació Salta a la cerca
Línia 23: Línia 23:
 
:*Podran enviar fitxers només a un directori, però no podran veure el contingut.
 
:*Podran enviar fitxers només a un directori, però no podran veure el contingut.
 
===Procediment===
 
===Procediment===
Per a permetre només l'accés d'usuaris anònims editarem l'arxiu de configuració i buscarem la directiva <code>anonymous_enable</code> i la posarem a '''YES'''; en canvi, posarem a '''NO''' la directiva <code>local_enable</code> de manera que els usuaris del sistema no puguin accedir amb els seus comptes.
+
Per a permetre només l'accés d'usuaris anònims editarem l'arxiu de configuració i buscarem la directiva <code>anonymous_enable</code> i la posarem a <u>YES</u>; en canvi, posarem a <u>NO</u> la directiva <code>local_enable</code> de manera que els usuaris del sistema no puguin accedir amb els seus comptes.
 +
Haurem de modificar els permisos a sistema de fitxers del directori per defecte on es pujaran els fitxers, de manera que l'usuari de sistema ''ftp'' tingui permisos de lectura, escriptura i execució:
 +
<source>
 +
cd /var/ftp
 +
mkdir upload
 +
chmod 777 upload
 +
</source>
  
 
Pel que fa al segon punt, si llegim el manual de VSFTP veurem que hi ha una directiva que ens permet prohibir qualsevol acció de llistar el contingut d'un directori (ls, dir...):
 
Pel que fa al segon punt, si llegim el manual de VSFTP veurem que hi ha una directiva que ens permet prohibir qualsevol acció de llistar el contingut d'un directori (ls, dir...):

Revisió del 09:21, 21 oct 2018

Previ

Nota: Quan es parli de l'arxiu de configuració del servei, es referirà a l'arxiu /etc/vsftpd/vsftpd.conf.

Instal·lació i posada en marxa

Hi ha diverses opcions per a instal·lar un servei FTP al nostre CentOS. El que faré servir jo en aquesta pràctica serà el Very Secure FTP (VSFTP). L'instal·larem amb la comanda

yum install vsftpd -y

i l'engegarem i habilitarem l'arrencada automàtica amb

systemctl enable vsftpd
systemctl start vsftpd

Firewall

Afegirem una regla per a poder accedir des de l'exterior (màquina anfitriona per a fer proves) de la manera següent:

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

SELinux

Deshabilitarem el SELinux de manera temporal/provisional amb

setenforce 0

Exercici 1

Crear un servidor FTP:

  • Només permeti accedir als usuaris anònims.
  • Podran enviar fitxers només a un directori, però no podran veure el contingut.

Procediment

Per a permetre només l'accés d'usuaris anònims editarem l'arxiu de configuració i buscarem la directiva anonymous_enable i la posarem a YES; en canvi, posarem a NO la directiva local_enable de manera que els usuaris del sistema no puguin accedir amb els seus comptes. Haurem de modificar els permisos a sistema de fitxers del directori per defecte on es pujaran els fitxers, de manera que l'usuari de sistema ftp tingui permisos de lectura, escriptura i execució:

cd /var/ftp
mkdir upload
chmod 777 upload

Pel que fa al segon punt, si llegim el manual de VSFTP veurem que hi ha una directiva que ens permet prohibir qualsevol acció de llistar el contingut d'un directori (ls, dir...):

dirlist_enable
    If set to NO, all directory list commands will give permission denied.

    Default: YES 

Aquesta directiva no apareix a l'arxiu de configuració original, per tant, afegiré al final del fitxer el codi dirlist_enable=NO. D'aquesta manera, el mateix servei de FTP és el que prohibeix aquesta acció; sense necessitat de modificar permisos del sistema de fitxers.

Una vegada fets els canvis, no ens hem d'oblidar de reiniciar el servei per tal d'aplicar la nova configuració: systemctl restart vsftpd.

Prova

  • Només usuaris anònims:
[root@centosvsftpd ~]# ftp localhost
Trying ::1...
Connected to localhost (::1).
220 (vsFTPd 3.0.2)
Name (localhost:root): guillem
530 This FTP server is anonymous only.
Login failed.
  • Prohibit llistar el contingut:
[root@centosvsftpd ~]# ftp localhost
Trying ::1...
Connected to localhost (::1).
220 (vsFTPd 3.0.2)
Name (localhost:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
229 Entering Extended Passive Mode (|||60243|).
550 Permission denied.
ftp> dir
229 Entering Extended Passive Mode (|||36729|).
550 Permission denied.
  • Prova de pujar contingut com a anònim:

Exercici 2

Modificar el servidor FTP:

  • Els usuaris locals puguin accedir, però no pugin sortir fora del seu home.
  • Els usuari locals han de tenir més ampla de banda que el anònim.

Procediment

Exercici 3

Modificar el servidor FTP:

  • Només es puguin connectar uns quant usuaris, no tots els que estiguin donats d'alta localment.
  • Si es dona d'alta localment, no implica que tingui accés al ftp.

Procediment

Exercici 4

Modificar el servidor FTP:

  • Personalitzar el FTP amb missatges (abans de login, després de login i durant la navegació entre directoris)

Procediment