Cwらぼっちゃ - IT技術研究ノート -

IT技術に関する記事を掲載します。

はじめてのAWS


はじめに

AWSは言わずと知れたAmazonが提供するクラウドコンピューティングサービスです。
ここでは、AWSを使用するためにアカウントの登録から最初にやっておくべきことについて綴ります。

本記事の目次

  1. 無料アカウント登録
  2. ルートアカウントのMFAを設定
  3. 料金関連設定
  4. パスワードポリシーの設定
  5. 管理者 IAM ユーザーおよびグループの作成

無料アカウント登録

以下のURLからAWSの無料アカウントを登録します。

https://aws.amazon.com/jp/

「今すぐ無料アカウント作成」をクリックします。
f:id:CwLab:20190502162231p:plain

「Eメールアドレス」、「パスワード」、「パスワードの確認」、「AWS アカウント名」を入力し、「続行」をクリックします。
f:id:CwLab:20190502162854p:plain

「アカウントの種類」、「電話番号」、「国/地域」、「アドレス」(住所)、「市区町村」、「都道府県または地域」、「郵便番号」を入力します。
今回は個人利用で登録しますので、「アカウントの種類」は"パーソナル"を選択します。
住所は半角英数字で入力する必要がありますので、漢字をアルファベットに変換して登録します。

AWSカスタマーアグリーメント」の同意にチェックし、「アカウントを作成して続行」をクリックします。
f:id:CwLab:20190502164559p:plain

料金の支払情報を入力します。
1年間の無料利用をする場合も入力は必要です。
「クレジット/デビットカード番号」、「有効期限日」、「カード保有者の氏名」を入力し、「請求先住所」を選択します。
※入力した連絡先情報と異なる請求先を指定する場合は"新しい住所を使用する"を選択し、新しい連絡先情報を入力します。
 ここでは"連絡先住所"を使用するを選択します。
「セキュアな送信」をクリックし、次に進みます。

f:id:CwLab:20190504011022p:plain

本人確認情報を入力します。
ここでは"テキストメッセージ(SMS)"を利用して本人確認を行います。
「SMSを送信する」をクリックします。

f:id:CwLab:20190504010846p:plain

SMSで認証コードが送信されるのでその数字を入力し、「コードの検証」をクリックします。
f:id:CwLab:20190502171612p:plain

本人確認ができます。「続行」ボタンをクリックします。
f:id:CwLab:20190502171743p:plain

サポートプランを選択します。
「無料」をクリックします。
f:id:CwLab:20190502171951p:plain

アカウント登録が完了しました。
f:id:CwLab:20190502172314p:plain

ルートアカウントのMFAを設定

最初に登録したアカウント(ルートアカウント)のセキュリティを強化するためにMFA(Multi-Factor Authentication:多要素検証)を設定します。
AWSにサインインする際に、通常のアカウントとパスワードに加え、個人が所有しているデバイス(MFAデバイス)から発行されるワンタイムパスワードを入力することで、セキュリティを強化できます。
MFAデバイスは2種類あります。

  1. ハードウェアデバイス  キーホルダータイプ、カード型のMFAデバイスがあります。
     サードパーティプロバイダのGemalto社が販売しています。
  2. 仮想デバイス  Google Authenticatorというアプリをインストールして使用します。 ここでは仮想デバイスを使用します。
    f:id:CwLab:20190504030333p:plain

AWS マネジメントコンソール トップから「サービス」→「IAM」へ進みます。
f:id:CwLab:20190504031458p:plain

「セキュリティステータス」から「ルートアカウントのMFAを有効化」を選択し、「MFAの管理」をクリックします。
f:id:CwLab:20190504132049p:plain

f:id:CwLab:20190504032216p:plain

「セキュリティ認証情報」画面から「多要素認証(MFA)」をクリックします。
f:id:CwLab:20190504033328p:plain

「MFA デバイスの管理」ダイアログから「仮想 MFA デバイス」を選択し、「続行」をクリックします。
f:id:CwLab:20190504033713p:plain

「仮想 MFA デバイスの設定」ダイアログから「QRコードの表示」をクリックします。

f:id:CwLab:20190504034208p:plain

インストールした Google Authenticator から設定を開始すると 6桁の数字が一定時間ごとに切り替わります。
f:id:CwLab:20190504035558p:plain

表示される6桁の数字と切り替わった6桁の数字を「MFAコード1」と「MFAコード2」に入力し、「MFA の割り当て」をクリックします。
f:id:CwLab:20190504034700p:plain

「仮想 MFA デバイス」の設定が完了しました。
f:id:CwLab:20190504041022p:plain

サインインを確認します。
通常通りサインインを行うと、MFAコードの入力を求められます。
f:id:CwLab:20190504042248p:plain

Google Authenticator でMFAコードを発行し、それを入力します。
「送信」をクリックするとサインインができます。

料金関連設定

AWS は各種サービスの使用量に応じて料金が発生します。
気づかぬうちに予想以上の料金が請求されないように料金に関する設定を行います。

AWS マネジメントコンソールのヘッダのサインインユーザー名が表示されているプルダウンメニューから「マイ請求ダッシュボード」をクリックします。

サイドメニューから「Billing の設定」をクリックします。
f:id:CwLab:20190504162839p:plain

デフォルトでは何も設定されていません。
すべてにチェックを入れ、通知を受ける「E メールアドレス」を入力します。
「請求アラートを受け取る」は料金が設定値に達した際に、メール通知を受け取ることができますので設定しておいた方が良いでしょう。
ただし、「請求アラート」は一度オンにするとオフに戻すことはできませんので、各自の都合に合わせてオンにするかどうかを判断してください。
設定を入力したら「設定の保存」をクリックしてください。
f:id:CwLab:20190504163509p:plain

次に予算を設定します。
「マイ請求ダッシュボード」画面から「Budgets」(予算)をクリックします。
f:id:CwLab:20190504164854p:plain

「Create a budget」をクリックし、予算の設定に進みます。
f:id:CwLab:20190504165021p:plain

「予算タイプの選択」から"コスト予算"を選択し、「予算の設定」をクリックします。
f:id:CwLab:20190504165126p:plain

「予算の詳細」を入力し、「アラートの設定」をクリックします。
ここでは、月別に全体で50$を予算とします。
アカウント全体の予算を設定するので、「コストの集計基準」は"ブレンドコスト"を選択します。
f:id:CwLab:20190504165602p:plain

「アラートの設定」を入力し、「Confirm budget」をクリックします。
ここでは実際のコストに基づいて、予算の80%を超えたらアラートを送信するように設定します。
f:id:CwLab:20190504170500p:plain

内容の確認を確認したら「作成」をクリックして、請求アラートの作成を実行します。
f:id:CwLab:20190504170818p:plain

これで予算と請求アラートの設定が完了しました。
f:id:CwLab:20190504171004p:plain

パスワードポリシーの設定

AWSのデフォルトのパスワードポリシーは非常に脆弱です。
そのため、ルートアカウントの他にIAMユーザーを追加する前にパスワードポリシーを設定します。

AWS マネージメントコンソールの IAM 管理画面から「IAM パスワードポリシーの適用」をクリックします。
f:id:CwLab:20190504134538p:plain

「パスワードポリシーの管理」をクリックします。

f:id:CwLab:20190504142106p:plain

デフォルトのパスワードポリシーが表示されています。
f:id:CwLab:20190504142414p:plain

パスワードポリシーをより強固なものに変更し、「パスワードポリシーの適用」をクリックします。
f:id:CwLab:20190504142748p:plain

パスワードポリシーの設定が完了しました。
f:id:CwLab:20190504142915p:plain

管理者 IAM ユーザーおよびグループの作成

