温馨提示×

怎样提升Ubuntu SSH的安全性

小樊
58
2025-05-27 20:23:24
栏目: 智能运维

要提升Ubuntu SSH的安全性,可以采取以下措施:

安装和配置OpenSSH服务

  • 安装OpenSSH服务器
    sudo apt update
    sudo apt install openssh-server
    
  • 启动并检查SSH服务状态
    sudo systemctl start ssh
    sudo systemctl status ssh
    
  • 配置SSH服务
    • 编辑 /etc/ssh/sshd_config 文件,设置以下参数:
      Port 2222 # 更改默认端口
      PermitRootLogin no # 禁用root登录
      PasswordAuthentication no # 禁用密码登录,推荐使用密钥登录
      Match Group sftp_users
        ChrootDirectory /home/%u
        X11Forwarding no
        AllowTcpForwarding no
        ForceCommand internal-sftp
      
    • 重启SSH服务以应用更改:
      sudo systemctl restart ssh
      

使用密钥认证

  • 生成密钥对
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    
  • 将公钥复制到服务器
    ssh-copy-id user@your_server_ip
    
  • 在客户端配置密钥认证
    • 使用PuTTYgen等工具将私钥转换为PuTTY支持的格式,并在PuTTY中配置。

配置防火墙

  • 使用UFW允许SSH连接
    sudo ufw allow ssh
    sudo ufw enable
    
  • 限制IP访问
    • 编辑 /etc/ssh/sshd_config,添加 AllowUsersAllowGroups 选项,限制允许连接的用户和组。

定期更新系统和软件

  • 保持系统和软件更新
    sudo apt update && sudo apt upgrade
    
  • 安装unattended-upgrades包实现自动更新
    sudo apt install unattended-upgrades
    

监控和日志记录

  • 查看登录日志
    sudo cat /var/log/auth.log | grep 'sshd'
    
  • 使用Fail2Ban防止暴力破解
    • 安装并配置Fail2Ban,编辑 /etc/fail2ban/jail.conf 文件。

其他安全措施

  • 禁用不必要的SSH服务
    • 关闭不需要的网络服务,减少系统的攻击面。
  • 使用强密码策略
    • 设置复杂的密码,并定期更换。
  • 启用两步验证
    • 在登录时启用两步验证,提高账户的安全性。

通过上述措施,可以显著提高Ubuntu SSH的安全性,保护系统和数据不受未经授权的访问和攻击。

0