硅云幫助文檔中心
搜索文檔
熱門搜索詞:
產(chǎn)品簡介
產(chǎn)品定價(jià)
入門指南
經(jīng)典案例
快照
常見問題
Windows遠(yuǎn)程報(bào)錯(cuò)“出現(xiàn)身份驗(yàn)證錯(cuò)誤,要求的函數(shù)不受支持”
Linux系統(tǒng)中xfs類型分區(qū)在掛載時(shí)提示“mount: wrong fs type, bad option, bad superblock on /dev/vdc1,”
搬遷MySQL數(shù)據(jù)庫后提示錯(cuò)誤ERROR 1146 (42S02):Table doesn’t exist
Windows系統(tǒng)云服務(wù)器解除會(huì)話時(shí)間限制(解決Windows服務(wù)器遠(yuǎn)程桌面頻繁掉線的方法)
Windows Server服務(wù)器遠(yuǎn)程連接登錄報(bào)錯(cuò)“內(nèi)部錯(cuò)誤”
知識(shí)拓展
名詞解釋
API參考
Linux/centos如何開放端口,firewall、iptables防火墻管理
CentOS 7系統(tǒng)默認(rèn)的防火墻是Firewall,CentOS 6系統(tǒng)默認(rèn)的防火墻是iptables。
CVM云服務(wù)器安裝的Linux系統(tǒng)鏡像默認(rèn)已安裝防火墻,當(dāng)我們需要對外開放端口時(shí),該如何操作?
Linux系統(tǒng)包括CentOS、Ubuntu、Debian等多個(gè)發(fā)行版本,本文檔是針對CentOS系統(tǒng)的防火墻開放端口的操作方法。
因在CentOS 7中,F(xiàn)irewall防火墻取代了早前的iptables防火墻,防火墻的命令也不同,因此在實(shí)際操作前,我們需要先查詢下到底使用的是哪種防火墻。
檢查使用哪種防火墻,先嘗試執(zhí)行 firewall-cmd --state
[root@localhost ~]# firewall-cmd --state -bash: firewall-cmd: command not found
如上執(zhí)行結(jié)果顯示 command not found(譯為未找到命令),說明該系統(tǒng)并沒有安裝firewall版防火墻。
同樣的,如果執(zhí)行命令 service iptables status
[root@localhost~]# service iptables status Redirecting to /bin/systemctl status iptables.service Unit iptables.service could not be found.
如上執(zhí)行結(jié)果顯示 Unit iptables.service could not be found(譯為未找到iptables服務(wù)),說明系統(tǒng)并沒有安裝iptables防火墻。
為了更好的演示,我們分別在已經(jīng)安裝了firewall防火墻、iptables防火墻的環(huán)境中進(jìn)行如下操作演示。
查看防火墻狀態(tài)命令:
firewall-cmd --state
如上執(zhí)行結(jié)果顯示 running,即表示防火墻處于運(yùn)行狀態(tài);如果顯示not running,則表示已安裝防火墻但處于關(guān)閉狀態(tài)。(如果顯示其他錯(cuò)誤,則表示未安裝firewall防火墻)
以上結(jié)果為防火墻已啟用,我們就可以查看放行的端口了。
查看已開放端口命令:(示例中的zone表示信任級(jí)別,使用public即可)
firewall-cmd --zone=public --list-ports
如上執(zhí)行結(jié)果,當(dāng)前已開放TCP 20、TCP 21、TCP 22、TCP 80、TCP 8888、TCP 39000到40000 端口。
添加端口命令:
如果你需要新增放行一個(gè)端口,只需要執(zhí)行如下命令,
firewall-cmd --zone=public --add-port=443/tcp --permanent
(以上示例為放行TCP 443端口,也就是用于https協(xié)議的端口,其中參數(shù) permanent 表示永久生效,即重啟系統(tǒng)后會(huì)繼續(xù)生效,否則重啟后會(huì)失效)
移除端口命令:
如果你需要取消某個(gè)已放行的端口,輸入命令:
firewall-cmd --zone=public --remove-port=443/tcp --permanent
刷新/重載新配置文件命令(建議每次變更后都執(zhí)行下):
當(dāng)添加/移除某個(gè)端口后,當(dāng)前設(shè)置可能并不會(huì)立即生效(可以通過查看已開放端口命令核對),如果設(shè)置并未生效,我們可以執(zhí)行一次重載防火墻服務(wù)(可以理解為刷新配置),輸入命令:
firewall-cmd --reload
如果端口仍未通,可以嘗試重啟一次系統(tǒng)。
參考:
firewall-cmd命令的可選參數(shù)一覽: --list-all:列出所有規(guī)則。 --reload:重新加載防火墻規(guī)則。 --permanent:將規(guī)則保存到永久配置中,以便系統(tǒng)重啟后仍然有效。 --delete-service:刪除服務(wù)。 --list-services:列出當(dāng)前系統(tǒng)中所有可用服務(wù)。 --add-source:添加一個(gè) IP 或 IP 段。 --remove-source:刪除一個(gè) IP 或 IP 段。 --list-sources:列出所有已添加的 IP 或 IP 段。 --add-port:添加端口。 --remove-port:刪除端口。 --list-ports:列出所有已添加的端口。 --add-rich-rule:添加一個(gè)更加復(fù)雜的規(guī)則。 --query-service:查詢服務(wù)是否可用。 --get-zones:列出所有可用的區(qū)域。 --zone=zone-name:指定一個(gè)區(qū)域。
在CentOS6系中,默認(rèn)安裝的是iptables防火墻。
查看防火墻狀態(tài)命令:
[root@localhost ~]# service iptables status iptables: Firewall is not running.
如上執(zhí)行結(jié)果 Firewall is not running 表示iptables防火墻已經(jīng)安裝但是沒有開啟。
開啟iptables防火墻命令:
[root@localhost ~]# service iptables start iptables: Applying firewall rules: [ OK ]
如上執(zhí)行結(jié)果,iptables防火墻開啟成功。
查看已開放端口命令:
iptables -L -n
開放端口命令:
以下示例為開放80端口,常用于http協(xié)議(開放某個(gè)端口即添加了一條開放該端口的規(guī)則),
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
刪除端口(刪除規(guī)則,即禁用端口):
首先我們需要知道對應(yīng)規(guī)則的編號(hào),每條規(guī)則都有一個(gè)編號(hào),以下是查看已有規(guī)則編號(hào)命令:
iptables -L -n --line-number
如下為執(zhí)行結(jié)果:
num target prot opt source destination 1 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306 2 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 3 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
我們可以看到多了 num 這一列, 這樣我們就可以看到剛才添加的規(guī)則是對應(yīng)的是編號(hào)3(放行80端口入站規(guī)則)。
如果此時(shí)想要?jiǎng)h除80端口入站規(guī)則(規(guī)則編號(hào)為3),那么我們就可以進(jìn)行操作了
iptables -D INPUT 3
操作之后,務(wù)必執(zhí)行保存命令:
service iptables save
注:硅云官方提供的Linux系統(tǒng)鏡像默認(rèn)已開啟PING協(xié)議(ICMP協(xié)議)。
檢查系統(tǒng)是否開啟ping的命令:
ping又稱作ICMP協(xié)議
cat /proc/sys/net/ipv4/icmp_echo_ignore_all
如以上執(zhí)行結(jié)果為0,表示已開啟ping,如為1,表示未開啟ping。
開啟ping的命令:
echo "0" >/proc/sys/net/ipv4/icmp_echo_ignore_all
除了系統(tǒng)中開啟ping外,安全組也需放行ICMP/ipv4協(xié)議,這樣公網(wǎng)IP才能ping通。
相關(guān)文檔
您對該文檔有什么建議?
本文導(dǎo)航