ubuntu 16.04 SSH连接gitlab(解决permission denied问题)

SSH连接gitlab省去了每次push工程时输入账号密码的流程,具体操作过程可概括为以下几步——1.生成本地主机的SSH密钥;2.在gitlab远程服务器上添加SSH公钥;3.测试连接是否成功。

1.生成本地主机的SSH秘钥。

进行git的基本配置

$ git config --global user.name "user.name" # 设定用户名
$ git config --global user.email "user.email" # 设定邮箱

生成本地主机的SSH秘钥(为简单起见,输入命令后直接三个回车,不设定密码)。

ssh-keygen -t rsa -C “user.email” # 生成秘钥

执行命令后在用户目录下会生成一个.ssh的目录,其中有公钥和私钥。

2.在gitlab远程服务器上添加SSH公钥。
输入以下命令打开公钥,将内容复制进远程服务器保存公钥的地方,保存之,如下图所示。

sudo gedit xxx.pub

ubuntu 16.04 SSH连接gitlab(解决permission denied问题)_第1张图片3.测试连接是否成功。
输入以下命令测试是否能成功连接。

ssh [email protected]

应该不会那么顺利而出现下图情况。
ubuntu 16.04 SSH连接gitlab(解决permission denied问题)_第2张图片
输入以下命令可以解决该问题。

eval "$(ssh-agent -s)"
ssh-add

可以将gitlab主机加入known_hosts中,输入如下命令实现。

ssh-keyscan -t rsa gitlab.com >> ~/.ssh/known_hosts

再试一次,输入如下命令。

ssh [email protected]

ubuntu 16.04 SSH连接gitlab(解决permission denied问题)_第3张图片
成功!

你可能感兴趣的:(git)