Linux系统防火墙限制ssh连接

我的环境使用3A云服务器搭建的centos7

本文使用自带的防火墙服务firewalld.service来对访问进行控制,主要讲限制ssh连接访问

1、先检查防火墙有没有运行,绿色代表已启动了
systemctl status firewalld
Linux系统防火墙限制ssh连接_第1张图片

如果是灰色,先启动防火墙
systemctl start firewalld
image.png

2.查看目前防火墙生效的策略,如果有关于ssh的就删除

firewall-cmd --zone=public --list-rich-rules

image.png

空空如也
删除访问限制的ssh服务

firewall-cmd --permanent --remove-service=ssh

image.png

3.配置允许访问ssh服务的控制策略
执行下面的命令,允许ip或ip段访问22端口的ssh服务,例如下面命令执行后,将允许192.168.5.0/24这个ip段允许访问ssh服务,注意端口要正确

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.5.0/24" port protocol="tcp" port="22" accept'

image.png

4.重载防火墙配置,使其生效
firewall-cmd --reload

image.png

再查看目前防火墙生效的策略,

firewall-cmd --zone=public --list-rich-rules

image.png
可以看到他已经生效了

拓展命令:
手动放行指定端口

firewall-cmd --permanent --add-port=3306/tcp

删除放行的端口

firewall-cmd --permanent --remove-port=3306/tcp

放行指定服务(系统内)

firewall-cmd --permanent --add-service=http

删除服务

firewall-cmd --permanent --remove-service=http

屏蔽指定ip地址

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.100' reject"

屏蔽指定ip地址段

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.0/24' reject"

你可能感兴趣的:(linux)