AWS CLIを使用せずにCodeCommitへSSHユーザーで接続する
AWS CLIやアクセスキーID、シークレットアクセスキーなどを開発環境にセットアップせずに、CodeCommitへ接続したいケースでSSHユーザーとしての接続手順を確認しました。
目次
環境
- EC2 Amazon Linux 2023からAWS CLIをアンインストール
- IAMユーザーにはAWS管理ポリシーAWSCodeCommitPowerUserをアタッチ
Gitのインストール
|
1 2 |
$ sudo yum -y install git |
パブリックキーとプライベートキーの作成
|
1 2 |
$ ssh-keygen |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Generating public/private rsa key pair. Enter file in which to save the key (/home/ssm-user/.ssh/id_rsa): Created directory '/home/ssm-user/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/ssm-user/.ssh/id_rsa Your public key has been saved in /home/ssm-user/.ssh/id_rsa.pub The key fingerprint is: SHA256:AqcCpaY9jmKSkpEyhuAabOuuaaYJyNou+Q6KuVHy53I ssm-user@ip-172-31-7-236.ap-northeast-1.compute.internal The key's randomart image is: +---[RSA 3072]----+ | . | | o | |+. . . | |B+ + | |X== . . S | |B%.o . | |&=o . | |&X.oE | |^O=o. | +----[SHA256]-----+ |
- /home/ssm-user/.ssh/id_rsa
- /home/ssm-user/.ssh/id_rsa.pub
の2つが作成されました。
検証につきパスフレーズはなしで作成しました。
パブリックキーをIAMユーザーに設定
|
1 2 |
$ cat /home/ssm-user/.ssh/id_rsa.pub |
パブリックキーを出力してコピーしました。
IAMユーザーのセキュリティ認証情報タブのAWS CodeCommitのSSH公開キーにパブリックキーをアップロードします。
パブリックキー出力結果をコピーして貼り付けました。
設定ファイルの作成
|
1 2 |
$ vim ~/.ssh/config |
.sshディレクトリにconfigファイルを作成します。
公開キーに生成された公開キーIDをconfigファイルに設定します。
|
1 2 3 4 |
Host git-codecommit.*.amazonaws.com User APKARFDUEEVTO2DQEKVU IdentityFile ~/.ssh/id_rsa |
configファイルを保存しました。
|
1 2 |
$ chmod 600 ~/.ssh/config |
パーミッションを変更しました。
|
1 2 |
$ ssh git-codecommit.ap-northeast-1.amazonaws.com |
テストしました。
東京リージョンにテストしてみました。
|
1 2 3 4 5 6 7 8 |
The authenticity of host 'git-codecommit.ap-northeast-1.amazonaws.com (54.240.225.207)' can't be established. RSA key fingerprint is SHA256:Xk/WeYD/K/bnBybzhiuu4dWpBJtXPf7E30jHU7se4Ow. This key is not known by any other names Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'git-codecommit.ap-northeast-1.amazonaws.com' (RSA) to the list of known hosts. You have successfully authenticated over SSH. You can use Git to interact with AWS CodeCommit. Interactive shells are not supported.Connection to git-codecommit.ap-northeast-1.amazonaws.com closed by remote host. Connection to git-codecommit.ap-northeast-1.amazonaws.com closed. |
初回接続なのでfingerprintの確認があったので、yesを入力して、successfullyで成功を確認しました。
既存リポジトリをクローンしてみる
|
1 2 |
$ git clone ssh://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/2048 |
既存のリポジトリをクローンしてみました。
|
1 2 3 4 5 |
Cloning into '2048'... remote: Counting objects: 772, done. Receiving objects: 100% (772/772), 454.57 KiB | 8.74 MiB/s, done. Resolving deltas: 100% (429/429), done. |
無事完了しました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
slackのbotをAWS Lambda(Python)+API Gatewayで構築
slackで投稿した内容に応じて返信したり調べ物したりしてくれるbotですが、こ …
-
-
当ブログ(WordPress)のCloudFrontのキャッシュヒット率があがった
当ブログの構成です。 S3とALB+EC2 Auto Scalingで構成してい …
-
-
AWS認定SAPの執筆開始にあたって環境を構築しました
AWS認定ソリューションアーキテクトプロフェッショナル対策本の執筆開始にあたりま …
-
-
Amazon EC2のスクリーンショットとは
ドキュメント見てたらAmazon EC2でスクリーンショットって機能があったので …
-
-
Amazon CloudWatch クロスリージョンクロスアカウントダッシュボードを作成
本ブログのCloudFrontとWAFのアカウントと、EC2、RDS、S3などオ …
-
-
AWS EC2 Amazon Linux にEC-CUBE3をnginx+MySql環境へインストール(手順検証中)
EC2インスタンスを作成する 少し古い記事で恐縮ですが試したい事があるのでAWS …
-
-
CloudFormationスタックポリシーでスタック更新を防止する
CloudFormationのスタックにスタックポリシーを設定することによって、 …
-
-
Amazon LinuxにAlfresco Community Editionをインストールする
ダウンロード準備 Alfresco公式サイトで、「エンタープライズコンテンツ管理 …
-
-
AWS Step Functions まずはパラレルでLambdaを並列実行してみました
複数のlambdaの実行制御をLambdaでやってましたが、その部分をStep …
-
-
iPad ProのWorking CopyでAWS CodeCommitのリポジトリを使う
iPad Proを導入しましたので、原稿執筆や校正でフル活用しようと思いまして。 …



