本地 GIT 服务器身份验证
Local GIT server authentication
我刚刚安装了一个 VM(Ubuntu 服务器 20.04.2),我在上面安装了 GIT 服务器,它正在运行。
当我 运行 git clone git@VM-IP:repos/repo
时,它正在从 git
的帐户 home dir
中的 repos
目录克隆 repo
(或者基本上 /home/git/repos/repo
).
在我 运行 克隆之后,它要求输入密码。如果我使用 git
的帐户密码,它就会成功克隆。如果我使用 passwordA
(也尝试使用 user@VM-IP..
),它会失败。我在 /home/git
中创建了 .ssh/authorized_keys
,其中我将 ssh-keygen -t rsa
的执行结果从 user
中输入 passwordA
.
浏览这个问题一段时间后,我发现了一些 url 格式:
1) git@VM-IP:repo-path
2) git@VM-IP:user/repo-path
3) user@VM-IP:repo-path
如果我想使用 user
的密码从 /home/git/repo
克隆存储库,哪一个是正确的?
另外,我是不是遗漏了一些钥匙,还是只是 URL 问题?
有两件事阻碍了我。
git
有密码。如果这是你的情况 运行 sudo passwd -d git
来自你的主要用户。
- 文件中有一个无效密钥,因此无法读取。为了成功验证,您需要
user
与 ssh-keygen -t rsa
生成 rsa 对,它应该在 /home/user/.ssh
中,将其保存在那里。将id_rsa.pub
中的内容复制到/home/git/.ssh/authorized_keys
中(注意一行=一条记录!)。现在,如果您执行 sudo su user; git clone git@localhost:repos/repo
,它会要求您输入 user
的密码,并将 /home/git/repos/repo
克隆到 /home/user/repo
。
有了这两件事,现在一切正常。感谢回复!
我刚刚安装了一个 VM(Ubuntu 服务器 20.04.2),我在上面安装了 GIT 服务器,它正在运行。
当我 运行 git clone git@VM-IP:repos/repo
时,它正在从 git
的帐户 home dir
中的 repos
目录克隆 repo
(或者基本上 /home/git/repos/repo
).
在我 运行 克隆之后,它要求输入密码。如果我使用 git
的帐户密码,它就会成功克隆。如果我使用 passwordA
(也尝试使用 user@VM-IP..
),它会失败。我在 /home/git
中创建了 .ssh/authorized_keys
,其中我将 ssh-keygen -t rsa
的执行结果从 user
中输入 passwordA
.
浏览这个问题一段时间后,我发现了一些 url 格式:
1) git@VM-IP:repo-path
2) git@VM-IP:user/repo-path
3) user@VM-IP:repo-path
如果我想使用 user
的密码从 /home/git/repo
克隆存储库,哪一个是正确的?
另外,我是不是遗漏了一些钥匙,还是只是 URL 问题?
有两件事阻碍了我。
git
有密码。如果这是你的情况 运行sudo passwd -d git
来自你的主要用户。- 文件中有一个无效密钥,因此无法读取。为了成功验证,您需要
user
与ssh-keygen -t rsa
生成 rsa 对,它应该在/home/user/.ssh
中,将其保存在那里。将id_rsa.pub
中的内容复制到/home/git/.ssh/authorized_keys
中(注意一行=一条记录!)。现在,如果您执行sudo su user; git clone git@localhost:repos/repo
,它会要求您输入user
的密码,并将/home/git/repos/repo
克隆到/home/user/repo
。
有了这两件事,现在一切正常。感谢回复!