有人提到我的伺服器幾天前進行了 HTTP 下載,這可能是病毒。我有請求的來源IP/連接埠、目標IP/連接埠、協定、時間、長度和方法。
也許我的伺服器被駭客攻擊了,但我想找到哪個用戶和哪個程式發出了 HTTP 請求。是否可以? Linux 是否記錄所有傳出的 HTTP 請求?如果沒有的話,我可以透過上面的資訊找到嗎?
答案1
如果您使用httpd伺服器,那麼您有http日誌,它可能會幫助您處理您的請求(有額外的模組對於 Apache mod_dumpio 可能會提供更好的反饋),我建議您按需運行此命令以更好地了解伺服器上當前正在請求 http 的內容
# tcpdump filter for HTTP GET
sudo tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'
# tcpdump filter for HTTP POST
sudo tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'
# tcpdump for specific client
tcpdump -vvvnn port 80 and host ip_addr_of_client -i any