En el següent article anem a fer una ullada a com podem instal·lar vsftpd en Ubuntu. Tant si vols crear un servidor domèstic, un servidor web, un servidor de jocs o qualsevol servidor que s'adapti al teu projecte, un FTP és la forma més senzilla de transferir dades d'un sistema a un altre. Per això anem a veure com realitzar la instal·lació i configuració bàsica d'un servidor FTP en Ubuntu.
FTP, o Protocol de transferència d'arxius, és el sistema que s'utilitza per carregar (col·locar) O descarregar (obtenir) Arxius d'un servidor. Probablement el tinguis utilitzat en algun moment sense adonar-te'n, a l'agafar arxius o carregar imatges al web.
Instal·lar un servidor FTP en Ubuntu
instal·lar vsftpd
Per a aquest exemple, vaig a instal·lar un servidor FPT en la meva xarxa local sobre un Ubuntu 20.04. Si no el tens instal·lat al teu equip, es pot instal·lar amb la comanda (Ctrl + Alt + T):
sudo apt install vsftpd
Un cop instal·lat, anem a començar per fer una còpia de l'arxiu de configuració original. Si alguna cosa surt malament, es pot restaurar la configuració predeterminada.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default
Ara anem a iniciar el servei amb la comanda:
sudo systemctl start vsftpd
Confirmem que s'està executant amb:
sudo systemctl enable vsftpd
Compte d'usuari FTP
amb això podrem utilitzar qualsevol client FTP per accedir als arxius allotjats al servidor a través d'vsftpd. A la terminal (Ctrl + Alt + T) només haurem d'utilitzar la comanda:
sudo useradd –m nombre-usuario
substitueix 'nom-usuari'Pel teu nom d'usuari previst. A continuació anem a establir una contrasenya:
sudo passwd nombre-usuario
Després ens mourem a la carpeta d'usuari recentment creada:
cd /home/nombre-usuario
L'ideal és que el FTP es restringeixi a un directori específic per motius de seguretat. Vsftpd fa servir gàbies chroot per aconseguir això. Amb chroot habilitat, un usuari local està restringit al seu directori d'inici (per defecte). Per a aquest exemple, crearem un directori FTP que actuarà com chroot, juntament amb un directori d'arxius modificables.
per començar vam crear la carpeta FTP:
sudo mkdir ftp
Establirem la propietat de la carpeta amb aquest altre comanda:
sudo chown nobody:nogroup /home/nombre-usuario/ftp
Ara eliminem els permisos d'escriptura d'aquesta carpeta:
sudo chmod a-w /home/nombre-usuario/ftp
Continuem creant directori contenidor d'arxius i li assignarem la propietat:
sudo mkdir /home/nombre-usuario/ftp/files sudo chown nombre-usuario:nombre-usuario /home/nombre-usuario/ftp/files
En aquest punt, anem a crear un arxiu de prova a la carpeta files:
echo "vsftpd archivo de ejemplo" | sudo tee /home/nombre-usuario/ftp/files/ejemplo.txt
Assegurar el servidor FTP
En aquesta pas anem a obrir els ports 20 i 21 per al trànsit FTP. Els ports 40000-50000 seran els reservats per al rang de ports passius que eventualment s'establiran a l'arxiu de configuració i el port 990 s'usarà quan s'habiliti el TLS. Executa el següent per fer-ho:
sudo ufw allow 20/tcp; sudo ufw allow 21/tcp; sudo ufw allow 990/tcp; sudo ufw allow 40000:50000/tcp
Si utilitzes un tallafocs diferent, consulta la seva documentació per obrir els ports.
Configura vsftpd
Com ens interessa que els usuaris puguin carregar arxius, anem a editar el fitxer de configuració de vsftpd:
sudo vim /etc/vsftpd.conf
Dins de l'arxiu anem a buscar les següents entrades i descomentarlas:
anonymous_enable=NO write_enable=YES local_enable=YES
Chroot_local_user tampoc es comentarà, amb això ens garantim que l'usuari connectat només accedeixi als fitxers dins de directori permès:
chroot_local_user=YES
També anem a afegir manualment alguns valors nous a la fi de l'arxiu. això permetrà que la configuració funcioni amb l'usuari actual i amb qualsevol altre usuari que s'afegeixi posteriorment:
user_sub_token=$USER local_root=/home/$USER/ftp
Reinicieu el dimoni per carregar els canvis:
sudo systemctl restart vsftpd
connexions xifrades
Utilitzarem TTL / SSL per garantir la seguretat. Hem de crear el certificat SSL i utilitzar-lo per protegir el servidor FTP. Això ho farem amb la comanda:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
el flag -dies fa que el certificat sigui vàlid per un any i hem inclòs una clau privada RSA de 2048 bits en el mateix ordre. Quan acabis de crear el certificat, obre una altra vegada el fitxer de configuració:
sudo vim /etc/vsftpd.conf
El final de l'arxiu hem de trobar dues línies que comencin amb «rsa«. Comenta les dues línies i escriu les següents:
rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem
Ara habilitarem SSL perquè només els clients que tinguin SSL habilitats puguin connectar-se. Canvia el valor de ssl_enable a YES:
ssl_enable=YES
Per a la no permetre connexions anònimes a través d'SSL, Afegeix les línies:
allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES
Configura el servidor per fer servir TLS, Afegint:
ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO
També aconseguirem que no serà necessari reutilitzar SSL, Perquè pot fer que molts clients de FTP no funcionin. A més utilitzarem suites d'encriptació d'alt xifrat, Afegint les línies:
require_ssl_reuse=NO ssl_ciphers=HIGH
Guardem l'arxiu i reiniciem el servei:
sudo systemctl restart vsftpd
Accedir des d'un client FTP
Ara ja podrem connectar-nos al nostre servidor FTP. per això podrem utilitzar una aplicació des de l'entorn gràfic o la comanda de terminal ftp. Si optes per l'entorn gràfic, et caldrà un client FTP com FileZilla. Per instal·lar pots recórrer a l'article que un company va escriure en aquest blog fa un temps.
Un cop instal·lat i iniciat Filezilla, fes clic a Arxiu / Gestor de llocs. El següent serà fer clic a "nou lloc".
Al tauler de la dreta, selecciona com protocol FTP. Si utilitzeu FTPS, selecciona TLS per xifrat. A continuació, escriu el nom d'amfitrió o l'adreça IP en Servidor i afegeix el port (21). per al manera d'accés selecciona Normal, I escriu les credencials del teu compte en Usuari i Contrasenya. Fes clic a Connecta.
Haurem de acceptem el certificat que vam crear anteriorment.
Arribats a aquest punt veurem l'arxiu d'exemple que vam crear dins de la carpeta files. Ja podem començar a utilitzar el nostre servidor FTP. Simplement arrossega i deixa anar els arxius que vulguis moure.
Usant un FTP, podrem capturar les dades sempre que els necessitem. es pot saber més sobre vsftpd i la seva configuració des de la pàgina de documentació de l'Ubuntu.
Perfecte tutorial, m'ha ajudat a configurar el meu servidor ftp en qüestió de pocs minuts.
Gran tutorial, entenedora de principi a fi. Tinc un dubte, tinc una pc amb Debian 11 Plasma, i un virtualbox amb centenars 7. En centenars he instal·lat el servidor ftpy he creat un usuari. Ara des de Debian i dolphin accedeixo sense problemes, el problema rau que no puc crear carpetes o fitxer, però des d'altres virtuals (xp, seven, linuxmint), si puc crear sense problemes, A què es deu?