Linux踩坑記錄--開放指定端口

Linux踩坑記錄–開放指定端口

注意:redhat/centos 的iptables和firewalld是兩種不同的防火牆機制(firewalld是centos升級到7後新建的代替iptables的)

​ 所有如果在機器上同時安裝的firewalld和iptables的話,開放端口的時候,兩個防火牆都要進行設置。

iptables開放端口

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         #允許所有本機向外的訪問
iptables -A INPUT -p tcp --dport 22 -j ACCEPT    #允許訪問22端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT    #允許訪問80端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT    #允許ftp服務的21端口
iptables -A INPUT -p tcp --dport 20 -j ACCEPT    #允許FTP服務的20端口
iptables -A INPUT -j reject       #禁止其他未允許的規則訪問
iptables -A FORWARD -j REJECT     #禁止其他未允許的規則訪問

#以上是臨時設置。
#先備份iptables
cp /etc/sysconfig/iptables /var/tmp
#然後保存iptables
service iptables save
#重啓防火
service iptables restart

firewalld開放端口

#添加
firewall-cmd --zone=public --add-port=80/tcp --permanent    #(--permanent永久生效,沒有此參數重啓後失效)
#重新載入
firewall-cmd --reload
#查看
firewall-cmd --zone= public --query-port=80/tcp
#刪除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

另一個坑:

關於service iptables save 指令使用失敗的結局方

問題:使用 service iptables save 時顯示 The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

解決辦法:

使用systemctl stop firewalld 關閉防火牆
然後使用 yum install iptables-services 安裝或更新服務
再使用systemctl enable iptables 啓動iptables
最後 systemctl start iptables 打開iptables

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章