centos

CentOS SSH如何配置安全访问

小樊
38
2025-03-15 10:52:59
栏目: 智能运维

在CentOS系统中配置SSH安全访问是一个重要的步骤,以确保服务器的安全性和数据的保密性。以下是一些常见的配置步骤和建议:

1. 更新系统

首先,确保你的CentOS系统是最新的:

sudo yum update -y

2. 修改SSH默认端口

默认情况下,SSH使用端口22。为了增加安全性,可以修改默认端口:

sudo vi /etc/ssh/sshd_config

找到#Port 22这一行,去掉注释并修改为你选择的端口号(例如2222):

Port 2222

3. 禁用root登录

为了防止root用户直接通过SSH登录,可以在sshd_config文件中添加或修改以下配置:

PermitRootLogin no

4. 使用公钥认证

使用公钥认证比密码认证更安全。首先,生成SSH密钥对:

ssh-keygen -t rsa -b 4096

将公钥复制到目标服务器的~/.ssh/authorized_keys文件中:

ssh-copy-id user@remote_host

5. 配置SSH密钥认证

确保sshd_config文件中启用了公钥认证:

PubkeyAuthentication yes

6. 限制SSH访问

可以通过配置sshd_config文件来限制特定IP地址或IP范围的访问:

AllowUsers user1 user2

或者限制IP范围:

AllowUsers user1@192.168.1.0/24 user2@192.168.1.0/24

7. 启用防火墙

确保防火墙允许SSH连接:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

8. 使用Fail2Ban

Fail2Ban可以防止暴力破解攻击。安装并配置Fail2Ban:

sudo yum install fail2ban -y
sudo systemctl start fail2ban
sudo systemctl enable fail2ban

编辑Fail2Ban的配置文件/etc/fail2ban/jail.local,添加以下内容:

[ssh]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/secure
maxretry = 3
bantime = 600

9. 定期更新SSH

定期更新SSH软件包以修复已知的安全漏洞:

sudo yum update openssh-server -y

10. 监控和日志

确保SSH日志被正确记录和监控。检查/var/log/secure文件以查看SSH连接尝试和其他相关事件。

通过以上步骤,你可以显著提高CentOS系统上SSH的安全性。记得定期检查和更新你的安全配置,以应对新的威胁和漏洞。

0
看了该问题的人还看了