Ok, sagen wir, ich bin für alte Anwendungen verantwortlich, deren Details ich nicht wirklich kenne. Ich versuche, meine zu sichern Server und jemand schlug vor, den für FTP verwendeten 21-Port zu verbieten.
Ich bin mir jedoch nicht sicher, welche Programme ausgeführt werden und FTP täglich verwenden.
Angenommen, ich habe nicht die Lösung, um die gewünschten Tools auf dem Server oder im Netzwerk zu installieren. Was sind meine Lösungen?
- Soll ich den 21-Port abschneiden und sehen, was Übertragungen sind Von der Firewall blockiert?
- Gibt es einen Ort auf dem AIX-Server, an dem ich nachsehen sollte, um die Liste der Server anzuzeigen, auf die über diesen Port zugegriffen wird und auf die zugegriffen wird? Wenn ich die IP des Servers (der Server) habe und die Dateinamen, ich werde in der Lage sein, das Programm zu verfolgen, das es tut. Gibt es also eine Protokolldatei für FTP?
Bearbeiten:
a) inetd
ist aktiv und ftp
ist darin (danke @JeffSchal ler)
b) Ich versuche eingehende und ausgehender Verkehr auf diesem Port – mit den Befehlen, die ausgeführt wurden (falls möglich). Mit anderen Worten, mein Ziel ist es zu wissen,
- welche Befehle auf dem lokalen FTP-Server ausgeführt wurden
- Welche Befehle wurden vom lokalen FTP-Client an andere Server ausgeführt
Jeder Vorschlag ist willkommen.
Kommentare
- Wenn Sie nicht ' Sie wissen nicht, welche Systeme welche Dienste auf Ihrem Server verwenden. Sie haben tatsächlich ein sehr großes Problem.
- Welches FTP-Server-Programm verwenden Sie?
- Läuft es von inetd oder Standalone ?
- Lassen Sie mich die Wahrheit umformulieren, die @roaima oben geschrieben hat: Wenn Sie ein AIX-Administrator sind und ' nicht wissen, wer / was Ihren Server verwendet, sind Sie es in großen, großen Schwierigkeiten.
- Ok Leute, lassen Sie uns ' sagen, dass der Administrator im Urlaub ist, und ich möchte etwas vorbereiten, um relevante Diskussionen mit ihm zu führen wenn er zurückkommt.
Antwort
Welche Befehle wurden auf dem lokalen FTP-Ser durchgeführt ver?
Um die FTP-Protokollierung auf einem AIX-System zu aktivieren, müssen Sie FTP (in Ihrem Fall von inetd aufgerufen) neu konfigurieren, um Debug-Protokolle an syslog zu senden und um syslog so zu konfigurieren, dass diese Protokolle in einer Datei gespeichert werden.
-
Bearbeiten Sie
/etc/inetd.conf
und fügen Sie-d
bis zum Ende der ftpd-Zeile:ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -d
-
Aktualisieren Sie inetd:
refresh -s inetd
-
Bearbeiten Sie
/etc/syslog.conf
und fügen Sie eine Zeile fürdaemon.debug
hinzu, um die Protokolle irgendwo zu speichern :daemon.debug /var/log/ftp.log
-
Erstellen Sie eine Datei, in die Syslog schreiben kann:
touch /var/log/ftp.log
-
Syslogd aktualisieren:
refresh -s syslogd
Syslog sendet alle Daemon-Protokolle zu dieser Datei, also möchten Sie sie mit grep
herausfiltern, vielleicht: grep "daemon:debug ftpd" /var/log/ftp.log
.
Befehle die über FTP gesendet wurden, werden mit der Zeichenfolge command:
protokolliert; hier „ein Beispiel:
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.
Ja, diese Control-Ms werden als solche in den Protokollen angezeigt!
Welche Befehle wurden vom lokalen FTP-Client an andere Server ausgeführt?
Da Anwendungen ihre eigenen ausführen konnten Bei FTP-Aktionen ist es schwierig, jedes mögliche Client-Programm (z. B. /usr/bin/ftp
) zu verpacken, um dies zu erfassen. Am besten konfigurieren Sie den Remote-FTP-Server so, dass nur die Befehle protokolliert werden Wie oben beschrieben. Am besten konfigurieren Sie die AIX-Firewall so, dass Datenverkehr für Port 21 zugelassen und protokolliert wird.
Stellen Sie sicher, dass die IPSec-Dateigruppe installiert ist:
lslpp -L bos.net.ipsec.rte; echo $?
Es sollte eine Dateigruppe mit dem Rückkehrcode 0 angezeigt werden und nicht:
lslpp: 0504-132 Fileset bos.net.ipsec.rte not installed.
Stellen Sie die IPSec-Geräte sicher sind aktiviert:
lsdev -l ipsec_v4
Sie sollten eine Zeile mit der Aufschrift „Verfügbar“ zurückbekommen, nicht „Definiert“ oder überhaupt keine Zeilen zurück.
Wenn keine Ausgabe erfolgte oder das Gerät war „definiert“:
- run
smitty ipsec4
- Wählen Sie
Start/Stop IP Security
, - wählen Sie
Start IP Security
, - belassen Sie die Standardeinstellungen bei
Now and After Reboot
undDeny All Non_Secure = no
- drücken Sie die Eingabetaste.
Das IPSec-Gerät_v4 sollte jetzt als „Verfügbar“ angezeigt werden.
Erstellen Sie eine Protokolldatei mit: touch /var/log/ipsec.log
.
Aktualisieren Sie das Syslog:
echo "local4.debug /var/log/ipsec.log rotate size 100k files 4" >> /etc/syslog.conf refresh -s syslogd
Fügen Sie eine Regel hinzu, um den für Port 21 bestimmten Datenverkehr zuzulassen und zu protokollieren:
# -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”
Protokollierung starten:
mkfilt -g start
Aktivieren Sie den Regelsatz:
mkfilt -u
Warten Sie, bis ausgehende FTP-Verbindungen hergestellt sind, und dann:
grep ipsec_logd /var/log/ipsec.log | grep DP:21
Sie sehen Quell- und Ziel-IPs für ausgehende FTP-Verbindungen zusammen mit dem Zeitstempel wie:
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
Der Inhalt (Befehle) der FTP-Sitzung wird nicht protokolliert, aber Sie werden Beachten Sie, dass jedes Paket jeder FTP-Verbindung protokolliert wird!
Referenzen: