配置安全的SSH连接涉及多个方面,包括使用强密码、配置SSH服务器、使用SSH密钥认证等。以下是一些关键步骤和最佳实践:
1. 更新系统和软件
确保你的Linux系统和OpenSSL都是最新的,以防止已知的安全漏洞。
sudo apt update && sudo apt upgrade -y
2. 配置SSH服务器
编辑SSH服务器的配置文件 /etc/ssh/sshd_config。
sudo nano /etc/ssh/sshd_config
进行以下配置:
-
禁用root登录:
PermitRootLogin no -
使用强密码策略:
PasswordAuthentication yes ChallengeResponseAuthentication no UsePAM yes -
限制用户登录:
AllowUsers your_username -
更改默认SSH端口:
Port 2222 -
启用公钥认证:
PubkeyAuthentication yes -
禁用不必要的服务:
UsePrivilegeSeparation sandbox X11Forwarding no Subsystem sftp /usr/lib/openssh/sftp-server -
配置SSH密钥认证:
AuthorizedKeysFile .ssh/authorized_keys
3. 重启SSH服务
保存并退出配置文件后,重启SSH服务以应用更改。
sudo systemctl restart sshd
4. 生成SSH密钥对
如果你还没有SSH密钥对,可以使用以下命令生成:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按照提示操作,通常会将密钥存储在 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub。
5. 将公钥添加到服务器
将生成的公钥 (id_rsa.pub) 添加到服务器的 ~/.ssh/authorized_keys 文件中。
ssh-copy-id user@server_ip -p 2222
6. 配置防火墙
确保防火墙允许SSH连接。
sudo ufw allow 2222/tcp
sudo ufw enable
7. 使用SSH密钥认证登录
现在你可以使用SSH密钥认证登录服务器:
ssh -p 2222 user@server_ip
8. 监控和日志
定期检查SSH日志文件 /var/log/auth.log 或 /var/log/secure,以便及时发现异常活动。
sudo tail -f /var/log/auth.log
9. 使用Fail2Ban
Fail2Ban可以防止暴力破解攻击。安装并配置Fail2Ban:
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
编辑Fail2Ban配置文件 /etc/fail2ban/jail.local,添加以下内容:
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 600
10. 定期更新和审计
定期更新系统和软件,进行安全审计,确保没有未授权的访问和潜在的安全风险。
通过以上步骤,你可以配置一个安全的SSH连接,保护你的服务器免受未经授权的访问。
以上就是关于“Linux OpenSSL如何配置安全的SSH连接”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm