linux ssh -T测试github失败的解决方案

来源:互联网 发布:周末算法定节假日么 编辑:程序博客网 时间:2024/06/06 18:27

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


0 0
原创粉丝点击