redhat enterprise linux7已經預設使用firewalld作為防火牆,其使用方式已經變化。基於iptables的防火牆被預設不啟動,但仍然可以繼續使用。
rhel7中有幾種防火牆共存:firewalld、iptables、ebtables等,預設使用firewalld作為防火牆,管理工具是firewall-cmd。rhel7的核心版本是3.10,在此版本的核心裡防火牆的包過濾機制是firewalld,使用firewalld來管理netfilter,不過底層呼叫的命令仍然是iptables等。因為這幾種daemon是衝突的,所以建議禁用其他幾種服務
centos7預設的防火牆不是iptables,而是firewalle.
[root@pg12m ~]# systemctl status iptables
unit iptables.service could not be found.
vi /etc/sysconfig/iptables 檔案是空的
安裝iptables
命令:yum install iptables-services
安裝完iptales以後
[root@pg12m ~]# cat /etc/sysconfig/iptables
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us 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 -j accept
-a input -i lo -j accept
-a input -p tcp -m state --state new -m tcp --dport 22 -j accept
-a input -j reject --reject-with icmp-host-prohibited
-a forward -j reject --reject-with icmp-host-prohibited
commit
[root@pg12m init.d]# systemctl status iptables
● iptables.service - ipv4 firewall with iptables
loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
active: inactive (dead)
systemctl start iptables.service #啟動
systemctl status iptables.service #檢視執行狀態
systemctl restart iptables.service #重啟
systemctl stop iptables.service #停止
systemctl enable iptables.service #設定開機啟動
systemctl disable iptables.service #禁止開機啟動
開啟firewalld防火牆以後,預設就是出局不受控制,入局受控制。
1 檢視防火牆狀態
systemctl status firewalld
2 開啟與關閉防火牆
systemctl stop firewalld
systemctl start firewalld
3 開啟啟動與關閉防火牆
systemctl disable firewalld
systemctl enable firewalld
4 生效寫入配置檔案
firewall-cmd --reload
5 檢視策略
firewall-cmd --list-all
6 新增與移除服務
firewall-cmd --permanent --remove-service=dhcpv6-client
success
permanent ##永久
firewall-cmd –permanent --add-service=dhcpv6-client
success
7 firewall-cmd --set-default-zone=drop 不要使用沒有弄明白
firewall-cmd --permanent --zone=drop --change-inte***ce=ens32
是拒絕一切吧 沒有確認過
使用之前
firewall-cmd --list-all
public (active)
target: default
使用之後
firewall-cmd --list-all
drop (active)
target: drop
開啟防火牆以後檢視,目前是開啟了允許ssh和 dhcpv6-client服務,
firewall-cmd --list-all
services: ssh dhcpv6-client
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.247.1" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.247.1" port protocol="tcp" port="5432" accept"
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.31.100" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.31.100" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.247.0/24" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.247.0/24" port protocol="tcp" port="5432" accept"
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.247.0/24" port protocol="tcp" port="22" accept"
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.247.0/24" port protocol="tcp" port="5432" accept"
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --permanent --remove-port=3306/tcp
firewall-cmd --permanent --add-port=443/tcp
防火牆管理
防火牆管理是指對防火牆具有管理許可權的管理員行為和防火牆執行狀態的管理,管理員的行為主要包括 通過防火牆的身份鑑別,編寫防火牆的安全規則,配置防火牆的安全引數,檢視防火牆的日誌等。防火牆的管理一般分為本地管理 遠端管理和集中管理等。本地管理 是指管理員通過防火牆的console口或防火牆提供的鍵盤和...
CentOS7管理防火牆
一 firewalld的基本使用 啟動 systemctl start firewalld 關閉 systemctl stop firewalld 檢視狀態 systemctl status firewalld 開機禁用 systemctl disable firewalld 開機啟用 system...
ubuntu防火牆管理
ubuntu附帶了乙個相對iptables簡單很多的防火牆 配置工具 ufw ufw防火牆 即uncomplicated firewall,不複雜的防火牆,繁瑣部分的設定還是需要去到iptables 檢視防火牆狀態1 sudo ufw status 防火牆版本1 sudo ufw version 1...