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防火牆防火牆
- Iptables防火牆應用防火牆
- iptables防火牆規則防火牆
- linux防火牆iptablesLinux防火牆
- 防火牆iptables 設定防火牆
- 動態iptables 防火牆防火牆
- 基於iptables防火牆堵漏防火牆
- Centos iptables防火牆設定CentOS防火牆
- 動態 iptables 防火牆(轉)防火牆
- NAT iptables防火牆(script)(轉)防火牆
- iptables 配置LINUX防火牆Linux防火牆
- Linux IPTables:如何新增防火牆規則Linux防火牆
- Linux設定防火牆iptablesLinux防火牆
- Iptables防火牆規則使用梳理防火牆
- Linux 防火牆 學習 iptablesLinux防火牆
- 動態iptables防火牆dynfw(轉)防火牆
- Linux基礎命令---iptables防火牆Linux防火牆
- 20條IPTables防火牆規則用法!防火牆
- 阿里雲Centos配置iptables防火牆阿里CentOS防火牆
- Linux防火牆iptables學習筆記(三)iptables命令詳解和舉例Linux防火牆筆記
- iptables.sh 初始化防火牆配置防火牆
- Linux防火牆iptables實用設定Linux防火牆
- Linux 防火牆開放特定埠 (iptables)Linux防火牆
- 使用netfilter/iptables配置防火牆(轉)Filter防火牆
- Linux 自帶防火牆 Iptables 基本配置Linux防火牆
- 使用IPtables搭建防火牆的規則(轉)防火牆
- 使用iptables建置Linux 防火牆(2)(轉)Linux防火牆
- 使用iptables建置Linux 防火牆(3)(轉)Linux防火牆
- 防火牆入侵於檢測————7、日誌服務防火牆
- php日誌,記錄日誌PHP
- 超級實用的 iptables 防火牆指令碼防火牆指令碼
- iptables配置-Linux系統安全防火牆Linux防火牆
- 安全的Web主機iptables防火牆指令碼Web防火牆指令碼
- Linux中iptables防火牆的簡單配置Linux防火牆
- CentOS之——CentOS7安裝iptables防火牆CentOS防火牆
- rehdat 5.3 iptables 的防火牆設定說明防火牆
- Linux防火牆之IPtables概念與用法(轉)Linux防火牆