我在可公开访问的虚拟机上运行 Gitea gitea.myorg.foo
。这是与我的配置文件的 SSH 配置相关的服务器部分:
[server]
SSH_DOMAIN = gitea.myorg.foo
DOMAIN = gitea.myorg.foo
ROOT_URL = https://gitea.myorg.foo/
DISABLE_SSH = false
SSH_PORT = 22
OFFLINE_MODE = false
这意味着我运行的是服务器的 sshd,而不是 Gitea 的内部 sshd。
服务器在名为 的用户下运行git
。在/home/git/.ssh/authorized_keys
中,列出了授权密钥(每个用户和部署密钥)。
不幸的是,当我尝试克隆启用了该部署密钥的存储库时,未提供部署密钥。
假设我想克隆[email protected]/org/repo.git
,我得到一个签名与 Web UI 中“部署密钥”下显示的签名完全不同的密钥。当我运行时ssh-keyscan gitea.myorg.foo
,我只得到签名中找不到的/home/git/.ssh/authorized_keys
。
如何确定和配置 SSH 提供给客户端的密钥?
编辑:我注意到提供的密钥是标记为HostKey
定义的密钥/etc/ssh/sshd_config
。我需要使用 Gitea 的内部 SSH 服务器,还是可以相应地配置我的本地 SSH 服务器?
我混淆了主机密钥和我的部署密钥。返回主机密钥是完全可以的。但是,我错误地依赖于
.knwon_hosts
文件中的部署密钥,而我应该使用主机密钥。