免费监控
logo prod

资讯与帮助

服务器安全入门:扫描并关闭高危端口的防火墙设置教程

时间:2025-09-09
编辑:tance.cc

《服务器安全第一步:如何扫描并关闭不必要的危险端口?》

微信图片_2025-09-09_134052_975.png

好了,“锁匠”先生/女士,在上一篇文章的学习中,你已经能熟练地使用TCPing这个工具,去检测服务器上任意一扇门(端口)是开是关。你知道了80号门是“公共大堂”,22号门是“管理员密室”。

但今天,我们要进行一次关键的角色升级——从“锁匠”升级为这栋大楼的**“安全主管”**。

一个锁匠关心的是门能不能打开,而一个安全主管关心的则是:这扇门,它到底该不该被打开?

这是一个思维方式上的巨大转变。


安全主管的黄金法则:从“全部开放”到“默认关闭”


想象一下,你第一天来上班,接手了一栋全新的公寓大楼(你的服务器)。

一个懒惰的保安会怎么做?为了图省事,他会把大楼所有的门——从正门、后门、车库门到地下室通风口——全部敞开。他的逻辑是:“等出了事,我再去关。”

而你,作为一名顶级的安全主管,你的做法截然相反。你上任的第一件事,就是带着你的团队,把这栋大楼成千上万的门全部从外面锁死,一道都不留。

然后,你拿出一张清单,开始思考:

  • “我们需要一个正门让访客进来(网站服务),好,把80号和443号门打开。”

  • “我需要一个只有我能进的门,方便我管理大楼(远程管理),好,把22号门打开,但钥匙只给我自己。”

  • “其他的门呢?比如那个废弃的储藏室、那个旧的锅炉房?有必要开吗?完全没有!”

于是,你最终只开放了三扇门,其余所有的门都处于永久性的关闭状态。

这就是专业网络安全领域最重要的基石——“默认拒绝”(Default Deny),也叫**“最小权限原则”**。它的核心思想是:永远不要开放任何你没有明确理由需要开放的端口。

因为每一个对外敞开的端口,都是一个潜在的攻击面。就像你家开的窗户越多,小偷能钻进来的机会就越大。我们的任务,就是把所有不必要的窗户,都用水泥牢牢封死。


第一步:安全大巡查 —— 像“白帽黑客”一样审计你的大楼


在封窗之前,我们得先搞清楚现在到底有多少窗户是开着的。我们需要从两个不同的视角,对我们的大楼进行一次彻底的安全巡查。

1. 从“街道”上看(外部扫描)

黑客在攻击你之前,会做的第一件事,就是在街上用望远镜观察你的大楼,看看哪些门窗没关。我们也得用同样的方式来审视自己。

这个过程非常简单,我们依然可以使用 观图数据(guantu.com)的【TCPing检测】工具。它就是我们的“高倍望远镜”。

你需要做的,就是像一个耐心的侦探,去检查那些最常见、也最容易被攻击的“高危门牌号”。这里我为你列出了一份“重点巡查清单”:

  • 21端口 (FTP): 传统的“货运通道”,用于上传文件,但不加密,很不安全。

  • 22端口 (SSH): 你的“管理员密室”,这个门绝对不能对所有人敞开。

  • 3306端口 (MySQL): 数据库的“核心档案室”,如果这个门对外开着,等于把你的用户数据暴露在风险之下。

  • 3389端口 (RDP): Windows服务器的“远程桌面”,同样是管理员级别的入口,风险极高。

  • 6379端口 (Redis): 高性能缓存数据库的入口。

  • 27017端口 (MongoDB): 另一种流行数据库的入口。

你的任务:打开观图数据的TCPing工具,用你的服务器IP地址,把上面列表里的端口号,一个一个地去检测一遍。

记录下所有显示“成功”或“开放”的端口。这些,就是从街上能看到的、你家敞开的“门窗”。

2. 从“楼内”看(内部检查)

外部扫描能看到什么,不代表那就是全部。有些服务可能因为配置问题,只在楼内“开放”,或者启动了一些你根本不知道的服务。

你怎么知道楼内到底有哪些房间正在“开门营业”呢?

这就好比查看电脑上的“任务管理器”或手机上的“正在运行的应用”列表。你的服务器通常也有一个类似的管理面板。

