Google Cloud VM安装SSL后无法连接SSH的问题
解决Google Cloud VM安装Let's Encrypt后无法SSH/控制台访问的问题
故障排查与修复步骤
1. 检查系统网络与SSH配置
安装Let's Encrypt过程中可能误改核心配置:
- 若能通过Google Cloud串行控制台登录,先查看
/etc/ssh/sshd_config,确认Port(默认22)、PermitRootLogin、PubkeyAuthentication参数未被错误修改:
若参数异常,修改后重启SSH服务:cat /etc/ssh/sshd_configsystemctl restart sshd - 检查
/etc/hosts文件,确认无错误IP映射导致本地解析失败
2. 排查本地防火墙规则冲突
Certbot工具可能自动添加防火墙规则,阻断了SSH端口:
- 查看iptables规则:
iptables -L -n - 若使用ufw防火墙,查看状态:
确保22端口入站规则为允许,若被阻断,手动添加:ufw statusufw allow 22/tcp # 或用iptables命令 iptables -A INPUT -p tcp --dport 22 -j ACCEPT
3. 检查系统资源占用
安装过程可能引发进程异常,导致资源耗尽:
- 通过Google Cloud控制台的「监控」面板,查看VM的CPU、内存、磁盘使用率
- 若磁盘已满,通过串行控制台清理冗余文件:
df -h # 查看磁盘使用情况 rm -rf /var/log/*.old # 清理旧日志文件
4. 验证系统服务状态
Certbot的钩子脚本可能误停关键服务:
- 查看certbot钩子脚本目录:
ls /etc/letsencrypt/renewal-hooks/ - 检查SSH、网络服务状态:
若服务未运行,执行重启:systemctl status sshd systemctl status systemd-networkdsystemctl restart sshd systemctl restart systemd-networkd
5. 应急恢复方案
若完全无法登录系统:
- 为当前VM磁盘创建快照,将快照挂载到另一正常VM实例,直接修改磁盘内的配置文件(如修复
sshd_config) - 尝试重置VM实例(注意:重置会重启机器,未保存数据会丢失)
内容的提问来源于stack exchange,提问作者Nick
相关产品推荐
相关产品推荐

