快速关闭非业务端口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速关闭非业务端口相关的知识,希望对你有一定的参考价值。

    服务器开放的端口,对于攻击者来说,其实就是一个入口点,一旦入口点存在安全风险,那么攻击者就会集中精力对该端口进行攻击,但是某些管理员在部署相关业务的时候,并没有对服务器开放的端口进行检查,导致开放了很多非业务端口,一旦开放的端口被攻击者利用(如windows的445端口),那么即使你业务(端口)安全防护措施做得多好也是无济于事的!因此我们在服务器上面部署业务后,一定需要及时关闭那些非业务端口,那么我们怎么知道我们开放了哪些端口?我们应该怎么关闭这些端口呢?

  • 查看开放的端口

    查看开放的端口我们可以使用netstat命令来进行查看,该命令windows和linux都是支持的,对于windows,我们可以使用

netstat -ano

来快速查看开放的端口以及对应的PID号,如下图:

技术分享


    对于linux系统,我们可以使用

netstat -anp

来快速查看我们开放的端口、PID以及对应的程序名称(服务),如下图:

技术分享

    通过使用以上的方法,我们可以查看我们开放了什么端口,然后判断出什么端口是我们需要的,什么端口是我们不需要的,对于不需要的,我们应该及时关闭!

  • 关闭非业务端口

    当我们找出了哪些端口是我们不需要的,我们应该把这些端口直接关闭,以防被攻击者利用!

对于linux系统来说,我们可以使用命令

kill PID

 PID是上面查出来的具体PID,这样就可以关闭不需要的端口了。另外我们可以使用命令

sudo netstat -anp | grep port

 或者

lsof -i:port

port是具体的端口号,这样可以查看单独端口对应的PID,查看PID即可关闭非业务端口了!

    对于windows系统来说,在我们知道那些端口是不需要的时候,我们可以使用快捷键【Ctrl+shift+Esc】打开任务管理器,选择【服务】项,查找PID对应的服务(描述即为服务名称),可以通过鼠标右键进行停止,也可以打开服务,查找对应的服务,然后进行禁止相关服务,也可使用命令 net stop 服务名称 进行禁止!另外我们可以使用

netstat -ano | findstr "端口"

来单独查看某一端口的PID号。

    如果这种方法不行,建议使用防火墙策略进行端口限制!

  • 验证端口关闭是否成功

    在我们使用了上述方法后,我们还需要验证端口是否关闭成功,如果是直接关闭的,那我们可以使用查询开放的端口来进行验证,如果我们是使用防火墙做的策略,那么我们可以让一个互通的主机使用命令

telnet ip 端口

来进行查看端口是否封堵成功,端口是具体端口号,如果显示以下信息表示成功封堵!

正在连接xx.xx.xx.xx...无法打开到主机的连接。 在端口 xx: 连接失败

反之封堵未成功!

本文出自 “eth10” 博客,请务必保留此出处http://eth10.blog.51cto.com/13143704/1954172

以上是关于快速关闭非业务端口的主要内容,如果未能解决你的问题,请参考以下文章

如何在Centos 7快速开启端口

c#代码片段快速构建代码

C# 最有用的(自定义)代码片段是啥? [关闭]

有人可以解释以下 R 代码片段吗? [关闭]

有没有办法关闭代码片段中的命名建议?

PXC集群修改业务访问端口