ルートアカウントとは別に管理者 IAM ユーザーを作成します。
個人利用する場合はルートアカウントのみで十分かもしれませんが、AWSは大抵は会社で利用するでしょう。
IAM ユーザーアカウントごとに誰がどのリソースにアクセスできるかを制限するためにルートアカウントとは別に IAM ユーザーを作成します。

AWS マネージメントコンソールの IAM 管理画面から「個々の IAM ユーザーの作成」をクリックします。

f:id:CwLab:20190504144206p:plain

「ユーザーの管理」をクリックします。
f:id:CwLab:20190504144314p:plain

IAM ユーザー管理画面から「ユーザーを追加」をクリックします。
f:id:CwLab:20190504144518p:plain

「ユーザー名」を入力し、「アクセスの種類」をチェックします。
ここでは「アクセスの種類」はAWS CLI を利用することを見越して、"プログラムによるアクセス"および"AWS マネジメントコンソールへのアクセス"の両方にチェックを入れます。
f:id:CwLab:20190504144757p:plain

"AWS マネジメントコンソールへのアクセス"にチェックを入れると、「コンソールのパスワード」、「パスワードのリセットが必要」の選択欄が表示されます。それぞれ選択して「次のステップ:アクセス権限」をクリックします。
ここでは「コンソールのパスワード」は"自動生成パスワード"を選択し、「パスワードのリセットが必要」にもチェックを入れます。
f:id:CwLab:20190504145601p:plain

まだグループを作成していませんので、以下の画面のように表示されます。
「グループの作成」をクリックしてグループの作成に進みます。
f:id:CwLab:20190504145917p:plain

「グループの作成」ダイアログが表示されるので、「グループ名」を入力し、グループに適用する「ポリシー」を選択します。
細かく設定することができますが、ここでは管理者ユーザーを作成するので、グループも管理者グループを作成し、そのポリシーもAdministratorAccess(フルアクセス)を適用します。
「グループの作成」をクリックします。
f:id:CwLab:20190504150034p:plain

「ユーザーを追加」画面に戻ると、作成したグループがチェックされています。
「次のステップ:タグ」をクリックします。
f:id:CwLab:20190504150828p:plain

作成するユーザーにタグをつけます。
IAM ユーザーの数が少ないうちはこのユーザーがどういうユーザーなのかを識別できますが、数が増えると管理が困難になります。
そのためタグをつけて、ユーザーを識別できるように設定します。
入力したら「次のステップ:確認」をクリックします。
f:id:CwLab:20190504151427p:plain

ここでは、「キー」を"NOTE"とし、その「値」として"Administrator User"としてタグをつけます。
※例のごとく日本語は使用できませんので、半角英数字記号で入力します。

「確認」画面にこれまでに入力した内容が表示されます。
内容に誤りがなければ、「ユーザーの作成」をクリックします。
f:id:CwLab:20190504152014p:plain

ユーザーの追加が完了しました。
表示されている情報を今後利用しますので、必ず「.csv のダウンロード」をクリックし、ユーザー情報を保管しましょう。
f:id:CwLab:20190504152405p:plainf:id:CwLab:20190504152405p:plain

csv をダウンロードしたら、「閉じる」をクリックし、ユーザーの追加を終了します。

最後に追加したユーザーでサインインします。
ダウンロードした csv に「Console login link」が載っていますので、そのURLにアクセスします。
このときルートアカウントはサインアウトしておいてください。

サインイン画面が表示されますので、ダウンロードした csv に記載されている「User name」、「Password」を入力し、「サインイン」をクリックしてサインインします。
f:id:CwLab:20190504153252p:plain

ユーザーを追加した際に、「パスワードのリセットが必要」にチェックを入れていたので、サインインに成功するとパスワードの変更を求められます。
古いパスワードと新しいパスワードをパスワードポリシーに倣って入力し、「パスワード変更の確認」をクリックします。
f:id:CwLab:20190504153749p:plain

サインインが完了し、AWS マネジメントコンソール のヘッダにサインインしたユーザー名が表示されます。
f:id:CwLab:20190504154417p:plain

これで追加したユーザーのサインインが確認できました。