要保障Ubuntu SSH的安全,可以采取以下措施:
/etc/ssh/sshd_config 文件,将端口设置为非标准端口(如2222),以减少被自动扫描工具发现的几率。Port 2222
sudo systemctl restart sshd
/etc/ssh/sshd_config 中设置:PermitRootLogin no
sudo systemctl restart sshd
ssh-keygen -t rsa -b 4096
~/.ssh/authorized_keys 文件中:ssh-copy-id user@server_ip
/etc/ssh/sshd_config 文件,确保以下行没有被注释掉:PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
sudo systemctl restart sshd
sudo ufw allow 2222/tcp
sudo ufw enable
sudo apt get install fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.locals
sudo nano /etc/fail2ban/jail.local
在 [ssh] 部分进行如下配置:[ssh]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 600
重启Fail2Ban服务:sudo systemctl restart fail2ban
sudo apt update
sudo apt upgrade
通过以上步骤,可以显著提高Ubuntu SSH的安全性,保护系统和数据不受未经授权的访问和攻击。