Git
EC2
ssh公開鍵認証

(1)EC2+gitリモートサーバ構築#1|EC2でgit+RonR+unicorn+nginx+capistrano+Jenkins

More than 5 years have passed since last update.

その1|リモート先gituserとssh鍵認証接続

インスタンス構成

gitリモートサーバとAPサーバ/DBサーバは別のインスタンスにしたかったが、お金がかかるので(そんなにかからないけど…諸事情で…)、今回はインスタンスはスモールインスタンス1個で。

ユーザ

  1. gituser
    このユーザでリモートリポジトリにローカルからSSH鍵認証でアクセス出来るとする

  2. artist
    ローカルからcapistranoでデプロイする時のユーザ。mkdirなどを行うのでsudo出来るようにします

  3. ec2-user
    EC2インスタンスで色々インストールしたりする仕事人

1)gitリモートサーバ接続準備|SSH鍵認証

1-1. |EC2・ec2-user|gituserの作成と.sshディレクトリの作成など

sudo useradd -m -s /bin/bash gituser
sudo mkdir /home/gituser/.ssh
sudo touch /home/gituser/.ssh/authorized_keys
sudo chown gituser. /home/gituser/.ssh
sudo chown gituser. /home/gituser/.ssh/authorized_keys
sudo chmod 700 /home/gituser/.ssh
sudo chmod 600 /home/gituser/.ssh/authorized_keys

1-2. |ローカル|
~/.ssh/id_rsa.pubをテキストファイルで開きコピー

1-3.|EC2・gituser|
公開鍵の登録。/home/gituser/.ssh/authorized_keysに。
1.2でコピーしていたのをauthorized_keysにペースト。
もちろん、公開鍵ファイルをscp等でアップロードして、catコマンド等で登録しても良い。

sudo - gituser
vi /home/gituser/.ssh/authorized_keys

1-4.|ローカル|ssh接続確認
(仮定)EC2のIPアドレス|54.345.345.345
ターミナルからssh接続可能か確認。

ssh gituser@54.345.345.345 -i ~/.ssh/id_rsa

1-5.|ローカル|.ssh/configファイルの準備
~/.ssh/にconfigファイルを作成しておいて、リモート先の簡略化

touch ~/.ssh/config
vi ~/.ssh/config
Host gitserver
  User         gituser
  hostname     54.345.345.345
  identityfile ~/.ssh/id_rsa

これでターミナルから下記のコマンドでログイン出来る。

ssh gitserver