linux 封禁端口,如何在Linux服务器中使用防火墙封禁端口?

390a.png

我们知道服务器的防火墙是一种以软件为基础的网络安全系统,或者在某些情况下,是一种以硬件为基础的网络安全系统。它能自动监控系统中的流量流入和流出,并根据预先配置的规则阻止某些类型的数据流。

在Linux服务器中,Firewalld和UFW是两个最流行的防火墙软件。它们可以用于各种流量的阻断;从阻断某个网站,到阻断某个特定的服务器ip。

今天我们将学习如何使用这两款防火墙来封禁Linux中的某个特定端口。

列出Linux中的开放端口

运行以下命令来查找Linux中的开放端口。

$ ss -tuln | grep LISTEN

390b.png

举个例子,我们将尝试使用两个防火墙来阻止端口22(SSH使用的端口)。

1、使用Firewalld防火墙封禁端口

Firewalld在Linux发行版中默认是不可用的,它可以从官方仓库中安装。

在Debian、Ubuntu和类似的发行版中,运行以下命令安装它。

$ sudo apt install firewalld

在RedHat、Fedora、CentOS和类似的发行版中安装它。

$ sudo yum install firewalld

通过运行验证firewalld防火墙是否已经启动。

$ sudo service firewalld status

390c.png

现在,使用Firewalld来封禁一个端口的命令是:

$ sudo firewall-cmd --remove-port = 22 / tcp --permanent

$ sudo firewall-cmd --remove-port = 22 / tcp --permanent

首先,'firewall-cmd'是Firewalld的命令,因为Firewalld本身是作为后台监听守护进程运行的。其次,22是要封锁的端口,'tcp'和'udp'是该端口上要封锁的传输层协议。标识'--permanent'可以在重启后仍然保持端口封禁状态。

运行下面的命令来实现这些改变。

$ sudo firewall -cmd --reload

SSH现在在你的系统上被阻止了,任何试图通过SSH连接的客户端都会得到一个错误。你可以通过运行同样的命令,用'--add-port'代替删除来再次启用SSH。

$ sudo firewall-cmd --add-port=22/tcp --permanent

$ sudo firewall-cmd --add-port=22/udp --permanent

2、使用UFW防火墙封禁端口

UFW是uncomplicated firewall的缩写,它在Linux发行版中是默认可用的。首先,用以下命令启用UFW。

$ sudo ufw enable

用下面的命令来阻止一个端口。

$ sudo ufw deny 22

现在所有的SSH连接将被阻止。通过SSH访问系统将导致 "连接拒绝 "错误。

要再次启用SSH,请运行

$ sudo ufw allow 22

在这篇文章中,我们学习了如何在Linux服务器中使用两个防火墙来阻止一个端口:Firewalld和UFW。当然,有更多的选项可以使用这些防火墙来阻止流量;包括只阻止传入的连接但允许正在进行的连接等,大家可以自己研究一下。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值