Firewalld 防火墙

############启用firewalld##########
yum install -y firewalld firewall-config #安装防火墙和图形界面
systemctl start firewalld #启动防火墙
systemctl enable firewalld #开机自启动防火墙
systemctl disable firewalld #开机不自启防火墙
systemctl stop firewalld #关闭防火墙

##########使用命令行接口配置防火墙################
firewall-config #显示图形界面
firewall-cmd --state #显示防火墙状态
firewall-cmd --get-active-zones #显示正在运行
firewall-cmd --get-default-zone #显示当前默认环境
firewall-cmd --get-zones #显示所有存在的环境
firewall-cmd --zone=public --list-all #显示public环境里的信息
firewall-cmd --get-services #显示所有的服务
firewall-cmd --list-all-zones #显示所有环境中的信息
firewall-cmd --set-default-zone=dmz #更改dmz为默认域

##############防火墙更改IP 网卡#################################
在虚拟机desktop中进行测试:
真机:172.25.254.51
dektop中两块网卡:
eth0: 172.25.254.151
eth1: 192.168.0.151
server中一块网卡:
eth0: 192.168.0.251

前提:启动httpd服务

firewall-cmd --add(添加)-source=172.25.254.55 --zone=trusted #此时真机可以访问虚拟机desktop
在这里插入图片描述
firewall-cmd --remove(移除)-source=172.25.254.55 --zone=trusted #此时真机不可以访问虚拟机desktop
在这里插入图片描述
firewall-cmd --remove-interface=eth1 --zone=public #移除虚拟网卡eth1
firewall-cmd --list-all #查看eth1已经被移除
在这里插入图片描述
在这里插入图片描述
firewall-cmd --add-interface=eth1 --zone=trusted
#将eth1放到trusted域中 此时虚拟机server可以访问desktop而真机不能呢个访问desktop 访问方式是真机:172.25.254.151 server中输入 :192.168.0.151
在这里插入图片描述
在这里插入图片描述
firewall-cmd --list-all --zone=trusted #查看eth1已经添加到trusted中
firewall-cmd --change(另一种用来改变网卡位置的方法)-interface=eth1 --zone=public #将eth1添加到public中
firewall-cmd --list-all #查看添加成功

在这里插入图片描述

###############################################################

火墙访问的数据:cd /usr/lib/firewalld
火墙访问的策略:cd /etc/firewalld/zones

–complete reload:刷新火墙状态,会断开连接
–reload:刷新火墙状态

–permanent
等同于 cd /usr/lib/firewalld/services 中写 服务名.xml文件

firewall-cmd --list-services #显示所允许的服务
firewall-cmd --get-services #显示所有服务

cd /usr/lib/firewalld #防火墙访问的数据
ls
icmptypes services(服务文件配置) zones(域)

可以书写.xml文件此过程等同于 --permanent --add-service=xxxx 添加允许服务

例:
vim iscsi
{

<?xml version="1.0" encoding="utf-8"?> ISCSI iscsi service. #对sicsi的描述 }

等同于 firewall-cmd --permanent --add-service=iscsi
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
firewall-cmd --list-ports #显示允许的端口
firewall-cmd --add-port=8080/tcp #添加允许的端口
firewall-cmd --list-ports
在这里插入图片描述

firewall-cmd --permanent --remove-service=ssh #删除ssh服务
firewall-cmd --reload #刷新防火墙服务
firewall-cmd --list-all #查看是否已经删除服务

真机ssh连接desktop后依旧可以操作
在这里插入图片描述
firewall-cmd --complete-reload

此时已经连接desktop的真机,不能进行操作
在这里插入图片描述

##############################

filter
nat
mangle
在这里插入图片描述

#实验环境
desktop(拥有两块网卡,且不为同一网段):

eth0:172.25.254.251 eth1:192.168.0.251

server(一块网卡,和desktop同网段):

eth1:192.168.0.151

真机(仅和desktop有一个同网段的网卡):

ip:172.25.254.55

#############################

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.55 -p tcp --dport 80 -j REJECT

#拒绝250用户访问http

测试:
浏览器中输入:172.25.254.251 #拒绝访问
在这里插入图片描述

######################################

firewall-cmd --permanent --add-masquerade
firewall-cmd --reload
firewall-cmd --list-all

masquerade:yes #将masquerade的状态改为yes

desktop(双网卡):
firewall-cmd --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.55 #通过ssh(22端口)连接desktop的用户转连接向真机(ip:172.25.254.55)

firewall-cmd --list-all #显示是否添加成功

#当其他ip通过ssh连接desktop时访问的是真机
在这里插入图片描述
########################################

server:
vim /etc/sysconfig/network-scripts/ifcfig-eth0
{
GATEWAY=192.168.0.151 #设置网关
}
systemctl restart network
route -n #查看是否设置成功

ping 172.25.254.55 #可以ping通
在这里插入图片描述
########################################################
-t table(表名)
-j 添加一个动作
-m 状态
-A 添加(默认最后面)
-I 插入(默认最前面)
-D 删除
-R 替换
-F 刷新
-N 链名 #新建一个链
-E 重命名
-X 删除一个链名
-P 修改默认规则(ACCEPT(允许),DOPT(丢弃),REJECT(拒绝)),但是不能修改 REJECT为其他规则
-Z 将new全部转化为related,established状态
iptables-save > /etc/sysconfig/iptables #保存
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #开机不自启动防火墙
systemctl mask firewalld #锁定防火墙
yum install iptables -y #下载 iptables
systemctl start iptables #启动 iptables
systemctl enble iptables #开机自启动 iptables

iptables -nL在这里插入图片描述

iptables -t filter -nL #查看 filter 内容
在这里插入图片描述
iptables -t nat -nL #查看 nat 内容在这里插入图片描述

iptables -t filter -A -p tcp --dport 22 -j ACCEPT(允许) #添加
iptables -nL
iptables -t filter -A INPUT -s 172.25.254.55 -p tcp --dport 22 -j REJECT(拒绝)#添加 ip 55 用户,拒绝访问
iptables -nL
#此时 55 用户依旧可以访问,读取顺序自上向下,先读取允许所有,所以 55 用户依旧可以访问在这里插入图片描述

iptables -D INPUT 2 #删除INPUT第二行内容
iptables -nL
在这里插入图片描述
iptables -t filter -I INPUT -s 172.25.254.55 -p tcp --dport 22 -j REJECT #插入
iptables -nL
iptables -t filter -R INPUT 2 -s 172.25.254.55 -p tcp --dport 22 -j REJECT #替换第二行
iptables -nL
在这里插入图片描述
在这里插入图片描述

####################################################在这里插入图片描述#####################

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW lo -j ACCEPT #
iptables -A INPUT -m state --state NEW -i lo -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 3128 -j ACCEPT
在这里插入图片描述

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.254.251
iptables -t nat -nL在这里插入图片描述

#server(ip:192.268.0.151)可以ping通真机(ip:172.25.254.55)
在这里插入图片描述
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j DNAT --to-dest 192.168.0.151:22
iptables -t nat -nL
在这里插入图片描述
#真机(ip:172.25.254.55)连接desktop(eth0:172.25.254.251 eth1:192.162.0.251)时转到server(ip:192.268.0.151)
在这里插入图片描述

semanage port -l | grep httpd
semanage port -a -t httpd_port -p tcp 8888
semanage port -l | grep httpd
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值