你的任务:登录你的云服务器管理后台,或者是你安装的网站控制面板(比如cPanel,Plesk,或者国内用户常用的宝塔面板等)。

在面板的首页或系统状态页面,仔细寻找类似**“服务状态”、“运行中的进程”、“系统负载”**这样的模块。这里通常会列出当前正在运行的核心服务,比如 Nginx(Web服务), MySQL(数据库), sshd(SSH服务) 等。

把你在这里看到的正在运行的服务,和你上一步从外部扫描到的开放端口,做一个对比。

  • 对上了吗? 比如,你看到MySQL正在运行,并且外部也扫描到3306端口开放。

  • 有没有意外发现? 比如,你从没想过要用FTP,但内部检查发现FTP服务竟然在运行,外部扫描也显示21端口是开放的。

通过这一内一外的交叉检查,你现在手里应该已经有了一份非常精确的“待处理风险清单”。


第二步:加固防线 —— 用“防火墙”封死不必要的门


好了,清单在手,现在我们开始动手封门。请记住,我们不需要用任何复杂的命令行,这一切都可以在网页上通过点点鼠标完成。

核心武器:云服务商的“安全组”

这是你的第一道防线,也是最坚固、最重要的“小区围墙”

“安全组”是所有云服务商提供的核心安全功能。它是一个虚拟防火墙,工作在你的服务器之外。你可以把它想象成在你服务器这栋“大楼”所在的整个“小区”外面,建立起的一道高墙。

这道墙默认是完全封闭的。你需要亲手在墙上“开凿”几个受你控制的、带有安检的“大门”,允许访客进入。如果不开凿,任何人都无法靠近你的大楼。

如何设置这道“小区围墙”?

  1. 登录你的云服务商控制台(阿里云、腾讯云等)。

  2. 找到 “安全组” 的管理页面(通常在“网络”或你的服务器实例管理页面附近)。

  3. 找到你的服务器正在使用的那条安全组规则,点击“编辑”或“配置规则”。

  4. 你会看到 “入方向规则”(Inbound Rules)的列表。这就是“允许谁从哪个门进来”的白名单。

  5. 开始封门! 审视列表里的每一条规则,问自己一个问题:“我真的需要它吗?” 如果答案是否定的,或者你不确定,那就果断地删除它

一个标准Web服务器的“黄金安全组模板”应该是这样的:

目的 (要开哪个门)来源 (允许谁进来)描述
80端口 (HTTP)所有人 (0.0.0.0/0)允许全世界的访客看你的网站。
443端口 (HTTPS)所有人 (0.0.0.0/0)允许全世界的访客安全地看你的网站。
22端口 (SSH)只有你自己的IP (x.x.x.x/32)仅允许你从家里或公司的电脑远程管理。

如何找到自己的IP? 很简单,在百度搜索“IP”,显示出来的就是你当前的公网IP。

按照这个模板配置好,就意味着,你的“小区围墙”只开了三个门:一个80,一个443,还有一个只有你自己有钥匙的22号门。至于数据库、FTP等所有其他端口,在这道墙的层面,就已经被彻底拦截了。

额外防线:网站控制面板的防火墙

如果你的服务器上安装了宝塔面板这类工具,它们通常也自带一个“防火墙”功能(通常在“安全”菜单里)。你可以把它看作是“公寓楼”自己的门禁系统,作为第二层防护。

你可以进去检查一下,确保里面的规则和你在云服务商那里设置的安全组是一致的。这提供了双重保障。

干得漂亮,安全主管!

通过今天的巡查和加固工作,你已经将你的服务器从一个四面漏风的“毛坯房”,改造成了一座壁垒森严的“数字堡垒”。你大大降低了它被自动化程序扫描和攻击的风险,为你的网站和数据安全,迈出了最坚实的一步。

现在,我们的堡垒已经足够坚固。但是,我们对外开放的那扇最重要的“正门”(80/443端口),访客进出时的数据传递,还是需要更高级别的安全保障。

在明天的模块中,我们将聚焦于这扇最重要的“大门”,学习如何为它装上最高级别的“加密安全锁”——也就是HTTPS与SSL证书。确保所有进出你网站的数据都经过加密,彻底保护你和用户的隐私。敬请期待!



客服
意见反馈