1、設定
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
2、保存
[root@localhost ~]# /etc/rc.d/init.d/iptables save
3、重啟防火牆
[root@localhost ~]# service iptables restart
4、查看
[root@localhost ~]# /etc/init.d/iptables status
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306
2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
永久性關閉防火牆:
命令:#chkconfig --level 2345 iptables off
或者 #chkconfig iptables off
其中2345 代表”執行等級“
等級0表示:表示關機
等級1表示:單用戶模式
等級2表示:無網絡連接的多用戶命令行模式
等級3表示:有網絡連接的多用戶命令行模式
等級4表示:不可用
等級5表示:帶圖形界面的多用戶模式
等級6表示:重新啟動
臨時關閉防火牆:
命令:/etc/init.d/iptables stop
出現三個OK,關閉成功,此時防火牆已經關閉,不許重啟已經生效。
命令: /etc/init.d/iptables status
防火牆常用命令:
service iptables status可以查看到iptables服務的當前狀態。
但是即使服務運行了,防火牆也不一定起作用,你還得看防火牆規則的設置 iptables -L
在此說一下關於啟動和關閉防火牆的命令:
1) 重啟后生效
開啟: chkconfig iptables on
關閉: chkconfig iptables off
2) 即時生效,重啟后失效
開啟: service iptables start
關閉: service iptables stop
設置防火牆 iptables 如何 禁止某個IP訪問
方法一:
1.vi /etc/sysconfig/iptables里:RH-Firewall-1-INPUT – [0:0]下面添加一行
下面是只允許某個IP訪問xx端口
- -A INPUT -s 192.168.5.244 -j DROP
#service iptables restart
方法二:
1.先備份iptables
# cp /etc/sysconfig/iptables /var/tmp
添加拒絕IP
# iptables -I INPUT -s 118.109.231.217 -j DROP
以上是臨時設置。
2.然后保存iptables
# service iptables save
3.重啟防火牆
#service iptables restart
—————-下面是參考————————————
1. 查看本機關於IPTABLES的設置情況
# iptables -L -n
2. 清除原有規則
# iptables -F 清除預設表filter中的所有規則鏈的規則
# iptables -X 清除預設表filter中使用者自定鏈中的規則
3. 保存設置規則(因配置隨系統重啟而失效)
# /etc/rc.d/init.d/iptables save
保存規則到/etc/sysconfig/iptables文件中, 也可手工編輯該文件.
4. 設定預設規則
# iptables -p INPUT DROP
# iptables -p OUTPUT DROP
# iptables -p FORWARD DROP
上面的規則是不允許任何包通過.
5. 添加規則
# iptables -A INPUT -p tcp –dport 22 -j ACCEPT
# iptables -A OUTPUT -p tcp –sport 22 -j ACCEPT
開啟22端口, 允許SSH登錄, 如開啟80端口:
# iptables -A INPUT -p tcp –dport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT
6. 禁止某個IP訪問
# iptables -I INPUT -s x.x.x.x -j DROP
也可進行更細致的設置, 如只允許192.168.1.14的機器進行SSH連接:
# iptables -A INPUT -p tcp –dport 22 -s 192.168.1.14 -j ACCEPT
如果要允許或限制一段IP地址可用192.168.1.0/24 表示192.168.1.1-255端的所有IP.
防止同步包洪水(Sync Flood)
# iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT
防止各種端口掃描
# iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT
Ping 洪水攻擊(Ping of Death)
# iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT
