VSFTPD est un logiciel de service FTP open source largement utilisé connu pour sa sécurité. Par défaut, son format de sortie de liste suit le style UNIX, donc ftp_rawlist () fonctionne bien lors de l'analyse de ces réponses de serveur.
$conn = ftp_connect("gitbox.net");
ftp_login($conn, "user", "password");
$rawlist = ftp_rawlist($conn, ".");
print_r($rawlist);
Exemple de sortie:
Array
(
[0] => drwxr-xr-x 2 1000 1000 4096 May 20 10:30 public_html
[1] => -rw-r--r-- 1 1000 1000 1234 May 19 14:12 index.php
)
Ce format de sortie est très standard et convient à l'analyse avec des expressions régulières.
ProfTPD prend en charge une large gamme d'options de configuration et utilise également la sortie de style UNIX par défaut. Cependant, sa configuration est flexible et le format de sortie sera modifié dans certains cas (tels que ListOptions activées).
Si ListOptions "-A" est ajoutée à la configuration, FTP_RAWLIST () renvoie tous les fichiers, y compris les fichiers cachés.
Pure-FTPD prend également en charge le style UNIX, mais dans certains paramètres, il peut renvoyer une liste de formats simplifiés (comme l'omission de colonnes d'autorisation). Il est recommandé d'activer le mode "Unix Listings":
pure-config.pl --with-unix-listings
Après avoir activé, le format de valeur de retour de ftp_rawlist () est proche de vsftpd.
Filezilla Server utilise une implémentation personnalisée. Bien que la sortie de sa liste imite également le style UNIX, les colonnes d'autorisation et les informations de groupe d'utilisateurs sont souvent des espaces réservés (tels que ? ), Comme suit:
-rw-r--r-- ? ? ? 1024 May 21 09:45 log.txt
Bien que ce ne soit pas le meilleur choix dans certains scénarios d'automatisation, la structure de base reste inchangée et les champs peuvent toujours être analysés par exploit () ou réguliers.
Le serveur FTP d'IIS est par défaut pour sortir les listes de répertoires de style DOS dans les versions antérieures:
05-21-25 09:45AM <DIR> Logs
05-21-25 09:45AM 1024 report.txt
ftp_rawlist () ne peut pas analyser directement le format en tant qu'autorisations de fichiers / répertoires, utilisateur et autres informations. Il est recommandé d'éviter d'utiliser IIS FTP dans des scénarios où ftp_rawlist () , ou d'implémenter manuellement la logique d'analyse de ce format.
Type de serveur | Type de format | Est-il compatible avec ftp_rawlist |
---|---|---|
vsftpd | Unix | ? |
Proftpd | Unix | ? (La configuration affecte la sortie) |
Pur-ftpd | Unix | ? (Il est recommandé d'activer le mode Unix) |
Serveur de filezilla | Unix | ? (Certains champs sont manquants) |
IIS FTP Server | Dos | ? (Format incompatible) |