我最近在我的Ubuntu上安装了专门的Gitlab服务器。
Webapp工作正常,我在安装过程中遇到了麻烦(在生产环境之前在VM上测试过)
我已从我帐户上的网络应用程序上传了我的ssh rsa私钥,并创建了一个项目,从另一个存储库中克隆。
在我的桌面环境中,我尝试使用ssh进行git pull。 首次登录时,我不得不接受ssh指纹,然后,直到现在服务器一直要求我以git用户身份登录,该用户没有密码。
D:/drive/project> git pull git@0.0.0.0:me/project.git
git@0.0.0.0's password:
Connection closed by 0.0.0.0
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
D:\skydrive\artmoser>git pull
git@0.0.0.0's password: [tried to type something]
Permission denied, please try again.
git@0.0.0.0's password:
Permission denied, please try again.
git@0.0.0.0's password:
^C
我在Windows下的ssh公钥和私钥位于C:\ Users \ Jack Bauer.ssh 在专用服务器上,我可以在/home/git/.ssh/authorized_keys
中看到我的密钥我已经检查了我的chmod用户git:
drwx--x--x 7 git git 4096 mai 31 05:06 git/
drwx------ 2 git git 4096 juin 1 03:27 git/.ssh/
-rw------- 1 git git 508 juin 1 02:53 git/.ssh/authorized_keys
我做错了什么?
修改
经过更多研究:
如果我使用putty使用git用户登录,则会收到此错误消息server refused to allocate pty
如果我尝试ssh git@0.0.0.0
,他们要求我的密码,在git用户密码之前要求3次(没有)
如果我使用ssh git@0.0.0.0 -Tvvv
执行ssh隧道,我会在日志末尾看到这个错误
debug1: Next authentication method: publickey
debug1: Trying private key: /home/me/.ssh/id_rsa
debug1: key_parse_private2: missing begin marker
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/me/.ssh/id_rsa':
答案 0 :(得分:3)
公钥在我的电脑上,私人在服务器上,
如果您想使用ssh访问服务器,您的客户端(此处为您的Windows工作站)必须至少私钥(将公钥与其公钥保持在一起是一种很好的做法私钥对应方)。
C:\Users\Jack Bauer\.ssh\id_rsa.pub
C:\Users\Jack Bauer\.ssh\id_rsa
如果您的密钥不遵循此默认命名约定,则需要C:\Users\Jack Bauer\.ssh\config
文件(illustrated there)
确保在键入以下命令时,在Windows shell中将HOME
环境变量设置为C:\Users\Jack Bauer
:that is the case if you launch the git-cmd.exe
(随附Git For Windows distribution} < / p>