Gitea は間違った SSH キーを提供します

Gitea は間違った SSH キーを提供します

私は、 の下でパブリックにアクセス可能な仮想マシン上で 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

これは、Gitea の内部 sshd ではなく、サーバーの sshd を実行していることを意味します。

サーバーは というユーザーの下で実行されますgit。 には/home/git/.ssh/authorized_keys、承認されたキー (ユーザーごとおよびデプロイメント キー) がリストされます。

残念ながら、デプロイメント キーが有効になっているリポジトリをクローンしようとしても、デプロイメント キーは提供されません。

をクローンしたいとします[email protected]/org/repo.git。Web UIの「Deploy Keys」に表示されているものとはまったく異なる署名のキーが提供されます。 を実行するとssh-keyscan gitea.myorg.foo、署名のみが取得されます。ないにあります/home/git/.ssh/authorized_keys

SSH がクライアントに提供しているキーを調べて設定するにはどうすればよいですか?

編集: 提供されているキーは、HostKeyで定義されているものとしてマークされているキーであることに気付きました/etc/ssh/sshd_config。Gitea の内部 SSH サーバーを使用する必要がありますか、それともネイティブ SSH サーバーをそれに応じて構成できますか?

答え1

ホスト キーとデプロイメント キーを混同してしまいました。ホスト キーが返されてもまったく問題ありません。ただし、ホスト キーを使用するべきところを、ファイル内のデプロイメント キーに頼るというミスを犯してしまいました.knwon_hosts

関連情報