华为云 ECS 实战(二):Linux 服务器安全加固与 SSH 密钥登录

举报
yd_229180646 发表于 2026/10/23 10:10:44 2026/10/23
【摘要】 【华为云 ECS 实战(二)】2核2G云服务器安全加固:安全组配置与 SSH 密钥登录实践一、前言购买云服务器后,很多人首先关注的是部署网站、运行 Docker 容器或搭建监控面板,却容易忽略服务器自身的安全问题。对于长期运行的 Linux 云服务器而言,公网 SSH 端口暴露、密码认证、过度开放的安全组规则,都可能增加安全风险。本文以华为云弹性云服务器 ECS 为例,介绍如何通过安全组、S...

【华为云 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 的轻量云服务器,我更倾向于优先使用系统和云平台自带的安全能力,而不是直接安装大量后台安全软件。

原因主要有三个:

  1. 降低资源占用。 尽量将有限的内存留给实际业务。

  2. 减少管理复杂度。 避免多个防火墙工具、管理面板产生规则冲突。

  3. 方便长期维护。 安全组、密钥认证、系统更新和日志检查能够形成基础防护体系。

如果服务器同时运行 Docker,还应特别关注容器端口映射与主机防火墙之间的关系,避免误以为设置了防火墙规则就一定阻断了容器服务。

七、总结

通过本次配置,可以建立一套适合个人开发者和轻量云服务器的基础安全管理方案:

  • 通过华为云安全组减少不必要的公网暴露。

  • 使用 SSH 密钥认证降低密码攻击风险。

  • 在验证可正常登录后,再禁用 SSH 密码认证。

  • 定期检查系统日志,发现异常及时处理。

云服务器安全并不一定需要部署复杂的系统。对于个人用户而言,合理的权限控制、可靠的登录方式和持续维护,往往比安装更多工具更重要。

安全加固不是一次性的操作,而是云服务器长期稳定运行的基础。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。