背景:
多次搭建新项目,在本地window调试完后,把代码推送到gitlab上,从linux服务器上拉取代码时,发现要配置ssh秘钥信息,于是经过一系列操作弄完配置,记录备忘。
前提:
在本地windows中生成了秘钥信息,存放在目录C:\Users\admin\.ssh下:
同时在gitlab中配置好了对应的公钥
迁移到linux系统:
进入到用户目录下.ssh目录中,这里是/root/.ssh
然后将window中ssh的秘钥信息id_rsa、id_rsa.pub、known_hosts拷贝到/root/.ssh该目录下,这里我使用的rz目录从本地拷贝文件:
遇到的问题:
1.linux系统中不能识别内部gitlab服务地址,于是在/etc/hosts中添加映射: ip gitlab.xxxxxx.local
ssh: Could not resolve hostname gitlab.xxxxxx.local: Name or service not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
2.私钥文件权限过大提示如下,改动id_rsa文件权限即可:chmod 600 id_rsa
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/root/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/root/.ssh/id_rsa": bad permissions
git@gitlab.xxxxxx.local: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.