En aquesta pràctica instal·lem i configurem un client i un servidor FTP per la transferència d’arxius remotament. El client en Windows i el servidor en Ubuntu.

El client FTP es una aplicació que es connecta amb un servidor FTP per la transferència d’arxius.
FTP File Transfer Protocol, es el protocol per compartir arxius entre client i servidor. Les dades necessàries per establir la connexió son l’adreça del servidor, el usuari i la contrasenya.
FileZilla es un dels clients FTP mes populars de codi obert i disponible per Windows, Mac i Linux.
En aquesta practica instal·lem i configurem FileZilla com a a client FTP en un entorn Windows.
El client FileZilla necessita per la connexió FTP amb un servidor FTP. El programari FileZille Server es pot instal·lar en Windows però no en Linux. Per servidors Linux, FileZilla no disposa de programari, existeix el servidor FTP svFTPd, que es el que nosaltres fem servir en el nostre servidor FTP.

Filezilla serveix per pujar, descarregar arxius al servidor. També permet fer les tasques de re-nombrar, moure, copiar, esborrar arxius del servidor. Connectar-se amb el hosting de la pagina WEB per mantenir-la actualitzada.
La pagina oficial de descarrega es:
https://filezilla-project.org/download.php?type=client
La instal·lació es senzilla, es acceptar la política de privacitat i següent unes quantes vegades. Les opcions predeterminades son els components a instal·lar per la majoria de usuaris.
Per connectar amb el servidor FTP, primer de tot es te que gestionar la connexió amb el servidor. Es pot escriure les dades directament en la barra d’eines, però e millor fer-ho en el gestor de llocs. Es el primer boto de l’esquerra, la connexió queda guardada per altres futures connexions.
Clic en el boto gestor de llocs, després en nou lloc, posem el nom de la connexió amb el nostre servidor FTP, l’adreça del servidor, el nom del usuari i la contrasenya.
Clic en connectar, en el diàleg següent pregunta si volem que Filezilla guardi les contrasenyes, diem que si.
Un altre avis que pot sortir es que el certificat no es compatible, acceptem i entrem en el servidor FTP.
Una vegada configurat els certificats TTL en el servidor, el diàleg abans de la connexió amb el servidor FTP, es com el que segueix:
Al connectar, tenim en una finestra dividida per una part el client Windows i per l’altre el servidor Linux. Podem explorar en el arbre directoris tan en un costat com en el altre.
Per pujar arxius i carpetes del client local al servidor remot, nomes tenim que arrestar de l’esquerra a la dreta des dades que volem pujar.
Per descarregar arxius, carpetes, el procés es invers al de pujada, arrastrem de dreta a esquerra.
Si el usuari te permisos suficients en el servidor, pot re-nombrar, esborrar, copiar, moure arxius i carpetes. També es pot canviar els permisos de un arxiu o carpeta, clic en el boto dret sobre el arxiu o carpeta i en atributs del arxiu, canviar els permisos.

En aquesta practica instal·lem i configurem un servidor FTP en el sistema operatiu Ubuntu 20.04. Concretament el servidor FTP vsFTPd. Filezilla server només està disponible per Windows.
Per la transmissió de dades client-servidor amb el protocol FTP, fems servir com a client Filezilla i com a servidor vsFTPd.

Instal·lem el servidor vsFTPd des de els repositoris de la distribució. Primer de tot actualitzem la informació dels repositoris.
sudo apt update
Instalem el paquet vsFTPd.
sudo apt install -y vsftpd
Després de la descarrega i la instal·lació es crea un nu servei vsftpd. Per comprovar el estat de aquest nou servei:
systemctl status vsftpd

Permetre el accés als port estandar del servei FTP.
sudo ufw allow ftp

Permetre el port de dades per el mode actiu.
sudo ufw allow ftp-data
En el navegador escrivim:
fttp://ip-del-servidor

Si tot va bé es mostra el diàleg d’autentificació.
El arxiu principal de configuració del servei es: /etc/vsftpd.conf
La configuració per defecte del servidor vsFTPd fa servir el mode actiu. Els clients que es connectin amb el servidor des de la consola de amb una maquina Debian sense firewall es podran connectar, però si el client disposa de firewall, no es podrà connectar. Això es degut a que el firewall del client impedeix la obertura de ports de connexió.

Si el client es Windows passa el mateix, tan si volem accedir des de la consola com del navegador.
El problema es que el client FTP intenta accedir en mode passiu per defecte i actualment només es possible en mode actiu.
Per configurar el mode pasiu del servidor FTP, editem el arxiu: vsftpd.conf
sudo gedit /etc/vsftpd.conf
Afegim 3 linies al final del arxiu:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30050

Es pot escollir el rang se ports que vulguem.
Recarreguem la configuració del servidor FTTP.
sudo systemctl reload vsftpd
El firewall UFW te que permetre el rang se ports.
sudo ufw allow 30000:30050/tcp

Ara si volem connectar com a client des de la consola amb firewall, tenim que activar el mode passiu, amb el comando passive.

Si connectem amb el navegador, entrem en mode passiu, perfectament.

Serveix en el cas de voler tenir un sistema de distribució de arxius per tothom i que els clients es puguin connectar anònimament.
El servidor FTP pot treballar simultàniament amb accés anònim i accés de usuaris del sistema.
Configurem el arxiu: /etc/vsftpd.conf
sudo gedit /etc/vsftpd.conf
Busquem la directiva anonymous_enable=NO i cambiem a SI. Afegim una nova línia: no_anon_password=YES

Recarreguem la configuració del servidor FTTP.
sudo systemctl reload vsftpd
El directori que es mostra als usuaris es: /srv/ftp. En aquest directori es on posem el contingut que volem distribuir anònimament.
Escrivim en el navegador: ftp://192.168.1.2
Nomes mostra el contingut que nosaltres volem mostrar.
Per defecte el servidor FTP treballa amb els usuaris del sistema.
Perquè els usuaris locals puguin escriure en els seus directoris, des comentar la línia: write_enable=YES
Es important que les connexions client-servidor siguin xifrades. S’utilitza una clau RSA i un certificat. Per defecte el servidor vsFTPd fa referencia al certificat que inclou Ubuntu en el paquet ssl-cert. Aquest certificat està pensat per entrar en el servidor amb el nom de la maquina, si volem entrar amb el nom del domini, pot mostrar un missatge de advertència.

Com alternativa a aquest missatge podem instal·lar certificats firmats per domini.
Crear certificats auto-firmats amb el comando openssl.
sudo openssl req -x509 -newkey rsa:2048 -days 3650 -nodes -out /etc/ssl/certs/ubuntu2004.local.lan.crt -keyout /etc/ssl/private/192.168.1.2.key
Posem les dades que ens demanen la ubicació, el nom, la empresa, i el mail.
Editem el fitxer: vsfpd.conf
Canviem la línia: ssl_enable=NO a SI
sudo gedit /etc/vsftpd.conf
Guardem els canvis i reiniciem el servidor FTP.
sudo systemctl restart vsftpd
Tarda una mica en reiniciar.
Si tornem a connectar amb el servidor FTP, fem servir FileZilla com a client des de Windows.
El servidor FTP en la adreça 192.168.1.2, disposa de certificat.
El mar.
Havaneres.
Lloret antic.
Lloret avui.
De cala Morisca a Sa Carabera.
De Sa Carabera a Treumal.
Lloret en kayak.
Vígilancia remota.
Caixa-tpv.
Cambrer-app.
Client webApp.
Relats del banc del si no fos
Històries d'ahir
Vídeos antics de Lloret
El caiac
Contes de l'avi.
Control d’accés amb contrasenya.
Orgue de llums.
Comparativa de editors Arduino.
Projecte bon Nadal.
Control de la qualitat del aire interior (CO2) amb semàfor LED.
NodeMCU-ThingSpeak
ThingSpeak.
NodeMCU com AccessPoint.
Control de la llum de casa per web.
Control de un led per el mòbil.
Sistema de fitxers en ESP8266.
Altura del nivell d'aigua.
Avis d’alarma a Telegram.
Control de la intensitat de llum de un LED per Internet.
Magatzematge de temperatura i humitat en Thinger.
Publicar temperatura i humitat en Google Sheets.
ESP8266 i Firebase.
La bàscula. ESP8266 NodeMCU amb cèl·lula de càrrega.
ESP32-CAM
ESP32-CAM captura fotos per ser vistes en la WEB.
Pujar fotos a un servidor FTP amb ESP32-CAM.
MicroPython en ESP8266.
Visual Estudio Code per Arduino.
Classificador d’imatges.
Instal·lar i configurar Apache en Ubuntu.
Accés a un servidor Linux remotament.
Client i Servidor FTP.
Màquina virtual UBUNTU.
WindowsXP en Virtualbox.
Multisim, simulador de circuits electrònics.
Proteus, simulador de circuits electrònics.
MySQL. Instal·lació.
MySQL. Aplicacions.
Netbeans Maven MySQL.
Java+Netbeans+Maven+EclipseLink+Mysql
Aplicació d’escriptori JavaFX
App JavaFX amb SceneBuilder
App Java-Swing
The Jolson Story: Anniversary Song (Arr. S. Chaplin) Al Jolson Oh, com ballàvem la nit que ens casaven Oh, how we danced on the night we were wed Vam jurar el nostre veritable amor, tot i que no es va dir una paraula We vowed our true love, though a word wasn't said El món estava florit, hi havia estrelles al cel The world was in bloom, there were stars in the skies Llevat dels pocs que hi havia als teus ulls Except for the few that were there in your eyes Benvolgut, mentre et tenia tancat entre els meus braços Dear, as I held you close in my arms Els àngels cantaven un himne als vostres encants Angels were singing a hymn to your charms Dos cors bategant suaument, murmurant baix Two hearts gently beating, murmuring low "Estimat, t'estimo tant" "Darling, I love you so" La nit semblava que s’esvaí fins a l’alba florida The night seemed to fade into blossoming dawn El sol va tornar a brillar però el ball va perdurar The sun shone anew but the dance lingered on Només podríem recordar aquell dolç moment sublim Could we but recall that sweet moment sublime Trobaríem que el nostre amor és inalterable pel temps We'd find that our love is unaltered by time Querida, t'estimo molt Darling, I love you so La nit semblava que s’esvaí fins a l’alba florida The night seemed to fade into blossoming dawn El sol va tornar a brillar però el ball va perdurar The sun shone anew but the dance lingered on Només podríem recordar aquell dolç moment sublim Could we but recall that sweet moment sublime Trobaríem que el nostre amor és inalterable pel temps We'd find that our love is unaltered by time Font: LyricFind Compositors: Saul Chaplin / Al Jolson Lletra de The Jolson Story: Anniversary Song (Arr. S. Chaplin) © Reservoir Media Management Inc
Strava







Noves tecnologies WEB Arduino Domótica MycroPython NodeMCU IoT Java ESP8266 Lora C++ Programació Server-Client