华为云 ECS 实战(二):Linux 服务器安全加固与 SSH 密钥登录
【华为云 ECS 实战(二)】2核2G云服务器安全加固:安全组配置与 SSH 密钥登录实践
一、前言
购买云服务器后,很多人首先关注的是部署网站、运行 Docker 容器或搭建监控面板,却容易忽略服务器自身的安全问题。
对于长期运行的 Linux 云服务器而言,公网 SSH 端口暴露、密码认证、过度开放的安全组规则,都可能增加安全风险。
本文以华为云弹性云服务器 ECS 为例,介绍如何通过安全组、SSH 密钥认证和系统日志检查,提升服务器的基础安全性。
示例环境:
-
云平台:华为云 ECS
-
服务器规格:2核 CPU、2GB 内存
-
操作系统:Ubuntu 22.04 / 24.04 LTS
-
本地管理设备:macOS
-
远程连接协议:SSH
本文以操作教程形式展示配置方法,实际操作前请根据服务器环境做好备份。
二、合理配置华为云安全组
安全组相当于云服务器的第一道网络防线,可以控制哪些外部请求能够访问服务器。
进入华为云控制台,找到对应的 ECS 实例,进入安全组配置页面。
建议遵循最小权限原则:
| 端口 | 用途 | 建议 |
|---|---|---|
| 22/TCP | SSH 远程管理 | 仅允许可信 IP |
| 80/TCP | HTTP 网站 | 按业务需要开放 |
| 443/TCP | HTTPS 网站 | 按业务需要开放 |
| 其他端口 | 应用服务 | 根据实际需求配置 |
尤其需要注意,不应长期将 SSH 管理端口对所有公网地址开放。
如果管理设备使用固定公网 IP,可以将 SSH 规则的源地址限制为对应的 /32 地址。
如果使用动态公网 IP,则需要在地址变化时同步调整规则,避免无法远程登录。
三、使用 SSH 密钥替代密码认证
传统密码登录存在被暴力猜测的风险,而 SSH 密钥认证使用公钥和私钥完成身份验证,可以降低弱密码带来的安全隐患。
1. 在本地生成密钥
打开 Mac 终端,执行:
ssh-keygen -t ed25519 -a 100 -f ~/.ssh/huawei_ecs_ed25519
按照提示设置密钥口令。
生成后,会得到两个文件:
-
huawei_ecs_ed25519:私钥,需要保存在本地。 -
huawei_ecs_ed25519.pub:公钥,可以添加到服务器。
查看公钥:
cat ~/.ssh/huawei_ecs_ed25519.pub
2. 将公钥添加到 ECS
先通过原有方式登录服务器,执行:
mkdir -p ~/.ssh && chmod 700 ~/.ssh
随后编辑:
nano ~/.ssh/authorized_keys
将刚才生成的公钥完整添加到文件末尾,不要删除已有公钥。
保存后执行:
chmod 600 ~/.ssh/authorized_keys
3. 验证密钥登录
在本地重新打开一个终端窗口:
ssh -i ~/.ssh/huawei_ecs_ed25519 USER@EIP
其中,USER 为服务器用户名,EIP 为弹性公网 IP。
如果能够使用私钥成功登录,说明密钥认证已经配置完成。
注意:不要在验证新连接成功之前关闭原有 SSH 会话。
四、关闭 SSH 密码认证
确认密钥登录正常后,可以进一步限制密码认证。
对于使用 OpenSSH 的 Ubuntu 系统,可以通过 SSH 配置文件进行调整。需要检查主配置文件中的 Include 指令及其他配置文件的优先级。
在确认加载规则后,编辑对应的安全配置,设置:
PubkeyAuthentication yes
PasswordAuthentication no
KbdInteractiveAuthentication no
检查配置语法:
sudo sshd -t
检查实际生效的认证参数:
sudo sshd -T | grep -E '^(pubkeyauthentication|passwordauthentication|kbdinteractiveauthentication)'
确认无误后重新加载 SSH 服务:
sudo systemctl reload ssh
再次使用新终端测试密钥登录,确保远程管理功能正常。
对于生产环境,建议提前了解华为云控制台的远程登录和故障恢复方式,避免修改错误导致无法连接。
五、检查服务器安全日志
安全加固不仅是修改配置,还包括定期检查登录行为。
Ubuntu 系统可以使用下面的命令查看 SSH 服务最近一天的日志:
sudo journalctl -u ssh --since "24 hours ago" --no-pager
重点关注:
-
是否出现大量失败的认证请求。
-
是否存在不认识的登录来源。
-
是否有异常的管理员操作。
如果发现可疑行为,应进一步检查服务器账号、密钥配置及相关服务。
六、低配置服务器的安全建议
对于 2核2G 的轻量云服务器,我更倾向于优先使用系统和云平台自带的安全能力,而不是直接安装大量后台安全软件。
原因主要有三个:
-
降低资源占用。 尽量将有限的内存留给实际业务。
-
减少管理复杂度。 避免多个防火墙工具、管理面板产生规则冲突。
-
方便长期维护。 安全组、密钥认证、系统更新和日志检查能够形成基础防护体系。
如果服务器同时运行 Docker,还应特别关注容器端口映射与主机防火墙之间的关系,避免误以为设置了防火墙规则就一定阻断了容器服务。
七、总结
通过本次配置,可以建立一套适合个人开发者和轻量云服务器的基础安全管理方案:
-
通过华为云安全组减少不必要的公网暴露。
-
使用 SSH 密钥认证降低密码攻击风险。
-
在验证可正常登录后,再禁用 SSH 密码认证。
-
定期检查系统日志,发现异常及时处理。
云服务器安全并不一定需要部署复杂的系统。对于个人用户而言,合理的权限控制、可靠的登录方式和持续维护,往往比安装更多工具更重要。
安全加固不是一次性的操作,而是云服务器长期稳定运行的基础。
- 点赞
- 收藏
- 关注作者
评论(0)