在阿里云服务器上安装gitlab之后,能访问gitlab页面,能创建项目,现在想做的就是在自己电脑(windows)上git clone代码。
1,在服务器上安装git,配置user.name, user.email, 生成密钥,测试可以成功git clone 代码。把密钥保存到windows(可以用xshell类工具下载,我用的是mobaxterm)。
2, 设置sshd_config
vim /etc/ssh/sshd_config
以下几项设为yes
PasswordAuthentication yes
PermitRootLogin yes
PubkeyAuthentication yes
重启sshd服务:
systemctl restart sshd. service
3,在ecs上创建密钥对
由于之前使用的是自动创建,但是这种方式,是看不到公钥内容的,也就无法复制粘贴。所以要用导入已有密钥对的方式创建密钥。将公钥粘贴进去,保存,绑定密钥对,重启ecs实例。
![](https://img.haomeiwen.com/i15186013/baf526efb919017a.png)
4,ssh工具更新私钥文件的内容:自动创建ecs密钥对,下载的私钥文件是.pem后缀。更新之后,能成功连接ecs。
5,windows上安装git,生成密钥,把内容改成服务器上git生成的密钥。
6,git clone代码,如果让输入密钥,基本上是读取的密钥文件不对,此时输入ecs远程连接密码报错。
7,查看密钥验证日志:在git bash输入
ssh -vT git@公网ip
![](https://img.haomeiwen.com/i15186013/17dc80262c71102f.png)
8,看看日志读的是windows哪个密钥文件,发现读的是id_rsa,而不是我想让它读的gitlab_id_rsa,因为我之前设置了github的密钥文件名是id_rsa。
9,把id_rsa, id_rsa. pub都用服务器上对应的内容覆盖,再git clone就成功下载代码了。
网友评论