1. 程式人生 > >CentOS7防火牆firewalld和iptable的設定和使用

CentOS7防火牆firewalld和iptable的設定和使用

再部署了伺服器環境之後,伺服器正常啟動,日誌也正常列印,但是服務不能訪問,對問題逐一進行排查,最後發現是伺服器防火牆設定的問題。於是將防火牆的一些設定方法總結記錄如下:

1、firewalld的基本使用

啟動: systemctl start firewalld
檢視狀態: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld

2.systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能於一體。

啟動一個服務:systemctl start firewalld.service
關閉一個服務:systemctl stop firewalld.service
重啟一個服務:systemctl restart firewalld.service
顯示一個服務的狀態:systemctl status firewalld.service
設定firewall開機啟動:systemctl enable firewalld.service
禁止firewall開機啟動:systemctl disable firewalld.service
檢視服務是否開機啟動:systemctl is-enabled firewalld.service
檢視已啟動的服務列表:systemctl list-unit-files|grep enabled
檢視啟動失敗的服務列表:systemctl –failed

3.配置firewalld-cmd

檢視版本: firewall-cmd –version
檢視幫助: firewall-cmd –help
顯示狀態: firewall-cmd –state
檢視所有開啟的埠: firewall-cmd –zone=public –list-ports
更新防火牆規則: firewall-cmd –reload
檢視區域資訊: firewall-cmd –get-active-zones
檢視指定介面所屬區域: firewall-cmd –get-zone-of-interface=eth0
拒絕所有包:firewall-cmd –panic-on
取消拒絕狀態: firewall-cmd –panic-off
檢視是否拒絕: firewall-cmd –query-panic

4.那怎麼開啟一個埠呢

新增
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

5.如何開放一個服務

暫時開放 ftp 服務
firewall-cmd –add-service=ftp

永久開放 ftp 服務
firewall-cmd –add-service=ftp –permanent
永久關閉
firewall-cmd –remove-service=ftp –permanent
success

讓設定生效
systemctl restart firewalld

檢視設定是否生效
iptables -L -n | grep 21
ACCEPT tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 ctstate NEW

檢查防火牆狀態
firewall-cmd –state
running

systemctl stop firewalld
firewall-cmd –state
not running

firewall-cmd –list-all
public (default)
interfaces:
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:

在 FirewallD 的服務名稱
firewall-cmd –get-service
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https

查詢服務的啟用狀態
firewall-cmd –query-service ftp
yes
firewall-cmd –query-service ssh
yes
firewall-cmd –query-service samba
no
firewall-cmd –query-service http
no

自行加入要開放的 Port
firewall-cmd –add-port=3128/tcp
firewall-cmd –list-all
public (default)
interfaces:
sources:
services: dhcpv6-client ftp ssh
ports: 3128/tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:

6.CentOS 7.0預設使用的是firewall作為防火牆,這裡改為iptables防火牆步驟。

1)、關閉firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動
firewall-cmd –state #檢視預設防火牆狀態(關閉後顯示notrunning,開啟後顯示running)

2)、iptables防火牆(這裡iptables已經安裝,下面進行配置)
vi/etc/sysconfig/iptables #編輯防火牆配置檔案
sampleconfiguration for iptables service
you can edit thismanually or use system-config-firewall
please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state–state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate –state NEW -m tcp –dport 22 -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 80 -jACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 8080-j ACCEPT
-A INPUT -j REJECT–reject-with icmp-host-prohibited
-A FORWARD -jREJECT –reject-with icmp-host-prohibited
COMMIT
:wq! #儲存退出

備註:這裡使用80和8080埠為例。*部分一般新增到“-A INPUT -p tcp -m state –state NEW -m tcp–dport 22 -j ACCEPT”行的上面或者下面,切記不要新增到最後一行,否則防火牆重啟後不生效。
systemctlrestart iptables.service #最後重啟防火牆使配置生效
systemctlenable iptables.service #設定防火牆開機啟動

相關推薦

CentOS7防火牆firewalldiptable設定使用

再部署了伺服器環境之後,伺服器正常啟動,日誌也正常列印,但是服務不能訪問,對問題逐一進行排查,最後發現是伺服器防火牆設定的問題。於是將防火牆的一些設定方法總結記錄如下: 1、firewalld的基本使用 啟動: systemctl start fire

CentOS7防火牆firewalld容易配置使用

網上找了好多文章,關於CentOS7的防火牆配置和使用,都沒有比較理想的說明firewalld的用法,還有一些網上摒棄centos7 firewalld防火牆,使用舊版本的iptables的替代的做法,這裡筆者非常不贊同其再使用iptables。     CentOS7使用的是Linux Kernel

