【AWS入門】初期登録から適切なIAMユーザーでログインするまで
役に立つ人
AWS入門者/はじめてみたい
IAMわからないけどセキュアなアカウントを作りたい
大まかな手順
- ルートアカウント作成・設定
- 請求額のアラートメール設定
- IAMユーザー(admin)作成・設定
- IAMユーザー(develop)作成・ログイン確認
IAMってなんやねんって感じだとと思うけど、「セキュリティを向上させる権限管理機能」ってざっくり覚えてもらえれば良き
今回はユーザーに対して使ってるけども他の使い方もあるから興味があったら調べてみてください
出てくるアカウントについて
- root:神権限。root以外のユーザーはIAMユーザーと呼ばれる。全ての操作を行えるので、今回設定したら触らないようにするのが良い。
- admin:IAMをいじることができる権限を付与する。簡単に言うとユーザーを作成したりする権限
- develop:各種AWSのリソースを触れるような権限を付与する
普段の開発ではdevelopを使う
ユーザーを作成したり新たな権限に変更したい場合にadminを使う
rootは封印する。請求(Billing)関連を見るときだけ使う(今回はIAMユーザーに解放しないので)
ルートアカウント作成
https://portal.aws.amazon.com/billing/signup#/start
クレジットカードと携帯番号が必須
クレジットカードを持っていないなら適当にクレジットカードを作るんだ
できたらまた来てくれ
よくわからないなら年会費無料の楽天カードがおすすめだ
個人利用なのでパーソナルで良い
住所はローマ字表記だから注意が必要だ
一々打ってられないって人は変換してくれるサイトを活用すべし
https://kimini.jp/
プランが出てくるがサポートが必要になればその時に変更できるからとりあえず無料を選ぶ
登録が完了すればメールが届くぞ
上記のメール内のリンクからコンソールのログイン画面へ遷移する
先ほど入力したパスワードを使ってログインする
ログインできたね、やったね
ただしここで止めてはいけない
寝るのはセキュリティ対策をしっかりしてから。約束だよ
ルートアカウント設定
ルートアカウントでの操作は下記3つ
- MFA認証を登録
- 無料枠超過メールの送信機能有効化
- IAMユーザー(admin)作成
MFA認証を登録
ルートアカウントに限らず全てのアカウント(admin/develop)で設定する
パスワードだけの認証よりもかなりセキュリティが向上する。必ず設定してください
スマホにアプリを入れるのですがいくつか選択肢があります
僕はAuthyを使っていますがお好みで選んでインストールしておいてください
コンソール内のIAM画面へ遷移
画像のリンクから登録画面へ移ってスマホにインストールしたMFAアプリでQRコードを読み取り、30秒おきに新しいコードが表示されるので1→2と続けて入力してください
無料枠超過メールの送信機能有効化
この設定をするだけで無料枠からはみ出ちゃうかもしれないときにメールが送られてきます
コンソール内のBillingへ遷移
画像の通りリンクを辿って3つのチェックを入れて設定してください
IAMユーザー(admin)作成
ルートユーザーで最後にIAMユーザー(admin)を作成します
この操作が終わったら神であるルートアカウントは封印してください
コンソール内のIAM画面へ遷移
ユーザーリンクからユーザーを追加ボタンを押す
そしたら作成するユーザーの情報が求められるので図のように作成
この時に「プログラムによるアクセス」にチェックを入れないこと
高額請求あるあるなシークレットキーとかを無駄に作成しないようにします
次にIAMをいじることができるグループを作成します
今回はadminを所属させます
IAMFullAccessというポリシーにチェックを入れてグループの作成を押す
後は作成したグループを選択して青いボタンをポチポチ押していきます
すると作成に成功した旨のページが表示されます
パスワードをメモってからコンソールのログイン画面へ遷移してログイン
やったね
ルートアカウントは以後封印します
IAMユーザー(admin)設定
IAMユーザー(admin)での操作は下記5つ
- MFA認証を登録
- コンソールログインのエイリアスを設定
- パスワードポリシーの変更
- IAMユーザー(develop)作成
- IAMユーザー(develop)のMFA認証を登録
MFA認証を登録
ルートアカウントと同じです
必ず設定しましょう
コンソール内のIAM画面へ遷移
下記画像のリンクからMFA認証の登録画面へ飛んでください
コンソールログインのエイリアスを設定
コンソールへのログイン時のエイリアス部分にランダムな12桁の数字を入力する代わりに自分の覚えやすい文字列に変更できます
12桁の数字なんて忘れないよって人外は設定しておくと楽ですよ
コンソール内のIAM画面のダッシュボードへ遷移して下記画像のリンクを押すと設定できます
パスワードポリシーの変更
初期設定だと弱めのパスワードなので強いパスワードのみしか設定できないようにします
めんどくさいって人は飛ばしてもいいですけど流出して後悔するなら設定した方がいい気がしませんか?!
コンソール内のIAMページ→アカウント設定から画像のボタンを押すと設定できます
色々出てきますが全部にチェックを入れておきましょう
IAMユーザー(develop)作成
IAMユーザー(develop)を作成します
基本的にはIAMユーザー(admin)と同じなのですが付与するIAMが違います
今回はリソース操作(EC2を立ち上げたりできる)全般を行えるIAMを設定します
PowerUserAccessってやつです
それ以外はIAMユーザー(admin)と同じなので作成成功画面まで青いボタンをぽちぽちしましょう
パスワードをメモったら、コンソールのログイン画面へ遷移する前に最後にもう一つだけ操作があります
IAMユーザー(develop)のMFA認証を登録
IAMユーザー(develop)にはMFAを自分で登録する権限を与えていません
ですのでログインしてもMFA認証を登録することができません
そのため、MFA認証を登録する権限を有しているIAMユーザー(admin)にて登録します
ややこしいですね。今回はそういうものとして同じ操作をしてください
コンソール内のIAM画面へ遷移
ユーザーリンクからdevelopユーザーのリンクを押す
管理リンクを押してMFA認証を登録する
IAMユーザー(develop)でログイン確認
IAMユーザー(develop)でログインします
コンソールログイン画面へ遷移してIAMユーザーを選択して先ほど設定したエイリアスを入力
https://console.aws.amazon.com/
そしたらユーザー名とメモっておいたパスワードでログインします
MFA認証と新規のパスワードを設定すればコンソール画面へログインできるはず!!
最後に
長時間お疲れ様でした
冒頭でも少し触れましたが普段の開発する場合はIAMユーザー(develop)を使いましょう
これでセキュリティ対応はバッチリ!!
通常運用であればよほどのことがない限り高額請求なんて来ないはず
1年間は無料枠が用意されているのでAWSを使い倒しましょう
それでは参考になれば幸いです!!