当前位置:首页 > Centos > 正文

CentOS SSH安全配置(全面加固sshd服务,提升Linux服务器远程登录安全性)

在当今的网络环境中,CentOS SSH安全配置是每个系统管理员必须掌握的基础技能。SSH(Secure Shell)作为远程管理Linux服务器的核心工具,若配置不当,极易成为黑客入侵的突破口。本文将手把手教你如何对CentOS系统的sshd服务进行安全加固,即使是Linux小白也能轻松上手。

CentOS SSH安全配置(全面加固sshd服务,提升Linux服务器远程登录安全性) SSH安全配置 sshd安全加固 Linux服务器SSH防护 SSH远程登录安全 第1张

一、为什么要进行sshd安全加固?

默认安装的OpenSSH服务虽然可用,但存在诸多安全隐患,例如:

  • 允许root用户直接登录
  • 使用弱密码认证方式
  • 监听所有网络接口
  • 未限制失败登录尝试次数

通过合理的sshd安全加固,可以显著降低被暴力破解或未授权访问的风险。

二、CentOS SSH安全配置详细步骤

1. 备份原始配置文件

在修改任何配置前,请先备份原始文件:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

2. 禁止root用户直接登录

编辑sshd配置文件:

sudo vi /etc/ssh/sshd_config

找到以下行并修改为:

PermitRootLogin no

3. 更改默认SSH端口(可选但推荐)

将默认的22端口改为其他高位端口(如2222),可减少自动化扫描攻击:

Port 2222

⚠️ 注意:修改端口后,记得在防火墙中开放新端口,并在连接时指定端口号。

4. 禁用密码认证,启用密钥认证(强烈推荐)

密钥认证比密码更安全。首先确保你已生成SSH密钥对并上传公钥到服务器,然后在配置文件中设置:

PasswordAuthentication noPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys

5. 限制登录用户和IP(按需配置)

只允许特定用户登录:

AllowUsers alice bob

或限制特定IP段访问(需配合防火墙):

# 在sshd_config中不直接支持IP限制,建议使用firewalld或fail2ban

6. 设置登录超时与最大认证尝试次数

ClientAliveInterval 300ClientAliveCountMax 2MaxAuthTries 3

上述配置表示:5分钟无操作自动断开,最多允许3次认证尝试。

三、重启SSH服务并验证配置

修改完成后,检查配置语法是否正确:

sudo sshd -t

若无报错,重启sshd服务:

sudo systemctl restart sshd

请务必在另一个终端保持登录状态,以防配置错误导致无法连接!

四、额外建议:配合Fail2ban增强防护

安装Fail2ban可自动封禁多次失败登录的IP地址,是Linux服务器SSH防护的重要补充:

sudo yum install fail2ban -ysudo systemctl enable fail2bansudo systemctl start fail2ban

结语

通过以上步骤,你的CentOS服务器已经具备了基础的SSH远程登录安全防护能力。安全是一个持续的过程,建议定期审查日志(/var/log/secure)、更新系统,并关注最新的安全公告。记住:没有绝对的安全,只有不断加固的防线。