CentOS7系統firewalld新增開放埠操作命令

1、firewalld的基本使用啟動: systemctl start firewalld檢視狀態: systemctl status firewalld 停止: systemctl disable firewalld禁用: systemctl stop firewalld2

linux 防火牆firewalld、selinux開啟關閉

一、firewalld ### 檢視防火牆狀態 systemctl status firewalld  ### 臨時開啟防火牆 systemctl start firew

Centos7 防火牆 firewalld 實用操作

一.前言 Centos7以上的發行版都試自帶了firewalld防火牆的,firewalld去帶了iptables防火牆。其原因是iptables的防火牆策略是交由核心層面的netfilter網路過濾器來處理的,而firewalld則是交由核心層面的nftables包過濾框架來處理。 相較於iptables

使用KerasTensorflow設定安裝Mask RCNN(demo執行)

參考: https://blog.csdn.net/wc781708249/article/details/79438972 Mask RCNN paper: https://arxiv.org/pdf/1703.06870.pdf video 概述如何安裝 Step 1: cr

CentOS7防火牆firewalld的使用

1、firewalld的基本使用 啟動: systemctl start firewalld 關閉: systemctl stop firewalld 檢視狀態: systemctl status firewalld 開機禁用 : systemctl disable firewa

Centos7防火牆firewall與iptables設定

iptables配置 yum install iptables -y iptables(選項)(引數)   -P:定義規則鏈中的預設策略;   -t<表>:指定要操縱的表;   -A:向規則鏈中新增條目;   -D:從規則鏈中刪除條目;   -I:向規則鏈中插入條目;   -R:替換

CentOS7防火牆firewalld配置可訪問埠

cd /etc/firewalld/zones 這個目錄下有個public.xml檔案,修改或新增: <zone>   <short>Public</short&g

CentOs7 防火牆firewalld基本使用方法

1.firewalld的基本使用 啟動: systemctl start firewalld 檢視狀態: systemctl status firewalld 停止: systemctl di

使用KerasTensorflow設定安裝Mask RCNN

參考: 概述如何安裝 Step 1: create a conda virtual environment with python 3.6 Step 2: install the dependencies Step 3: Clone the

CentOS7防火牆firewalld使用

1、firewalld的基本使用 啟動: systemctl start firewalld 關閉: systemctl stop firewalld 檢視狀態: systemctl status firewalld 開機禁用: systemctl disable firewalld 開機啟用: syst

mysql 使用者管理許可權設定Mysql初始化root密碼允許遠端訪問

grant 普通資料使用者,查詢、插入、更新、刪除 資料庫中所有表資料的權利。 grant select on testdb.* to [email protected]’%’ grant insert on testdb.* to [email protected]’%’ grant

centos7防火牆firewalld管理

centos7 防火牆為firewalld 1、firewalld的基本使用 啟動: systemctl start firewalld 檢視狀態: systemctl status fire

CentOS7 防火牆 firewalld使用方法

1、firewalld的基本使用 啟動: systemctl start firewalld 檢視狀態 systemctl status firewalld 停止: systemctl disable firewalld

centos7防火牆firewalld守護程序

檢視防火牆狀態 systemctl status firewalld.service 啟動防火牆 systemctl start firewalld.service 關閉防火牆 systemctl stop firewalld.service 重新啟動防火牆 對埠的操作:

關於學習CentOS7使用firewalld開啟關閉防火牆

1.firewalld簡介 firewalld是centos7的一大特點,主要有兩個優點:一是支援動態更新,不需要重啟服務;二就是加入了防火牆的“zone”概念。 firewalld有圖形介面和工具介面,firewalld的字元介面管理工具是 firewall-cmd,firewalld預

centos7防火牆關閉設定

systemctl stop firewalld.service systemctl disable firewalld.service 開始防火牆: systemctl start firewalld.service systemctl enable firewalld.service 檢

centos7使用firewalld打開關閉防火墻端口

動態 所有 cti get 永久 字符 usr 動態添加 rop 1、firewalld簡介 firewalld是centos7的一大特性,最大的好處有兩個:支持動態更新,不用重啟服務;第二個就是加入了防火墻的“zone”概念 firewalld有圖形界面和工具界面,由於我

centos6centos7防火牆的關閉

原文 CentOS6.5檢視防火牆的狀態: 1 [[email protected] ~]$service iptable status   顯示結果: 1 2 3 4 5