国外VPS Ubuntu 22.04 SSH连接的3个安全小贴士
文章分类:售后支持 /
创建时间:2025-08-12
用国外VPS搭建Ubuntu 22.04环境时,SSH连接的安全问题常被忽视。今天分享三个实测有效的防护技巧,帮你堵住远程登录的主要漏洞。
1. 禁用root远程登录:从源头降低权限风险
Ubuntu默认允许root用户直接远程SSH登录,但最高权限账号暴露在公网相当于"系统大门洞开"。攻击者一旦通过暴力破解获取root密码,就能直接篡改系统文件、删除数据甚至植入恶意程序。
具体操作分两步:首先创建带sudo权限的普通用户。以root身份登录后,执行命令创建新用户(假设用户名为newuser):
adduser newuser
usermod -aG sudo newuser
接着修改SSH配置文件`/etc/ssh/sshd_config`,找到`PermitRootLogin`行,将值改为`no`:
PermitRootLogin no
保存后重启SSH服务:
systemctl restart sshd
后续用newuser登录,需要执行特权操作时输入`sudo`+命令即可,既保留权限又降低风险。
2. 密钥认证替代密码:让暴力破解失效
纯密码登录就像用"数字锁"防贼——再复杂的密码也可能被字典攻击破解。密钥认证则像"指纹锁",只有同时持有私钥(指纹)和公钥(锁)才能解锁,安全性提升几个量级。
操作步骤如下:在本地终端生成RSA密钥对(建议4096位增强安全性):
ssh-keygen -t rsa -b 4096
生成的`id_rsa`(私钥)和`id_rsa.pub`(公钥)会保存在`~/.ssh`目录。接着将公钥同步到国外VPS:
ssh-copy-id newuser@your_vps_ip
输入newuser密码完成公钥传输后,再次编辑`sshd_config`,将`PasswordAuthentication`设为`no`禁用密码登录:
PasswordAuthentication no
重启SSH服务后,只有持有私钥的设备才能登录,暴力破解彻底失效。
3. 防火墙限制IP:缩小攻击面的最后防线
即使前两步都做好,开放公网22端口仍像"留了猫眼"——任何IP都能尝试连接。用Ubuntu自带的ufw防火墙限制特定IP访问,相当于给门加了"访客名单"。
具体配置:假设只允许`192.168.1.100`访问,执行命令:
ufw allow from 192.168.1.100 to any port 22
允许多个IP可重复此命令。然后禁止其他IP访问22端口:
ufw deny 22
最后启用防火墙:
ufw enable
现在只有指定IP能连接SSH,陌生IP连尝试的机会都没有。
这三个技巧环环相扣:禁用root减少高权限暴露,密钥认证阻断密码破解,IP限制缩小攻击范围。实际运维中,同时启用这三项配置的国外VPS,SSH被攻击成功的概率能降低90%以上。无论是搭建个人网站还是企业级应用,做好这些基础防护,远程管理才能更安心。