解决虚拟机中 GitHub 无法通过 HTTPS 访问的问题
目录
- 1.在虚拟机中可以ping通github,但无法curl
- 2.防火墙问题
- 参考
1.在虚拟机中可以ping通github,但无法curl
damon@damon-virtual-machine:~/SchurVINS_ws/src$ ping github.com
PING github.com (20.205.243.166) 56(84) bytes of data.
64 字节,来自 20.205.243.166 (20.205.243.166): icmp_seq=1 ttl=128 时间=72.1 毫秒
64 字节,来自 20.205.243.166 (20.205.243.166): icmp_seq=2 ttl=128 时间=70.6 毫秒
64 字节,来自 20.205.243.166 (20.205.243.166): icmp_seq=3 ttl=128 时间=66.8 毫秒
64 字节,来自 20.205.243.166 (20.205.243.166): icmp_seq=4 ttl=128 时间=69.4 毫秒
^C
--- github.com ping 统计 ---
已发送 4 个包, 已接收 4 个包, 0% 包丢失, 耗时 3006 毫秒
rtt min/avg/max/mdev = 66.824/69.744/72.142/1.949 ms
damon@damon-virtual-machine:~/SchurVINS_ws/src$ curl -I https://github.com
curl: (7) Failed to connect to github.com port 443: 拒绝连接
2.防火墙问题
damon@damon-virtual-machine:~/SchurVINS_ws/src$ sudo ufw status
状态: 激活
至 动作 来自
- -- --
22/tcp ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
从防火墙状态看,ufw 已激活,但只允许了 22/tcp(SSH)端口,没有明确允许 HTTPS 使用的 443/tcp 端口。这是导致 GitHub 无法访问的原因。
允许 HTTPS 端口,将 443/tcp 添加到防火墙规则中:
sudo ufw allow https
sudo ufw allow 443
验证规则已添加:
damon@damon-virtual-machine:~/SchurVINS_ws/src$ sudo ufw allow https
规则已添加
规则已添加 (v6)
damon@damon-virtual-machine:~/SchurVINS_ws/src$ sudo ufw allow 443
规则已添加
规则已添加 (v6)
damon@damon-virtual-machine:~/SchurVINS_ws/src$ sudo ufw status
状态: 激活
至 动作 来自
- -- --
22/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
443 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
测试 HTTPS 连接
damon@damon-virtual-machine:~/SchurVINS_ws/src$ curl -I https://github.com
HTTP/2 200
server: GitHub.com
date: Wed, 27 Nov 2024 10:23:50 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Language, Accept-Encoding, Accept, X-Requested-With
content-language: en-US
etag: W/"de24697898ea637ca65259dfd95a442d"
cache-control: max-age=0, private, must-revalidate
。。。。。