はじめに
- 認証に必要な情報は不正利用されてしまうと、大事故(ものすごい請求額)に繋がります。
- 事故がおきないようにどうするべきか。予兆をどう検知するか。おきてしまった時にどう追跡するのか。を考えておく必要があります。
- AWSのサービスを早速バリバリ使ってみるぜ!という気持ちをぐっとこらえてやっておきたい設定をリストアップしました。
- 新しいAWSアカウントを利用する機会があったので、この記事を書きながらやってみましたが長めにみても30分あれば設定は終わります。
ルートアカウントのMFAの有効化
- rootアカウントは超強力なので絶対にMFAを有効にすること。
- ハードウェアデバイスで実施し、金庫に保管するくらいの勢いが良いと思います。
- ハードウェアデバイスは$20くらいで購入が可能です。参考:Multi-Factor Authentication
- 最低でも仮想MFAを設定しておきましょう。私がいつも使っているのはIIJのSmartKeyです。他にもGoogleAuthenticatorなどもあります。
IAMパスワードポリシーの有効化
- 所属する組織に合わせてパスワードポリシーを必ず設定すること。
- ポリシーでは設定できませんが、アカウント作成時にMFAを必須にすることを運用ルールとしました。
cloudtrailの有効化
- 証跡を残すために行う。全リージョンで必ず設定すること。
- S3に保管されたログが改竄されていないことも保証できるので合わせて有効化しておくこと。
- s3にバケットを作成する(trailxxxx)
- プロパティからライフサイクルの設定を行う(底冗長化、Glacier,完全に削除どれにするかはお好みで。とりあえず90日で削除のポリシーとした)
- CloudTrailの設定
- 「すべてのリージョンに適用」「ログファイルの検証を有効化」
- S3のバケットを確認し、証跡が取得できていること。
IAMユーザの作成
- コンソール用、API用は別に分けて作成する。
- APIでアクセスキー・シークレットアクセスキーを利用する場合、本当に必要か?代替できないか?を確認すること(ロールを使ってSTSで認証情報を取得できないかなど。)
- 付与するロールを最小限にしたグループの作成
- ユーザの作成、およびグループへの所属
- CloudTrailでの証跡取得が無意味になるのでユーザは最低必ず1人1アカウント発行すること。
- パスワードの設定(次回ログイン時に再設定してもらうようにしてます)
- MFAの設定
請求関連
設定
*「請求とコスト管理」から「電子メールでPDF版請求書を受け取る」「請求アラートを受け取る」にチェックして「設定の保存」
電子メールでPDF版請求書を受け取る
- rootアカウントに紐づくメールアドレスにしか飛ばせないので、必要であれば関係者が受け取るメーリングリストに変えておく。
請求アラート(Billing Alert)を設定する
- 今回はt2.small×2,Lambda,SWF,RDB,ELB,S3程度なので$100を下回るはず
- 80$でアラートを設定しておきました。
1.「バージニア北部」のリージョンを選択し、CloudWatch - 請求を選択
2. アラームを作成する
3. 超過金額と通知先メールアドレスを設定すると、メールでのSubscriptionを求められるのでConfirmすることでアラートが設定できる。
TrustedAdvisorの通知設定
- ビジネスサポート以上じゃないとすべてのチェックは利用できない。
- ただし、TrustedAdvisorの指摘は守るべきことばかりだし、定期的に自力でチェックするのは大変なものが多くこれだけでもサポートにお金を払う価値がある。
- どうしても守れないルールなどがあれば、必要に応じて除外設定を行い、常にすべてクリアにしておく状態に保つこと。知っていて無視することと知らないということは別物。
- 通知先のアドレスはアカウントに紐付くメールアドレスのみ。