Centos7防火牆快速開放端口配置方法


這篇文章主要為大家詳細介紹了Centos7防火牆開放端口的快速方法,感興趣的小伙伴們可以參考一下!

Firewalld服務是紅帽RHEL7系統中默認的防火牆管理工具,特點是擁有運行時配置永久配置選項且能夠支持動態更新以及"zone"的區域功能概念,

使用圖形化工具firewall-config或文本管理工具firewall-cmd

1、區域概念與作用:

 防火牆的網絡區域定義了網絡連接的可信等級,我們可以根據不同場景來調用不同的firewalld區域,區域規則有:

 特別需要注意的是firewalld服務有兩份規則策略配置記錄,必需要能夠區分:

    RunTime:當前正在生效的。

    Permanent:永久生效的。

當下面實驗修改的是永久生效的策略記錄時,必須執行"--reload"參數后才能立即生效,否則要重啟后再生效。

2、查看當前的區域:

[root@CentOS7 ~]# firewall-cmd --get-default-zone
public

3、查詢網卡的區域:

[root@Centos7 ~]# firewall-cmd --get-zone-of-interface=eno16777736
public

4、在public中分別查詢ssh與http服務是否被允許:

[root@Centos7 ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@Centos7 ~]# firewall-cmd --zone=public --query-service=http
no

5、實例A-允許https服務流量通過public區域,要求立即生效且永久有效:

  方法一:設置當前生效的規則:

[root@Centos7 ~]# firewall-cmd --zone=public --add-service=https
success
[root@Centos7 ~]# firewall-cmd --reload
success

  方法二:設置永久生效的規則:

[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@Centos7 ~]# firewall-cmd --reload
success

6、實例B-不再允許http服務流量通過public區域,要求立即生效且永久生效:

[root@Centos7 ~]# firewall-cmd --permanent --zone=public --remove-service=http
success

[root@Centos7 ~]# firewall-cmd --reload 
success

7、實例C-允許8080與8081端口流量通過public區域,立即生效且永久生效:

[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp
success
[root@Centos7 ~]# firewall-cmd --reload 
success

8、實例D-查看模擬實驗中的規則:

[root@Centos7 ~]# firewall-cmd --zone=public --list-services
dhcpv6-client http https ssh
[root@Centos7 ~]# firewall-cmd --zone=public --list-ports
8080-8081/tcp

9、實例E:將訪問主機888端口的請求轉發至22端口:

[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.0.100
success
[root@Centos7 ~]# firewall-cmd --reload 
success

10、例如安裝Nagios后,要開放5666端口與服務器連接,命令如下:

#臨時生效
[root@centos7 ~]# firewall-cmd --add-port=5666/tcp
success
#這里也可以是一個端口范圍,如1000-2000/tcp
[root@centos7 ~]# firewall-cmd --add-port=1000-2000/tcp
success
#永久生效寫入配置文件
[root@centos7 ~]# firewall-cmd --permanent --add-port=5666/tcp
success
#重新加載防火牆配置 
[root@centos7 ~]# firewall-cmd --reload
success

11、例如需要對指定的ip開放http服務,指定的ip開放3306端口,命令如下:

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="172.17.0.1/16" port port="3306" protocol="tcp" accept'

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"'

12、CentOS7快速開放端口:

CentOS升級到7之后,發現無法使用iptables控制Linuxs的端口,baidu之后發現Centos 7使用firewalld代替了原來的iptables。下面記錄如何使用firewalld開放Linux端口:

開啟端口:

[root@centos7 ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp

取消端口開放:

[root@centos7 ~]# firewall-cmd --permanent --zone=public --remove-port=80/tcp

查詢端口號80 是否開啟:

[root@centos7 ~]# firewall-cmd --query-port=80/tcp

查詢有哪些端口是開啟的:

[root@centos7 ~]# firewall-cmd --list-port

命令含義:

--zone #作用域
--add-port=80/tcp #添加端口,格式為:端口/通訊協議
--permanent #永久生效,沒有此參數重啟后失效

重啟防火牆

[root@centos7 ~]# firewall-cmd --reload

13、CentOS6防火牆開放端口:

在我們使用CentOS系統的時候,CentOS防火牆有時是需要改變設置的。CentOS防火牆默認是打開的,設置CentOS防火牆開放端口方法如下:

打開iptables的配置文件:vi /etc/sysconfig/iptables

修改CentOS防火牆時注意:一定要給自己留好后路,留VNC一個管理端口和SSh的管理端口

下面是一個iptables的示例:

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
COMMIT

修改CentOS防火牆需要注意的是,你必須根據自己服務器的情況來修改這個文件。

舉例來說,如果你不希望開放80端口提供web服務,那么應該相應的刪除這一行:
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

全部修改完之后重啟iptables:service iptables restart

你可以驗證一下是否規則都已經生效:iptables -L

這樣,我們就完成了CentOS防火牆的設置修改。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM