Linux海外VPS安全配置:密码策略与SSH密钥实操指南
文章分类:更新公告 /
创建时间:2025-09-07
使用Linux海外VPS时,系统安全是核心前提。用户密码策略和SSH密钥登录作为两大关键防护手段,能有效降低暴力破解、密码泄露等风险。本文结合实际操作场景,详细讲解如何配置这两项安全功能。
用户密码策略:给账户上把"智能锁"
密码是系统的第一道防线,但单纯依赖强密码还不够——设置合理的密码使用规则,能避免因长期不换密码或弱密码导致的安全隐患。
首先调整全局密码周期。通过`sudo nano /etc/login.defs`命令打开配置文件,重点修改以下参数:
- `PASS_MAX_DAYS 90`:强制90天更换一次密码
- `PASS_MIN_DAYS 7`:防止7天内重复修改密码
- `PASS_WARN_AGE 14`:到期前14天开始提醒用户
接着提升密码复杂度。编辑`/etc/pam.d/common-password`文件(命令:`sudo nano /etc/pam.d/common-password`),在`password requisite pam_cracklib.so`行后添加约束条件:
password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
这里的参数分别对应:最多尝试3次、至少10位长度、3位与旧密码不同、至少1个大写/小写/数字/特殊字符。设置后,新密码必须同时满足这些条件才能通过验证。
SSH密钥登录:用"数字钥匙"替代传统密码
相比容易泄露的明文密码,SSH密钥(由公钥+私钥组成的非对称加密对)能提供更安全的登录方式。即使公钥被获取,没有私钥也无法登录,相当于给登录入口加了双保险。
步骤1:生成密钥对
在本地电脑打开终端,输入`ssh-keygen -t rsa -b 4096`生成4096位RSA密钥。提示输入保存路径时直接回车(默认存储在`~/.ssh/id_rsa`),是否设置私钥密码可根据需求选择(留空则无需输入密码即可使用私钥)。
步骤2:上传公钥到VPS
使用`ssh-copy-id username@your_vps_ip`命令(替换`username`为VPS用户名,`your_vps_ip`为VPS公网IP),输入当前用户密码后,公钥会自动写入VPS的`~/.ssh/authorized_keys`文件。
步骤3:锁定SSH服务配置
登录VPS后编辑`/etc/ssh/sshd_config`(命令:`sudo nano /etc/ssh/sshd_config`),修改以下关键项:
PubkeyAuthentication yes # 启用密钥登录
PasswordAuthentication no # 禁用密码登录
PermitRootLogin no # 禁止root直接SSH登录
保存后执行`sudo systemctl restart sshd`重启服务,此时仅能通过本地私钥登录,密码和root直连均被禁止。
完成这两项配置后,Linux海外VPS的安全等级将大幅提升。密码策略通过规则约束降低人为风险,SSH密钥则从技术层面阻断暴力破解可能。建议定期检查`/etc/login.defs`和`sshd_config`配置,确保安全策略持续生效——毕竟,网络安全没有"一劳永逸",持续维护才是关键。