1.摘要
对于大多数新手来说,服务器安装好系统后往往会认为“万事大吉”,可以直接开始部署网站、搭建项目了。其实,情况远不是那么简单。很多新手的服务器在刚安装完系统后,反而最容易被攻击——暴力破解、被扫描器盯上、甚至被植入恶意脚本挖矿。你一定会觉得奇怪,为什么明明什么都没做,反而成了黑客的目标?
这其中最常见的原因很简单:公网IP + 默认端口 + 默认配置,简直是扫描器的“美味佳肴”。攻击者会自动扫描这些“裸露”的服务器,等待任何一个可以进入的漏洞。
今天,我要和大家分享五个关键操作,这些操作不是优化,而是关乎服务器安全的保命操作。即便你只是搭建一个简单的博客,或者做一些小的测试项目,这些步骤你都必须做。
2.立刻更改默认登录密码
这一步操作是所有安全措施中的首要任务。为什么呢?你可以想象一下,新安装的系统,root密码很容易被暴力破解。攻击者通过扫描你的服务器,直接找到22端口,然后不断尝试默认密码。你服务器刚上线的前几小时,恰恰是被暴力破解的“高峰期”。所以,第一件事就是:修改默认密码。
如何操作?
登录到服务器。
如果你是用 root 用户登录,直接输入
passwd命令。系统会要求你输入两次新密码。
建议密码要求:
至少12位
包含大小写字母、数字、特殊符号
避免使用生日、手机号、服务器IP等容易猜到的内容
这一步看似简单,却能有效挡住80%以上的低级攻击,值得你花30秒时间做。
3.禁止root远程登录
仅仅修改密码还远远不够。root用户本身就是攻击者的重点目标。为了增强安全性,你还需要禁止root用户远程登录。
步骤:
创建一个普通用户并赋予sudo权限。
adduser username usermod -aG sudo username测试新用户是否能正常使用:
su - username sudo ls确认没有问题后,再考虑禁止root登录。
这样操作后,即便攻击者能够猜到密码,拿到的也只是一个普通用户的权限,进攻难度大大增加。
4.禁止root SSH 登录
有时候,光创建新用户还不够。你还得对SSH做一些细节配置。通过修改SSH配置文件,可以彻底禁止root远程登录,从而降低被爆破的风险。
操作步骤:
打开SSH配置文件:
nano /etc/ssh/sshd_config找到
PermitRootLogin这一行,如果没有,就添加:PermitRootLogin no确保
PasswordAuthentication被设置为yes。保存并退出配置文件后,重启SSH服务:
systemctl restart ssh
注意事项:务必先确认你可以通过新用户登录到服务器,再禁用root登录。否则,你可能会把自己锁在服务器外面。
5.关闭不必要的端口
你可能觉得,服务器安装完了系统什么都没装,就不会有问题了。但实际上,很多时候“什么都没装”的服务器,竟然开启了很多不必要的端口,增加了潜在的安全隐患。你可以通过下面的步骤来查看并关闭这些端口。
操作步骤:
查看当前的开放端口:
ss -tuln你应该看到的端口至少是:
22(SSH)
80 / 443(如果你有网站)
通过防火墙(推荐使用UFW)来管理端口:
ufw enable ufw allow 22 ufw allow 80 ufw allow 443查看防火墙规则状态:
ufw status
确保只开启了必要的端口,这样即便有攻击者扫描你的服务器,也很难找到合适的入口。
6.及时更新系统
你可能认为,系统安装完了就没有问题了。其实,新系统并不等于“无漏洞”。很多时候,系统镜像本身就已经落后于一些安全补丁,这为攻击者留下了“后门”。
操作步骤:
对于Ubuntu/Debian系统:
apt update && apt upgrade -y对于CentOS/Alma/Rocky系统:
dnf update -y
保持系统的更新能有效修补已知的漏洞,降低被攻击的风险。
常见问题解答
Q1:我只是做个小测试用的服务器,真的要做这么多吗?
是的!攻击者根本不关心你做的是测试项目还是正式项目,他们只在乎你的服务器是否容易攻击。
Q2:如果不开防火墙,只依靠复杂密码可以吗?
不推荐。单纯依靠密码并不能防止端口暴露带来的风险,防火墙是最低成本、最有效的防护。
Q3:我装了面板(如宝塔/1Panel),还需要这些操作吗?
是的,面板解决的是应用层的问题,而这些操作是系统层的安全设置,两者不是一回事。
Q4:禁用了root登录后,以后会不好维护吗?
不会。使用普通用户并通过sudo执行命令不仅更安全,而且也是正规的运维方式。
Q5:完成这些操作后,服务器就不会被黑了吗?
没有“绝对安全”的事情,但这些操作能有效降低被自动化攻击和低成本攻击入侵的风险。
7.总结
很多人在服务器出问题后才匆忙去补充安全措施,但实际上,最省心的方式是一开始就把安全工作做好。这五步操作虽然简单,却能有效降低你服务器被攻击的风险。只要你花上10分钟,就能大大减少被“随便扫进来”的机会。
评论区