在 ubuntu 22.04 上測試 ping:
Host A IPv6: 1111:1111:1111:1111:1111:1111:1111:1111
Host B IPv6: 2222:2222:2222:2222:2222:2222:2222:2222
主持人甲:
現在使用以下 bash 指令從主機 A 執行 ping:
root@host_a:~# ping -6 2222:2222:2222:2222:2222:2222:2222:2222
主持人乙:
iptables 丟棄了一些資料包並將其記錄到檔案中:
12 月7 日18:21:52 host_b 核心:[ 988.996335] 刪除輸出:IN= OUT=ens33 SRC=192.168.1.1 DST=192.168.2.1 LEN=83 TOS=0x00 PREC=00x UDP SPT =41151 DPT=53 LEN=63 UID=113 GID=118
12 月7 日18:21:52 host_b 核心:[ 988.998359] 刪除輸出:IN= OUT=ens33 SRC=2222:2222:2222:2222:2222:2222:2222:2222 DST=11:111:11 1111: 1111:1111:1111 LEN=72 TC=0 HOPLIMIT=255 FLOWLBL=0 協定=ICMPv6 型別=136 代碼=0
12 月7 日18:21:53 host_b 核心:[ 990.001075] 刪除輸出:IN= OUT=ens33 SRC=2222:2222:2222:2222:2222:2222:2222:2222 DST=11:111:11 1111: 1111:1111:1111 LEN=72 TC=0 HOPLIMIT=255 FLOWLBL=0 協定=ICMPv6 型別=136 代碼=0
從first log line
,有一個UID
和GID
訊息:
UID=113 GID=118
我們可以透過這個方法找到用戶:
root@host_b:~# cat /etc/passwd | grep 113
但是對於2nd
和行,日誌中3rd
沒有任何UID
或。GID
問題:
如何找出哪個程式正在發送以下網路封包?
PROTO=ICMPv6 TYPE=136 CODE=0
筆記:根據 iptables 日誌,這個「未知」程式接受傳入的 ICMPv6 封包,然後發送傳出的 ICMPv6 封包,但當封包被規則丟棄時,iptables 無法記錄該「未知」程式的 UID 和 GID。
答案1
看鄰居發現協議被阻止的 ICMP 訊息屬於 ipv6 堆疊。阻止他們並不是一個好主意。堆疊位於核心部分,沒有使用者進程。用戶進程沒有UID/GID。