Wie protokolliere ich die IP-Adressen, die versuchen, eine Verbindung zu einem Port herzustellen?
9
Ist es möglich, alle IP-Adressen zu protokollieren, die versuchen, eine Verbindung herzustellen oder eine Verbindung zu Port "5901" in Linux Debian herzustellen?
Ich habe es nicht abgelehnt, aber einer der Gründe für eine Ablehnung von SF ist, dass die Frage "keine Forschungsanstrengungen zeigt" und es tut mir leid, aber Ihre nicht.
MadHatter
Antworten:
18
Sie können dies mit iptables tun
iptables -I INPUT -p tcp -m tcp --dport 5901 -m state --state NEW -j LOG --log-level 1 --log-prefix "New Connection "
Dadurch werden neue TCP-Verbindungen an Port 5901 an /var/log/syslogund auf /var/log/kernel.logdiese Weise protokolliert
12. Dezember 07:52:48 u-10-04 Kernel: [591690.935432] Neue Verbindung IN = eth0 OUT = MAC = 00: 0c: 29: 2e: 78: f1: 00: 0c: 29: eb: 43: 22: 08:00 SRC = 192.168.254.181 DST = 192.168.254.196 LEN = 60 TOS = 0x10 PREC = 0x00 TTL = 64 ID = 40815 DF PROTO = TCP SPT = 36972 DPT = 5901 WINDOW = 14600 RES = 0x00 SYN URGP = 0
Sie können netstatmit den Optionen -v, -n, -t, -a verwenden
zB
netstat -anp | :8080 | grep ESTABLISHED | wc -l
ODER
root@user:/home# netstat -vatn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.174:8080 192.168.1.126:53021 ESTABLISHED
tcp 0 0 192.168.1.174:8080 192.168.1.126:32950 ESTABLISHED
tcp 0 0 192.168.1.174:8080 192.168.1.126:39634 ESTABLISHED
tcp 0 0 192.168.1.174:8080 192.168.1.126:59300 ESTABLISHED
tcp 0 0 192.168.1.174:8080 192.168.1.188:49551 ESTABLISHED
tcp 0 0 192.168.1.174:9090 192.168.1.126:37865 ESTABLISHED
tcp 0 0 192.168.1.174:9090 192.168.1.188:51411 ESTABLISHED
tcp 0 0 192.168.1.174:8080 192.168.1.126:50824 ESTABLISHED
Da dieser Befehl nicht alle IP-Adressen protokolliert, ist er keine Antwort auf die Frage.
Kasperd
Außerdem ist "ESTABLISHED" nur dann aufgetreten , wenn die Verbindung erfolgreich hergestellt wurde. Dies zeigt also nicht an, wer versucht , eine Verbindung herzustellen (wenn beispielsweise der Port nicht geöffnet ist, schlagen alle fehl).
Antworten:
Sie können dies mit iptables tun
Dadurch werden neue TCP-Verbindungen an Port 5901 an
/var/log/syslog
und auf/var/log/kernel.log
diese Weise protokolliertquelle
Wenn es kurzfristig ist - sollte dies tun:
Alternativ können Sie das Protokollziel von iptables verwenden:
Dies könnte Ihre Protokolle überfluten
quelle
Sie können
netstat
mit den Optionen -v, -n, -t, -a verwendenzB
netstat -anp | :8080 | grep ESTABLISHED | wc -l
ODERquelle