-- 查找所有規則
iptables -L INPUT --line-numbers
-- 刪除一條規則
iptables -D INPUT 11 (注意,這個11是行號,是iptables -L INPUT --line-numbers 所打印出來的行號)
限制訪問: iptables -I INPUT -p tcp --dport 6700 -j DROP 容許本機訪問: iptables -I INPUT -s 127.0.0.1 -j ACCEPT iptables -I INPUT -s 10.x.x.x -j ACCEPT
查看端口情況
1.netstat -ntpl
2.iptables -F 清除預設表filter中的所有規則鏈的規則
3.iptables -X 清除預設表filter中使用者自定鏈中的規則
4.iptables -L -n 查看本機關於IPTABLES的設置情況 【遠程連接規則將不能使用,注意】
/etc/init.d/iptables status
5./etc/rc.d/init.d/iptables save
6./etc/rc.d/init.d/iptables restart
初始化
7. ACCEPT/DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
上面的意思是,當超出了IPTABLES里filter表里的兩個鏈規則(INPUT,FORWARD)時,不在這兩個規則里的數據包怎么處理呢,那就是DROP(放棄).應該說這樣配置是很安全的.我們要控制流入數據包
而對於OUTPUT鏈,也就是流出的包我們不用做太多限制,而是采取 ACCEPT,也就是說,不在着個規則里的包怎么辦呢,那就是通過.
可以看出INPUT,FORWARD兩個鏈采用的是允許什么包通過,而OUTPUT鏈采用的是不允許什么包通過.
這樣設置還是挺合理的,當然你也可以三個鏈都DROP,但這樣做我認為是沒有必要的,而且要寫的規則就會增加.但如果你只想要有限的幾個規則是,如只做WEB服務器.還是推薦三個鏈都是DROP.
注:如果你是遠程SSH登陸的話,當你輸入第一個命令回車的時候就應該掉了.因為你沒有設置任何規則.
重復5,6步驟,查看結果 iptables -L -n
8.添加規則
eg. ssh端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
(注:這個規則,如果你把OUTPUT 設置成DROP的就要寫上這一部,好多人都是望了寫這一部規則導致,始終無法SSH.在遠程一下,是不是好了.
其他的端口也一樣,如果開啟了web服務器,OUTPUT設置成DROP的話,同樣也要添加一條鏈
重復5,6步驟,查看結果 iptables -L -n
web
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
如下:
只允許指定的ip訪問本機的指定端口50070:
例如允許的的ip:192.168.1.123,192.168.1.124, 192.168.1.100,其他ip都禁止訪問。
切換到root用戶
iptables -F#清除預設表filter中的所有規則鏈的規則
1、在tcp協議中,禁止所有的ip訪問本機的50070端口。
iptables -I INPUT -p tcp --dport 50070 -j DROP
2、允許192.168.1.123訪問本機的50070端口
iptables -I INPUT -s 192.168.1.123 -p tcp --dport 50070 -j ACCEPT
3、允許192.168.1.124訪問本機的50070端口
iptables -I INPUT -s 192.168.1.124 -p tcp --dport 50070 -j ACCEPT
4、允許192.168.1.100訪問本機的50070端口
iptables -I INPUT -s 192.168.1.100 -p tcp --dport 50070 -j ACCEPT
注意以上4條命令的順序不能錯。
以上是臨時設置。
5.然后保存iptables
# service iptables save
6.重啟防火牆
#service iptables restart
7.在此說一下關於啟動和關閉防火牆的命令:
1) 重啟后生效
開啟: chkconfig iptables on
關閉: chkconfig iptables off
2) 即時生效,重啟后失效
開啟: service iptables start
關閉: service iptables stop
說明:
1、如果對某一網段做限制可以直接執行如下命令:
2-3-4步可直接使用如下命令代替:
iptables -I INPUT-s 192.168.1.0/24 -p tcp --dport 50070 -j ACCEPT
2、對其他端口做限制,直接修改為對應端口后依次執行 1-7步操作
---------------------
作者:ZhaoYingChao88
來源:CSDN
原文:https://blog.csdn.net/zyc88888/article/details/73274456/
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!