LoginSignup
1
1

More than 5 years have passed since last update.

cloud-initでCodeCommitからダウンロードする

Posted at

目的

自動化を進めます。
ここではCodeCommitからgit で持って来る際、sshの秘密鍵を用いています。
どんな場所でも検証を続けたいため、このようにしましたが、
秘密鍵をスクリプト中に記載する事になるため、可能であればIPアドレスベースでのアクセスコントールがしたい。
が、まだできていないです
( conditionみたいな所に記述するんでしょうか http://docs.aws.amazon.com/codecommit/latest/userguide/access-permissions.html )

初期セットアップに必要な権限は readonlyですので( git pushは作業用PCから行うので )、
readonly用のアカウントを作成して使いましょう。

ssh鍵を設定する

ssh鍵設定例
# ssh用のディレクトリがなければ作る
[[ ! -d /root/.ssh ]] && mkdir /root/.ssh && chmod 700 /root/.ssh

# 秘密鍵を設定 
# ## 事前にssh鍵を作成しておいて、CodeCommit側に登録しておく必要がある ##
if [[ ! -f /root/.ssh/codecommit_readonly.pem ]] ; then
  /bin/cat <<-'EOL' > /root/.ssh/codecommit_readonly.pem
-----BEGIN RSA PRIVATE KEY-----
( 中略 )
-----END RSA PRIVATE KEY-----
EOL
  chmod 600 /root/.ssh/codecommit_readonly.pem
fi

# /root/.ssh/config に git-codecommit用の設定が無かったら追加する
if grep git-codecommit /root/.ssh/config ;then
  :
else
  /bin/cat <<-'EOL' >> /root/.ssh/config
# AWS CodeCommit
# IAM codecommit user
Host git-codecommit.*.amazonaws.com
  User APK*************
  IdentityFile ~/.ssh/codecommit_readonly.pem
EOL
  chmod 600 /root/.ssh/config

# CodeCommitのfingerprintを書き込んでおきます
/bin/cat <<-'EOL' > /root/.ssh/known_hosts
|1|e8DGH1l0mJwyha9fnGNfk9C1GCc=|UsjXS4kK7hIW+dWsQMDYFS/zBPA= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdut7aOM5Zh16OJ+GOP75O7x5oyHKAiA1ieuySetj/hAq4VrAuZV5R2TypZJcKBaripOtTc/Sr0FOU4YvxUla40PPH8N1lbDp6Pnc4BexKsrt2kz++TqIKx5FHmUQV3mit16kxRwHey3dv030+qXBDo3WPQjm2+JLoq0XcadpnCAMCd3ChaBnDRM+51GZbuEFilpZsxUchUzl0gseC+shYOBd7TqxTlIhj/56d/YF1kq7RMZYrwBnyYdVhpLeUJCeYjyx/O6FPSezNTLiinz5jjioWZATgn+G8feL/hIsk8g+7JoIcb2muUlymdxs+8l2lS+8MXqT0q9ohT+Knhb2j
|1|jfikaPCaQW7Q20IzNkX7jYIVHPc=|jtJtabQNm/0k7QAVueh/BPYTj+c= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdut7aOM5Zh16OJ+GOP75O7x5oyHKAiA1ieuySetj/hAq4VrAuZV5R2TypZJcKBaripOtTc/Sr0FOU4YvxUla40PPH8N1lbDp6Pnc4BexKsrt2kz++TqIKx5FHmUQV3mit16kxRwHey3dv030+qXBDo3WPQjm2+JLoq0XcadpnCAMCd3ChaBnDRM+51GZbuEFilpZsxUchUzl0gseC+shYOBd7TqxTlIhj/56d/YF1kq7RMZYrwBnyYdVhpLeUJCeYjyx/O6FPSezNTLiinz5jjioWZATgn+G8feL/hIsk8g+7JoIcb2muUlymdxs+8l2lS+8MXqT0q9ohT+Knhb2j
EOL
fi
1
1
0

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
  3. You can use dark theme
What you can do with signing up
1
1