search
LoginSignup
55

More than 5 years have passed since last update.

GithubのDeploy Keysを登録してパスワードなしでアクセスする

EC2 に構築したサーバーからGithubにアクセスしてgit clone してビルド&デプロイがしたい。

自動化する仕組みは色々あるけれど、今回は単純に自作のシェルを叩くだけ。

そのとき発生するのがパスワード問題。シェルに組み込んでおいたり、どこかのファイルに保存したりすればできるのだが、パスワードを平で保存するのはよろしくない。

Github に公開鍵を登録して SSH でアクセスすることができるので試してみる。

鍵をつくる

EC2 に構築したサーバーにログインして、以下を実行する。

cd ~

ssh-keygen -t rsa

パスフレーズを聞かれるので適当にいれる。

Generating public/private rsa key pair.
Enter file in which to save the key (/home/hoge/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/hoge/.ssh/id_rsa.
Your public key has been saved in /home/hoge/.ssh/id_rsa.pub.

すると ~/.ssh 以下に2ファイルできる。

ls ~/.ssh

id_rsa
id_rsa.pub

id_rsa.pubの中身をコピーしておく。

GithubにDeploy Keyを登録する

各レポジトリの SettingsDeploy Keys メニューがある。

Screen Shot 2016-07-03 at 10.37.58.png

Add deploy key を押す。

Screen Shot 2016-07-03 at 10.39.42.png

  • Title・・・識別できるような名前(EC2とか)
  • Key ・・・先ほど作成した id_rsa.pub ファイルの中身
  • Allow write access・・・書き込みが必要かどうか。今回は不要。

Keyの中身は

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABA.....

のようになっているはず。これをそのまま貼り付ける。

Screen Shot 2016-07-03 at 10.45.27.png

こんな感じで登録される。

EC2からcloneしてみる

アクセスするためのURLがいつもと異なり、git@ではじまる。

git clone git@github.com:yourname/yourrepo.git

これでパスワードなしでアクセスすることができた。

まとめ

  • やりたいことはできた
  • 普段からローカルPCでやるとセキュリティ上よろしくないかな
  • Github便利

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
55