Closed2

[AWS] EC2とGitHub連携手順メモ

noknok

はじめに

AWSのEC2からGitHub連携したく、手順メモする

参考にさせて頂いたサイト

https://benelop.jp/blog/engineer/infrastructure/setup-github/

前提条件

  • GitHubアカウントとは作成済みとする
  • EC2インスタンスタイプは、Ubuntuとする
  • EC2インスタンスには、Session Manager(SSM)で接続可能な状態とする
    EC2がインターネットからアクセス可能かつ、IAMロールに「AmazonSSMManagedInstanceCore」ポリシーが割り当たっている必要などあり
noknok

EC2アクセス

  • SSMを使ってEC2にアクセス

Gitインストール

  • 以下でインストール(※実際はインストール済みのインスタンスだったので手順スキップした)
SSMコンソール
sudo apt-get update
sudo apt-get install git

SSHフォルダ作成&SSHフォルダへ移動

  • フォルダが存在しなかったので、新規作成して移動
SSMコンソール
# フォルダ作成
mkdir -p ~/.ssh

# 権限変更
chmod 700 ~/.ssh

# フォルダへ移動
cd ~/.ssh

認証鍵の生成

SSMコンソール
# 認証鍵生成コマンド実行
ssh-keygen -t rsa

# 対話形式の入力確認されるため、鍵の名前を指定
# 名前以外は未入力のままEnterした
Enter file in which to save the key (/home/ssm-user/.ssh/id_rsa): {任意の鍵の名前を入力}
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in {任意の鍵の名前}
Your public key has been saved in {任意の鍵の名前}.pub
The key fingerprint is:
SHA256:hogehogehogehogehoge ssm-user@ip-10-0-1-xxx
The key's randomart image is:
〜以下省略〜

SSH設定ファイルの編集

  • viコマンドで編集モードにする
SSMコンソール
vi ~/.ssh/config
  • 鍵の用途を追加する
    (i で挿入モード、escキー で挿入モード終了、:wq で編集を保存)
SSMコンソール
Host github github.com
  HostName github.com
  IdentityFile ~/.ssh/{鍵生成時の名前}
  User git

SSH設定ファイルに適切な権限を付与

SSMコンソール
chmod 600 /home/ssm-user/.ssh/config

公開鍵の内容を確認

  • 以下を入力して鍵内容表示&内容をコピー
SSMコンソール
cat ~/.ssh/{鍵生成時の名前}.pub
ssh-rsa xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

GitHubに公開鍵を登録

  • GitHub > Settings > SSH and GPG keys > New SSH key 選択 > 取得した公開鍵内容を設定して保存

接続テスト

  • 以下をEC2上から実行して、GitHubへの接続確認
SSMコンソール
ssh -T git@github.com
  • 以下文字列でたら成功
SSMコンソール
Hi {アカウント名}! You've successfully authenticated, but GitHub does not provide shell access.
このスクラップは2025/01/31にクローズされました