<p>轉載自https://blog.csdn.net/codepen/article/details/52738906 <br> https://www.cnblogs.com/hantianwei/p/5736278.html</p> centos7 開啟端口防火牆配置(如開啟3306或者80端口)
centos7 默認是FirewallD 提供支持網絡/防火牆區域(zone)定義網絡鏈接以及接口安全等級的動態防火牆管理工具,利用
以前開啟centos7 的防火牆時,網上好多教程都是先關閉firewall,然后安裝iptables-services ,真不改這么做,因為iptables-services 是centos6的防火牆,而7默認為firewall了,直接配置firewall就可以了FirewallD開啟80端口操作如下:
開啟80端口
firewall-cmd –zone=public –add-port=80/tcp –permanent
出現success表明添加成功
命令含義:
–zone #作用域
–add-port=80/tcp #添加端口,格式為:端口/通訊協議
–permanent #永久生效,沒有此參數重啟后失效
重啟防火牆
systemctl restart firewalld.service
1、運行、停止、禁用firewalld
啟動:# systemctl start firewalld
查看狀態:# systemctl status firewalld 或者 firewall-cmd –state
停止:# systemctl disable firewalld
禁用:# systemctl stop firewalld
2、配置firewalld
查看版本:$ firewall-cmd –version
查看幫助:$ firewall-cmd –help
查看設置:
顯示狀態:$ firewall-cmd –state
查看區域信息: $ firewall-cmd –get-active-zones
查看指定接口所屬區域:$ firewall-cmd –get-zone-of-interface=eth0
拒絕所有包:# firewall-cmd –panic-on
取消拒絕狀態:# firewall-cmd –panic-off
查看是否拒絕:$ firewall-cmd –query-panic
更新防火牆規則:# firewall-cmd –reload
firewall-cmd –complete-reload
兩者的區別就是第一個無需斷開連接,就是firewalld特性之一動態添加規則,第二個需要斷開連接,類似重啟服務
將接口添加到區域,默認接口都在public
firewall-cmd –zone=public –add-interface=eth0
永久生效再加上 –permanent 然后reload防火牆
設置默認接口區域
firewall-cmd –set-default-zone=public
立即生效無需重啟
打開端口(貌似這個才最常用)
查看所有打開的端口:
firewall-cmd –zone=dmz –list-ports
加入一個端口到區域:
firewall-cmd –zone=dmz –add-port=8080/tcp
若要永久生效方法同上
打開一個服務,類似於將端口可視化,服務需要在配置文件中添加,/etc/firewalld 目錄下有services文件夾,這個不詳細說了,詳情參考文檔
firewall-cmd –zone=work –add-service=smtp
移除服務
firewall-cmd –zone=work –remove-service=smtp
附:systemctl命令如下
systemctl is-enabled iptables.service systemctl is-enabled
servicename.service #查詢服務是否開機啟動 systemctl enable *.service #開機運行服務
systemctl disable .service #取消開機運行 systemctl start .service #啟動服務
systemctl stop .service #停止服務 systemctl restart .service #重啟服務
systemctl reload .service #重新加載服務配置文件 systemctl status .service
查詢服務運行狀態 systemctl –failed #顯示啟動失敗的服務
注:*代表某個服務的名字,如http的服務名為httpd