SSHとGitの設定

SSHとGitの設定

私はローカルネットワークにプライベートGitサーバーを設定しようとしていますが、私が何を間違っているのか私は一生不明です。 Gitユーザーの秘密鍵でSSH認証を取得できないようです。

ssh-keygenrsa pub /秘密鍵を生成するためにクライアントで実行されました。~/.ssh/authorized_keysサーバーにファイルを作成しました。コピーエラーがないことを確認するために、ファイルをサーバーに転送してからサーバーに戻して、ファイルid_rsa.pubの内容をauthorized_keysサーバーのファイルにコピーしました。 SSHデーモンを再起動しました。scpcat id_rsa.pub > ~/.ssh/authorized_keys

クライアントでは、~/.sshフォルダの権限は700、~/.ssh/id_rsaファイルの権限は600です。サーバー上の~/.sshフォルダーの権限は 700、~/.ssh/authorized_keysファイルの権限は 600 です。

私のサーバーのSSH設定には、/etc/ssh/sshd_config次のようにコメントアウトされていない行があります。

Include /etc/ssh/sshd_config.d/*.conf
KbdInteractiveAuthentication no
UsePAM yes
X11Forwarding yes
PrintMotd no
AcceptEnv LANG LC_*
Subsystem sftp  /usr/lib/openssh/sftp-server
PasswordAuthentication yes
Match User git
        PasswordAuthentication no
        PubkeyAuthentication yes

フォルダ/etc/ssh/sshd_config.d/が空です。サーバーが稼働していますUbuntu 22.04.1 LTS。サーバーのSSHバージョンは次のとおりです。OpenSSH_8.9p1 Ubuntu-3ubuntu0.1, OpenSSL 3.0.2 15 Mar 2022

これを試している間、私は次のような挨拶を受けました。ssh [email protected]
Permission denied (publickey).

私は何を見逃していますか?ガイドを読んだ。キーを正確にコピーしたことを確認しました。以前はすでにSSHを設定しauthorized_keysて動作していたサーバーのファイルに公開鍵を挿入したので、正直混乱しています。 sshd設定を許可に設定すると、PasswordAuthentication私が設定したパスワードを使用してgitユーザーとしてログインできます。公開秘密鍵認証が機能しない理由は理解できません。

出力ssh [email protected] -vvv
https://pastebin.com/raw/nJwskYhU

答え1

次のエラーがあります/var/log/auth.log
Authentication refused: bad ownership or modes for directory <home directory>

私がしたことは、gitユーザーのホームディレクトリを新しい場所に移動することでした。私の考えはそれが問題だと思います。ホームディレクトリを問題を解決したディレクトリに戻します。ご意見ありがとうございます。サーバー側でログを見つけるつもりはありませんでした。

関連情報