Ok, diciamo che sono responsabile della vecchia applicazione di cui non conosco veramente i dettagli, sto cercando di proteggere la mia server e qualcuno ha suggerito di proibire la porta 21 utilizzata per FTP.
Ma non sono sicuro di quali programmi siano in esecuzione e utilizzino FTP quotidianamente.
Diciamo che non ho la soluzione per installare gli strumenti che desidero sul server o sulla Rete. Quali sono le mie soluzioni?
- Devo tagliare la porta 21 e vedere quali sono i trasferimenti bloccato dal firewall?
- Cè un punto sul server AIX dove dovrei andare a cercare lelenco dei server a cui si accede e che accedono tramite questa porta? Se ho lIP dei server e i nomi dei file, sarò in grado di monitorare il programma mentre lo fa. Quindi esiste un file di registro per FTP?
Modifica:
a) inetd
è attivo e ftp
è al suo interno (grazie @JeffSchal ler)
b) Sto cercando di sapere in arrivo e traffico in uscita su questa porta, con i comandi eseguiti (se possibile). In altre parole, il mio obiettivo è sapere
- Quali comandi sono stati eseguiti sul server FTP locale
- Quali comandi sono stati eseguiti dal client FTP locale su altri server
Qualsiasi suggerimento è benvenuto.
Commenti
- Se non ' Non so quali sistemi stanno utilizzando quali servizi sul tuo server hai davvero un grosso problema.
- Quale programma server FTP stai usando?
- È in esecuzione da inetd o standalone ?
- Fammi riformulare la verità che @roaima ha scritto sopra: se sei un amministratore di AIX e non ' sai chi / cosa usa il tuo server, lo sei in grossi guai.
- Ok ragazzi, lasciate che ' dica che lamministratore è in vacanza e voglio preparare qualcosa per avere una discussione pertinente con lui quando torna.
Rispondi
Quali comandi sono stati eseguiti sul server FTP locale ver?
Per abilitare la registrazione FTP su un sistema AIX, devi riconfigurare FTP (chiamato da inetd nel tuo caso) per inviare i log di debug a syslog e per configurare syslog per salvare quei log in un file.
-
Modifica
/etc/inetd.conf
e aggiungi-d
alla fine della riga ftpd:ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -d
-
Aggiorna inetd:
refresh -s inetd
-
Modifica
/etc/syslog.conf
e aggiungi una riga perdaemon.debug
per salvare i log da qualche parte :daemon.debug /var/log/ftp.log
-
Crea un file in cui scrivere syslog:
touch /var/log/ftp.log
-
Aggiorna syslogd:
refresh -s syslogd
Syslog invierà i log di qualsiasi demone a questo file, quindi vorrai filtrarlo con grep
, forse: grep "daemon:debug ftpd" /var/log/ftp.log
.
Comandi che sono stati inviati tramite FTP verranno registrati con la stringa command:
; qui “un esempio:
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.
Sì, quelle Control-M” appaiono come tali nei log!
Quali comandi sono stati eseguiti dal client FTP locale su altri server?
Poiché le applicazioni potrebbero eseguire le proprie Azioni FTP, “sarebbe difficile racchiudere ogni possibile programma client (come /usr/bin/ftp
) per catturarlo. La soluzione migliore è configurare il server FTP remoto per registrare i comandi, basta come abbiamo fatto sopra. La seconda soluzione migliore sarebbe configurare il firewall AIX per consentire e registrare il traffico destinato alla porta 21.
Assicurati di aver installato il set di file ipsec:
lslpp -L bos.net.ipsec.rte; echo $?
Dovrebbe mostrare un set di file elencato con un codice di ritorno 0 e non:
lslpp: 0504-132 Fileset bos.net.ipsec.rte not installed.
Assicurati che i dispositivi ipsec sono abilitati:
lsdev -l ipsec_v4
Dovresti tornare indietro di una riga dicendo “Disponibile”, non “Definito” o nessuna riga indietro.
Se non cera output oppure il dispositivo era “Definito”:
- esegui
smitty ipsec4
- scegli
Start/Stop IP Security
, - scegli
Start IP Security
, - lascia le impostazioni predefinite su
Now and After Reboot
eDeny All Non_Secure = no
- premi Invio.
Il dispositivo ipsec_v4 dovrebbe ora essere visualizzato come “Disponibile”.
Crea un file di registrazione con: touch /var/log/ipsec.log
.
Aggiorna syslog:
echo "local4.debug /var/log/ipsec.log rotate size 100k files 4" >> /etc/syslog.conf refresh -s syslogd
Aggiungi una regola per consentire e registrare il traffico destinato alla porta 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”
Avvia registrazione:
mkfilt -g start
Attiva la serie di regole:
mkfilt -u
Attendi che si verifichino connessioni FTP in uscita, quindi:
grep ipsec_logd /var/log/ipsec.log | grep DP:21
Vedrai gli IP di origine e di destinazione per le connessioni FTP in uscita insieme al timestamp, come:
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
Non registra il contenuto (comandi) della sessione FTP, ma tu ” hanno timestamp e destinazioni. Tieni presente che ogni pacchetto di ciascuna connessione FTP viene registrato!
Riferimenti: