Pourquoi ce titre? Non seulement je voulais faire l’installation de Proftpd, mais je voulais aussi tester l’accès à ce serveur FTP logé dans WSL depuis l’hôte Windows. Pourquoi est ce que c’est intéressant? hé bien WSL est un milieu isolé de l’hôte et on ne peut y accéder que grâce à une translation d’adresse IP.
Contenu
Installation de Proftpd
D’abord on fait un update de précaution et on installe, l aconfiguration devrait être minimale
sudo apt update sudo apt install proftpd
// le fichier de configuration se trouve dans /etc/proftpd/proftpd.conf
Voyons voir quelques clé de configuration:
ServerType standalone // proftpd fonctionne tout seul, il est autosuffisant
Ce bout de configuration est commenté
<Anonymous ~ftp>
User ftp
Group nogroup
UserAlias anonymous ftp
MaxClients 10
<Directory *>
<Limit WRITE>
DenyAll
</Limit>
</Directory>
</Anonymous>
Il permet de se connecter sans authentification, ce qui n'est pas recommandé à moins que vous ne sachiez ce que vous faites.
A un autre endroit (commenté également)
DefaultRoot ~ // si le tilde est collé à la lettre t c'est une erreur de syntaxe et cause le non démarrage de pProftpd
cette directive restreint les utlisateurs dans leur propre répertoire home.
RequireValidShell off // si actif permet aux utilisateur n'ayant pas de shell (nologin) d'accéder au FTP
Accès au serveur FTP depuis WSL
a présent sans configuration vous pouvez accéder via FTP à votre répertoire home avec la commande suivante:
ftp localhost il va vous être demandé le user et le mot de passe. Et ensuite en cas de réussite vous aurez un prompt ftp.
Accès depuis l’hôte Windows dans le ftp de WSL
Translation d’adresse IP
Revenons à votre hôte Windows et essayez avec fileZilla de vous connecter au FTP, normalement vous ne pouvez pas, à moins que vous ayez déjà fait le manipulation de translation d’adresse IP, c’est à dire relier l’adresse IP de l’hôte (souvent 192.168.1.XX vers l’adresse IP de WSL. Commençons par connaitre les 2 adresse IP de ‘lhôte et de WSL
Dans l’hôte, on est sous Windows
ipconfig Configuration IP de Windows Carte Ethernet Ethernet 2 : Suffixe DNS propre à la connexion. . . : lan Adresse IPv4. . . . . . . . . . . . . .: 192.168.1.151 Masque de sous-réseau. . . . . . . . . : 255.255.255.0 Passerelle par défaut. . . . . . . . . : 192.168.1.254 Carte inconnue Connexion au réseau local : Statut du média. . . . . . . . . . . . : Média déconnecté Suffixe DNS propre à la connexion. . . : Carte Ethernet vEthernet (Default Switch) : Suffixe DNS propre à la connexion. . . : Adresse IPv6 de liaison locale. . . . .: fe80::302e:b41d:9890:f78f%41 Adresse IPv4. . . . . . . . . . . . . .: 172.25.144.1 Masque de sous-réseau. . . . . . . . . : 255.255.240.0 Passerelle par défaut. . . . . . . . . : Carte Ethernet vEthernet (WSL) : Suffixe DNS propre à la connexion. . . : Adresse IPv6 de liaison locale. . . . .: fe80::94b8:a9bc:705a:2d44%55 Adresse IPv4. . . . . . . . . . . . . .: 172.18.96.1 Masque de sous-réseau. . . . . . . . . : 255.255.240.0 Passerelle par défaut. . . . . . . . . :
Dans WSL
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1404 qdisc mq state UP group default qlen 1000
link/ether 00:15:5d:d9:50:6a brd ff:ff:ff:ff:ff:ff
inet 172.18.104.160/20 brd 172.18.111.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::215:5dff:fed9:506a/64 scope link
valid_lft forever preferred_lft forever
Maintenant dans Windows nous devons faire la translation d’IP (dans une autre occasion on a pu le faire mais je remets ici la commande à faire sous Powershell
netsh interface portproxy add v4tov4 listenport=21 listenaddress=127.0.0.1 connectport=21 connectaddress=172.18.104.160
Protocole FTP
Si vous voulez en savoir plus sur les verbes FTP qui permettent de télécharger des fichiers et autres manipulation, visitez le lien ci-dessous :