iptables防火牆如何記錄日誌
例如:記錄所有ssh服務的登入的日誌
首先,我們需要了解如何將所有的iptables的INPUT鏈資料包記錄到
/var/log/messages
中。如果你已經有一些iptables規則了,那麼將記錄日誌的規則放在這些規則的頂部,如果放在規則的後面,將不會記錄日誌。
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 4/min -j LOG --log-prefix "Iptables-SSH-IN: " --log-level 4 iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -P INPUT DROP
在上面的示例中,它執行以下操作:
- 第一條規則記錄所有訪問目的埠為22的,將記錄日誌,限制日誌每分鐘4條,日誌字首為“Iptables-SSH-IN: ”,日誌記錄級別為Warning。
- 第二條規則允許所有源地址的新連線訪問目的埠22。
- 第三條規則允許所有已建立的連線訪問本機。
- 設定INPUT鏈的預設規則為DROP。
上面第一條規則解釋:
- -m limit:使用limit模組。使用此選項,可以使用--limit選項限制訪問速率。
- --limit 4/min:這表示記錄的最大平均訪問速率。在此示例中,對於類似的資料包,它將日誌記錄限制為每分鐘4個。還可以設定為2/second, 2/minute, 2/hour, 2/day。
- -j LOG:這表示此資料包的目標是LOG。即寫入日誌檔案。
- --log-prefix "Iptables-SSH-IN: ” 可以指定任何日誌字首,這些字首將寫入到
/var/log/messages
日誌檔案中。 - --log-level 4這是標準的系統日誌級別。4是警告(warning)。可以使用0到7之間的數字。0是emerg,1是alert,2是crit,3是err,4是warning,5是notice,6是info,7是debug。
修改iptables日誌存放位置
預設情況下,iptables將使用
/var/log/messages
記錄所有訊息。如果要將其更改為自己的定製日誌檔案,將下面
新增到
/etc/rsyslog.conf
中。前提需要安裝rsyslog服務:
# 安裝rsyslog服務 [root@localhost ~]# yum -y install rsyslog # 設定開機啟動、並立即啟動 [root@localhost ~]# systemctl enable rsyslog --now # 編輯/etc/rsyslog.conf檔案,新增下面內容到檔案底部 [root@localhost ~]# vim /etc/rsyslog.conf kern.warning /var/log/iptables.log
檢視剛才設定的日誌檔案:
[root@localhost ~]# ll -h /var/log/iptables.log -rw-------. 1 root root 2.0K Feb 9 10:46 /var/log/iptables.log [root@localhost ~]# tail -f /var/log/iptables.log
如何讀取IPTables日誌?
[root@localhost ~]# cat /var/log/iptables.log Feb 9 10:46:20 localhost kernel: Iptables-SSH-IN: IN=ens160 OUT= MAC=00:0c:29:ae:7d:09:00:50:56:c0:00:08:08:00 SRC=192.168.43.1 DST=192.168.43.137 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=49928 DF PROTO=TCP SPT=16512 DPT=22 WINDOW=64240 RES=0x00 SYN URGP=0
- Iptables-SSH-IN: 透過指定--log-prefix選項,這是我們在日誌記錄中使用的字首
- IN=ens160 OUT=: 這表示從該介面傳入資料包。對於傳出資料包將為空。
- IN= OUT=: 這表示從該介面傳出資料包。對於傳入的資料包將為空。
- MAC=: 00:0c:29:ae:7d:09小時目標MAC地址,:00:50:56:c0:00:08為源MAC地址,08:00為上層協議程式碼,表示IP協議。
- SRC=: 源IP地址
- DST=:目的IP地址
- LEN=: 資料包的長度
- PROTO=: 使用什麼型別協議
- SPT=: 源埠
- DPT=: 目標埠
總結
當你的iptables規則無法正常工作時,可能希望記錄iptables的資料包以進行故障排除。本文介紹瞭如何使用iptables的日誌記錄模組。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2760463/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 防火牆iptables防火牆
- iptables防火牆防火牆
- Linux IPTables:如何新增防火牆規則Linux防火牆
- Iptables防火牆應用防火牆
- iptables防火牆規則防火牆
- 基於iptables防火牆堵漏防火牆
- Linux設定防火牆iptablesLinux防火牆
- Linux基礎命令---iptables防火牆Linux防火牆
- linux iptables安全技術與防火牆Linux防火牆
- 20條IPTables防火牆規則用法!防火牆
- iptables配置-Linux系統安全防火牆Linux防火牆
- 防火牆入侵於檢測————7、日誌服務防火牆
- Linux 防火牆配置(iptables和firewalld)詳細教程。Linux防火牆
- Linux系統iptables與Firewalld防火牆區別?Linux防火牆
- 超級實用的 iptables 防火牆指令碼防火牆指令碼
- 體驗iptables 企業級的防火牆實戰防火牆
- Linux防火牆介紹和iptables常用命令Linux防火牆
- CentOS 中 iptables 和 firewall 防火牆的相關命令CentOS防火牆
- Linux 防火牆:關於 iptables 和 firewalld 的那些事Linux防火牆
- 1、iptables-基礎-包過濾防火牆-四層防火牆(只支援4層協議)防火牆協議
- 如何優雅地記錄操作日誌
- 如何優雅的記錄操作日誌?
- 如何優雅地記錄操作日誌?
- NAS中如何檢視日誌記錄?
- ThinkPHP日誌記錄PHP
- 日誌記錄器
- 如何記錄可讀性的操作日誌?
- 微服務體系操作日誌如何記錄?微服務
- Laravel sql 日誌記錄LaravelSQL
- iptables防火牆簡介,原理,規則編寫,常見案例防火牆
- 如何定製.NET6.0的日誌記錄
- 如何在專案中記錄日誌資訊?
- 伺服器安全設定Centos7 防火牆firewall與iptables伺服器CentOS防火牆
- iptables實用知識 ,一文學會配置linux防火牆Linux防火牆
- monolog 日誌記錄器解析Mono
- 日誌記錄模組logging
- win10防火牆如何關閉 筆記本win10防火牆強制關閉Win10防火牆筆記
- [提問交流]請問如何關掉日誌記錄