iptables是linux上常用的防火牆軟體,下面vps偵探給大家說一下iptables的安裝、清除iptables規則、iptables只開放指定埠、iptables遮蔽指定ip、ip段及解封、刪除已新增的iptables規則等iptables的基本應用。
1、安裝iptables防火牆
如果沒有安裝iptables需要先安裝,centos執行:
yum install iptables
debian/ubuntu執行:
apt-get install iptables
2、清除已有iptables規則
iptables -f
iptables -x
iptables -z
3、開放指定的埠
#允許本地回環介面(即執行本機訪問本機)
iptables -a input -s 127.0.0.1 -d 127.0.0.1 -j accept
# 允許已建立的或相關連的通行
iptables -a input -m state --state established,related -j accept
#允許所有本機向外的訪問
iptables -a output -j accept
# 允許訪問程式設計客棧22埠
iptables -a input -p tcp --dport 22 -j accept
#允許訪問80埠
iptables -a input -p tcp --dport 80 -j accept
#允許ftp服務的21和20埠
iptables -a input -p tcp --dport 21 -j accept
iptables -a input -p tcp --dport 20 -j accept
#如果有其他埠的話,規則也類似,稍微修改上述語句就行
#禁止其他未允許的規則訪問
iptables -a input -j reject
iptables -a forward -j reject
4、遮蔽ip
#如果只是想遮蔽ip的話「3、開放指定的埠」可以直接跳過。
#遮蔽單個ip的命令www.cppcns.com是
iptables -i input -s 123.45.6.7 -j drop
#封整個段即從123.0.0.1到123.255.255.254的命令
iptables -i input -s 123.0.0.0/8 -j drop
#封ip段即從123.45.xfdizyomg0.1到123.45.255.254的命令
iptables -i input -s 124.45.0.0/16 -j drop
#封ip段即從123.45.6.1到123.45.6.254的命令是
iptables -i input -s 123.45.6.0/24 -j drop
4、檢視已新增的iptables規則
iptables -l -n
v:顯示詳細資訊,包括每xfdizyomg條規則的匹配包數量和匹配位元組數
x:在 v 的基礎上,禁止自動單位換算(k、m) vps偵探
n:只顯示ip位址和埠號,不將ip解析為網域名稱
5、刪除已新增的iptables規則
將所有iptables以序號標記顯示,執行:
iptables -l -n --line-numbers
比如要刪除input裡序號為8的規則,執行:
iptables -d input 8
6、iptables的開機啟動及規則儲存
centos上可能會存在安裝好iptables後,iptables並不開機自啟動,可以執行一下:
chkconfig --level 345 iptables on
將其加入開機啟動。
centos上可以執行:service iptables s**e儲存規則。
另外更需要注意的是debian/ubuntu上iptables是不會儲存規則的。
需要按如下步驟進行,讓網絡卡關閉是儲存iptables規則,啟動時載入iptables規則:
建立/etc/network/if-post-down.d/iptables 檔案,新增如下內容:
#!/bin/bash
iptables-s**e > /etc/iptables.rules
執行:chmod +x /etc/network/if-post-down.d/iptables 新增執行許可權。
建立/etc/network/if-pre-up.d/iptables 檔案,新增如下內容:
#!/bin/bash
iptables-s**e < /etc/iptables.rules
執行:chmod +x /etc/network/if-pre-up.d/iptables 新增執行許可權。
Linux上iptables防火牆配置方法
編輯 etc sysconfig iptables 然後執行 sbin service iptables restart 防火牆規則只有在 iptables 服務執行的時候才能被啟用。要手工啟動服務,使用以下命令 sbin service iptables restart 要確保它在系統引導時啟動,...
CentOS 7 改用iptables作為防火牆
從centos 7開始系統預設使用的是firewall作為防火牆。關閉防火牆的方式與以往的有所不同。systemctl stop firewalld.servicesystemctl disable firewalld.serviceyum install iptables services y修改...
centos7使用iptables作為防火牆方法
centos7使用iptables作為防火牆方法 檢視firewalld狀態 systemctl status firewalld 將centos7預設的firewalld停止,並將iptables作為預設防火牆 關閉並禁用firewalld systemctl stop firewalld sys...