私のサーバーには Debian、Fisheye、Git があります。私の git リポジトリは Fisheye によって管理されています。Fisheye 部分での認証はありません。すべての認証手順は git によって管理されます。
変更をサーバーにプッシュするときにユーザー名とパスワードを入力する必要がないように、SSH 認証を使用したいと考えています。RSA キーの作成方法は知っていますが、サーバーのどこに公開キーをコピーすればよいですか?
私のサーバーには Debian、Fisheye、Git があります。私の git リポジトリは Fisheye によって管理されています。Fisheye 部分での認証はありません。すべての認証手順は git によって管理されます。
変更をサーバーにプッシュするときにユーザー名とパスワードを入力する必要がないように、SSH 認証を使用したいと考えています。RSA キーの作成方法は知っていますが、サーバーのどこに公開キーをコピーすればよいですか?
記事「 Git on the Server - Setting Up the Server 」の重要な部分は次のとおりです。
~/.ssh/authorized_keys
そのユーザーのファイルにいくつかの開発者 SSH 公開鍵を追加する必要があります。
電子メールでいくつかのキーを受け取り、それらを一時ファイルに保存したと仮定しましょう。繰り返しますが、公開鍵は次のようになります。
$ cat /tmp/id_rsa.john.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L
ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k
Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez
Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv
O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq
dAv8JggJICUvax2T9va5 gsg-keypair
(注: キーが1行に表示されていることを確認してください)
あなたはそれらをあなたのauthorized_keysファイルに追加するだけです:
$ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
サーバーにファイルがない場合はauthorized_keys
作成しますが、適切に保護してください。
server$ mkdir ~/.ssh
server$ chmod 700 ~/.ssh
server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
server$ chmod 600 ~/.ssh/authorized_keys
server$ rm ~/id_rsa.pub
具体的な例については、「Gerrit と Hudson の SSH キーの作成」を参照してください。
~/.ssh
グループに対して書き込み可能でないことを確認してください(chmod 755
のみ)。の中に公開鍵を貼り付ける必要があります~/.ssh/authorized_keys
。ファイルが存在しない場合は作成します。