Ok, disons que je suis responsable de lancienne application dont je ne connais pas vraiment les détails, Jessaye de sécuriser mon , et quelquun a suggéré dinterdire le port 21 utilisé pour FTP.
Mais je ne sais pas quels programmes sont en cours dexécution et utilisent FTP au quotidien.
Dites que je nai pas la solution pour installer les outils que je souhaite sur le serveur ou sur le réseau. Quelles sont mes solutions?
- Dois-je couper le port 21 et voir quels sont les transferts bloqué par le pare-feu?
- Y a-t-il un endroit sur le serveur AIX où je devrais aller voir la liste des serveurs accédés et accédant via ce port? Si jai ladresse IP du ou des serveurs et les noms de fichiers, je pourrai suivre le programme qui le fait. Alors existe-t-il un fichier journal pour FTP?
Modifier:
a) inetd
est actif et ftp
y est (merci @JeffSchal ler)
b) Jessaie de connaître entrant et trafic sortant sur ce port – avec les commandes qui ont été exécutées (si possible). En dautres termes, mon objectif est de savoir
- Quelles commandes ont été exécutées sur le serveur FTP local
- Quelles commandes ont été exécutées par le client FTP local vers dautres serveurs
Toute suggestion est la bienvenue.
Commentaires
- Si vous ne faites pas ' t savoir quels systèmes utilisent quels services sur votre serveur vous avez en effet un très gros problème.
- Quel programme de serveur FTP utilisez-vous?
- Sexécute-t-il depuis inetd ou en mode autonome ?
- Permettez-moi de reformuler la vérité que @roaima a écrite ci-dessus: si vous êtes un administrateur AIX et que ' ne savez pas qui / quoi utilise votre serveur, vous êtes dans un très gros problème.
- Ok les gars, laissez ' dire que ladministrateur est en vacances, et je veux préparer quelque chose pour avoir une discussion pertinente avec lui quand il revient.
Réponse
Quelles commandes ont été effectuées sur le serveur FTP local ver?
Pour activer la journalisation FTP sur un système AIX, vous devez reconfigurer FTP (appelé par inetd dans votre cas) pour envoyer les journaux de débogage à syslog et pour configurer syslog pour enregistrer ces journaux dans un fichier.
-
Modifiez
/etc/inetd.conf
et ajoutez-d
à la fin de la ligne ftpd:ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -d
-
Actualiser inetd:
refresh -s inetd
-
Modifiez
/etc/syslog.conf
et ajoutez une ligne pourdaemon.debug
pour enregistrer les journaux quelque part :daemon.debug /var/log/ftp.log
-
Créez un fichier pour syslog dans lequel écrire:
touch /var/log/ftp.log
-
Rafraîchir syslogd:
refresh -s syslogd
Syslog enverra les journaux de tout démon à ce fichier, vous « voudrez donc le filtrer avec grep
, peut-être: grep "daemon:debug ftpd" /var/log/ftp.log
.
Commandes qui ont été envoyés via FTP seront enregistrés avec la chaîne command:
; ici « un exemple:
May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: command: USER username-here^M May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: <--- 331 May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: Password required for username-here. May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: command: PASS May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: <--- 230- May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: Last login: Fri May 18 10:13:02 EDT 2018 on ftp from ftpclient.example.com May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 230 May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: User username-here logged in. May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: PORT 10,1,1,1,229,54^M May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 200 May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: PORT command successful. May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: LIST^M May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 150 May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Opening data connection for /bin/ls. May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 226 May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Transfer complete.
Oui, ces Control-M apparaissent comme tels dans les journaux!
Quelles commandes ont été exécutées par le client FTP local vers dautres serveurs?
Étant donné que les applications peuvent exécuter les leurs Actions FTP, il serait difficile d’envelopper tous les programmes clients possibles (comme /usr/bin/ftp
) pour attraper cela. Le mieux est de configurer le serveur FTP distant pour enregistrer les commandes, simplement comme nous lavons fait ci-dessus. Le deuxième mieux serait de configurer le pare-feu AIX pour autoriser et enregistrer le trafic destiné au port 21.
Assurez-vous que lensemble de fichiers ipsec est installé:
lslpp -L bos.net.ipsec.rte; echo $?
Il devrait afficher un ensemble de fichiers répertorié avec un code retour de 0, et non:
lslpp: 0504-132 Fileset bos.net.ipsec.rte not installed.
Assurez-vous que les appareils ipsec sont activés:
lsdev -l ipsec_v4
Vous devriez récupérer une ligne en disant « Disponible », pas « Défini » ou aucune ligne du tout.
Si il ny avait pas de sortie ou lappareil a été « défini »:
- run
smitty ipsec4
- choisissez
Start/Stop IP Security
, - choisissez
Start IP Security
, - laissez les valeurs par défaut à
Now and After Reboot
etDeny All Non_Secure = no
- appuyez sur Entrée.
Lipsec device_v4 devrait maintenant safficher comme « Available ».
Créez un fichier journal avec: touch /var/log/ipsec.log
.
Mettre à jour le syslog:
echo "local4.debug /var/log/ipsec.log rotate size 100k files 4" >> /etc/syslog.conf refresh -s syslogd
Ajoutez une règle pour autoriser et enregistrer le trafic destiné au port 21:
# -v 4 == IPv4 # -n 2 == add this after the first rule # -a P == permit # -O eq == destination port *equals* 21 # -P 21 == destination port 21 # -w O == outbound connections; change this to “B” to log in both directions # -c tcp == TCP protocol # -s, -m, -d, -M = source/dest IP & mask (any) # -l Y = Log it # -r L = applies only to packets destined or originated from the local host genfilt -v 4 -n 2 -a P -O eq -P 21 -w O -c tcp -s 0.0.0.0 -m 0.0.0.0 -d 0.0.0.0 -M 0.0.0.0 -l Y -r L -D “allow and log port 21 traffic”
Démarrez la journalisation:
mkfilt -g start
Activez lensemble de règles:
mkfilt -u
Attendez que les connexions FTP sortantes se produisent, puis:
grep ipsec_logd /var/log/ipsec.log | grep DP:21
Vous « verrez les adresses IP source et de destination pour les connexions FTP sortantes avec le horodatages, tels que:
May 18 11:29:40 localhost local4:info ipsec_logd: #:0 R:p O:10.1.1.1 S:10.1.1.1 D:10.2.2.2 P:tcp SP:55091 DP:21 R:l I:en0 F:n T:0 L:0
Il nenregistre pas le contenu (commandes) de la session FTP, mais vous « ll ont des horodatages et des destinations. Notez que chaque paquet de chaque connexion FTP est enregistré!
Références: