Tout simplement File Transfert Protocol (Protocole de transfert de fichiers).
Dans la liste des processus écoutant sur un port TCP on s'aperçoit que le port 21 est géré par le processus inetd. Il s'agit du super-démon d'Unix qui permet d'éviter de lancer tous les démons dès le démarrage d'un système Unix et ainsi d'éviter de gaspiller des ressources (slots dans la table des processus, descripteurs de fichiers, etc). Dès qu'un client FTP se connecte la gestion de ce client est transférée au processus proftpd comme le montre la liste des connexions TCP établies.
On remarque dans le répertoire rc2.d un lien de nom S20inetd qui, vu le suffixe, est utilisé pour lancer le processus inetd dans le niveau d'exécution 2. D'après les conventions de nommage utilisées le nom du fichier pointé par ce lien est /etc/init.d/inetd.
Voici un exemple d'une version simplifiée du script /etc/init.d/inetd :#!/bin/sh case "$1" in start) inetd ;; stop) killall inetd ;; esac
Le périphérique correspondant au répertoire /home/ftp est /dev/mapper/ftp. Ce type de fichier spécial est caractéristique (sous Linux) d'un "Logical Volume" créé grâce au système LVM "Logical Volume Management". Au vu des disques présents sur la machine ce LV ne peut être construit qu'au dessus d'un VG "Volume Group" constitué des deux disques SCSI /dev/sda et /dev/sdb (toutes les partitions du disque IDE /dev/hda étant déjà utilisées).
On constate que le système de fichier /home/ftp occupe près de 700Go, les deux disque affichant une taille de 360Go chacun, il est probable que le LV s'étale sur la totalité des deux disques. Dans ce cas les commandes pour créer le système de fichiers sont :# pvcreate /dev/sda /dev/sdb # vgcreate mapper /dev/sda /dev/sdb # lvcreate lvcreate -L700G -nftp mapper # mkfs -t reiserfs /dev/mapper/ftp
Dans la liste des connexions TCP actives on trouve l'adresse IPv4 locale : 172.26.17.140 et l'adresse IPv6 locale : 2001:660:4401:6004:210:b5ff:fe07:3490
On constate sur la liste des serveurs TCP en écoute qu'un serveur écoute sur le port 21. De plus on trouve dans la liste des connexions TCP actives un processus proftpd gérant une connexion sur le même port 21. Ceci est suffisant pour intuiter que le serveur FTP de cette machine écoute sur le port 21.
Dans la même liste des connexions TCP actives on trouve une autre connexion gérée par proftpd qui utilise le port 20. Comme ce port est un port privilégié (utilisable seulement par des processus avec les droits du super-utilisateur) et qu'en plus son nom est ftp-data il y a fort à parier qu'il s'agisse du port utilisé par le serveur FTP pour envoyer ses données.
Il suffit en fait d'interdire aux paquets destinés à la machine locale (donc aux paquets arrivant sur la chaîne INPUT) de pouvoir atteindre le port 21 s'ils sont en provenance du réseau incriminé. Une solution est d'utiliser la commande :iptables -A INPUT -j DROP -p tcp -s 193.238.151.0/24 --dest-port 21
Il faut que le serveur public fasse une redirection de l'un de ses ports vers le port 21 de la machine serveur FTP. La ligne correspondant à la redirection (de port et d'adresse IPv4 en fait) est :DNAT tcp -- anywhere artois.escaut.net tcp dpt:2100 to:172.26.17.140:21Le port de serveur public redirigé est 2100, la commande à utiliser sera donc :ftp artois.escaut.net 2100
La machine possédant une adresse IPv6 routée : 2001:660:4401:6004:210:b5ff:fe07:3490, on peut accéder au serveur FTP par un client FTP IPv6 sans l'aide d'un quelconque proxy. Il faut tout de même que la machine du client FTP soit configurée en IPv6 et que le client et le serveur soient reliés par une réseau IPv6 (natif ou implanté par des tunnels au dessus d'IPv4). Cela dit la liste des serveurs TCP en écoute montre que le serveur FTP n'écoute pas sur un port IPv6. Il faudra donc configurer le serveur FTP pour écouter sur IPv4 et IPv6.