当前位置:首页 > 系统教程 > 正文

VMware Ubuntu 22.04 NAT模式配置GitHub SSH密钥教程(全流程踩坑及报错解决)

本文核心关键词:Ubuntu配置SSH、VMware NAT模式SSH、GitHub公钥配置、SSH连接报错解决

在VMware虚拟机中使用Ubuntu 22.04开发时,采用NAT模式上网是最常见的选择。然而,由于网络环境的特殊性,配置GitHub SSH时常会遇到连接超时或权限拒绝。本教程将带你零基础完成配置,并解决所有潜在的坑。

VMware Ubuntu 22.04 NAT模式配置GitHub SSH密钥教程(全流程踩坑及报错解决) Ubuntu配置SSH  NAT模式SSH GitHub公钥配置 SSH连接报错解决 第1张

第一阶段:生成SSH密钥对

首先,我们需要在本地Ubuntu系统中生成用于身份认证的密钥对。这是进行Ubuntu配置SSH的第一步。

ssh-keygen -t ed25519 -C "your_email@example.com"

注意:遇到提示一路回车即可。默认密钥会保存在 ~/.ssh/id_ed25519

第二阶段:GitHub端公钥部署

生成密钥后,我们需要完成GitHub公钥配置。使用以下命令查看并复制内容:

cat ~/.ssh/id_ed25519.pub

登录GitHub,进入 Settings -> SSH and GPG keys -> New SSH Key,将复制的内容粘贴进去并保存。

第三阶段:VMware NAT模式特有的踩坑实录

VMware NAT模式SSH环境下,由于宿主机防火墙或虚拟网关DNS解析问题,常会出现连接失败。

  • 坑点1: ping github.com 不通。解决:修改 /etc/resolv.conf,添加 nameserver 8.8.8.8
  • 坑点2: 22端口被封锁。解决:在 ~/.ssh/config 中添加配置强制使用443端口。

第四阶段:报错与成功信息对照

这是SSH连接报错解决的关键对照表,请对照你的终端输出:

状态 终端信息 处理方案
报错 (Error) ssh: connect to host github.com port 22: Connection timed out 检查虚拟机网络是否能访问外网,或更换SSH端口为443。
报错 (Error) Permission denied (publickey) 确认GitHub端已保存公钥,并执行 ssh-add ~/.ssh/id_ed25519。
成功 (Success) Hi username! You've successfully authenticated... 配置完美通过!

五、 最终测试

输入以下命令进行最后的验证:

ssh -T git@github.com

只要看到 successfully authenticated 的欢迎语,就说明你的VMware虚拟机已经打通了通往GitHub的安全隧道。