Linux配置与搭建Github通常生成ssh key并添加到用户的git后需要进行ssh测试(前面具体过程略),测试方法如下:

ssh -T git@github.com

正常情况下如果访问成功(等待10秒左右)会出现如下提示:

Hi XXXXX! You've successfully authenticated, but Github does not provide shell access.

然而笔者遇到的问题为,执行上述命令行命令后,进程将一直挂着,没有任何提示输出,折腾很久,终于找到原因。

查看ssh的命令手册得知 -p用来规定port号,对于ssh -T 来说,由本机作为ssh的客户端去访问git(作为服务端其端口号是众所周知的22),端口号必须一致,然而笔者的机器由于之前的项目所需对其客户端端口号进行了修改,导致ssh -T访问失败。

解决办法:

一、修改本机ssh客户端配置文件中的port号(改回系统默认的22)修改方法如下:

1)打开配置文件 vim /etc/ssh/ssh_config(ssh服务器的配置文件为/etc/ssh/sshd_config)

2)找到port,并对其值进行修改

注:如果port在#号注释里面则说明ssh客户端使用的是系统默认的22,对于访问git来说不需要修改,但是如果有其他原因需要修改的话,只需在非注释区域添加新的port号即可。

二、命令行加参数 -p

如果实在不想修改配置文件,或许因为某些更重要的目的已经修改过配置文件非默认的22,则每次ssh访问不同port的服务时都需要修改配置文件实在是太麻烦了。对于ssh命令来说,只需添加参数-p <服务端port号>即可,对于访问git来说,命令如下:

ssh -T -p 22 git@github.com


GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