CentOS開放 PORT 的方法

CentOS開放 PORT 的方法

Centos升級到7之後,內置的防火牆已經從iptables變成了firewalld。所以,port的開啟還是要從兩種情況來說明的,即iptables和firewalld。更多關於CentOs防火牆的最新內容,請參考Redhat官網[4.5 使用防火牆]。

一、iptables(centos 6及以前)

1.打開/關閉/重啟防火牆

開啟防火牆(重啟後永久生效):chkconfig iptables on

關閉防火牆(重啟後永久生效):chkconfig iptables off

開啟防火牆(即時生效,重啟後失效):service iptables start

關閉防火牆(即時生效,重啟後失效):service iptables stop

重啟防火牆:service iptables restartd

2.查看打開的端口

/etc/init.d/iptables status

3.打開某個 port (以8080為例)

(1)開啟port

iptables -A INPUT -p tcp –dport 8080 -j ACCEPT
(2)保存並重啟防火牆

/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart

4.打開49152~65534之間的端口

iptables -A INPUT -p tcp –dport 49152:65534 -j ACCEPT
同樣,這裡需要對設置進行保存,並重啟防火牆。

5.其他打開方式

我們還可以通過修改/etc/sysconfig/iptables文件的方式開啟port,如下

vi /etc/sysconfig/iptables
然後在文件中增加一行

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT
參數說明:

–A 參數就看成是添加一條規則
–p 指定是什麼協議,我們常用的tcp 協議,當然也有udp,例如53 port的DNS
–dport 就是目標port,當數據從外部進入伺服器為目標port
–sport 數據從伺服器出去,則為數據源port使用
–j 就是指定是 ACCEPT -接收 或者 DROP 不接收

二、firewalld(centos7)

Centos7默認安裝了firewalld,如果沒有安裝的話,可以使用 yum install firewalld firewalld-config進行安裝。

1.啟動防火牆

systemctl start firewalld

2.禁用防火牆

systemctl stop firewalld

3.設置開機啟動

systemctl enable firewalld

4.停止並禁用開機啟動

systemctl disable firewalld

5.重啟防火牆

firewall-cmd –reload

6.查看狀態

systemctl status firewalld或者 firewall-cmd –state

7.查看版本

firewall-cmd –version

8.查看幫助

firewall-cmd –help

9.查看區域資訊

firewall-cmd –get-active-zones

10.查看指定接口所屬區域資訊

firewall-cmd –get-zone-of-interface=eth0

11.拒絕所有封包

firewall-cmd –panic-on

12.取消拒絕狀態

firewall-cmd –panic-off

13.查看是否拒絕

firewall-cmd –query-panic

14.將接口添加到區域(默認接口都在public)

firewall-cmd –zone=public –add-interface=eth0(永久生效再加上 –permanent 然後reload防火牆)

15.設置默認接口區域

firewall-cmd –set-default-zone=public(立即生效,無需重啟)

16.更新防火牆規則

firewall-cmd –reload或firewall-cmd –complete-reload(兩者的區別就是第一個無需斷開連接,就是firewalld特性之一動態
添加規則,第二個需要斷開連接,類似重啟服務)

17.查看指定區域所有打開的port

firewall-cmd –zone=public –list-ports

18.在指定區域打開端口(記得重啟防火牆)

firewall-cmd –zone=public –add-port=80/tcp(永久生效再加上 –permanent)
說明:
–zone 作用域
–add-port=8080/tcp 添加port,格式為:port/通訊協議
–permanent #永久生效,沒有此參數重啟後失效

19.允許指定範圍tcp port至public級別(記得重啟防火牆)

firewall-cmd –zone=public –add-port=5060-5059/tcp –permanent

About the Author

Leave a Reply