教材の内容に関係のない質問や教材とは異なる環境・バージョンで進めている場合のエラーなど、教材に関係しない質問は推奨していないため回答できない場合がございます。
その場合、teratailなどの外部サイトを利用して質問することをおすすめします。教材の誤字脱字や追記・改善の要望は「文章の間違いや改善点の指摘」からお願いします。
AWSのアカウントの作成、設定に関しての詳細な解説は実施しません。ですが、注意事項等は記載いたしますので、参考にしていただければ幸いです。
AWS アカウント作成の流れを参考に、AWSのアカウントを作成ください。
クレジットカードを登録しますので、パスワードの管理には十分ご注意ください。
仮想 Multi-Factor Authentication (MFA) デバイスの有効化 (コンソール)のページを参考に、ルートユーザーの仮想MFAデバイスを有効にする設定を行ってください。
仮想MFAとは、他要素認証のことになります。通常のIDとパスワードの認証に加えて、ワンタイムパスワードの設定をすることで、ルートユーザの不正ログインを防止することができます。
ルートユーザーで不正ログインされてしまうと、多額の請求が発生する可能性がありますので、厳重に管理をお願いします。
AWSにおいて、ルートユーザーでしか実施できない作業以外は、IAMユーザーでの実施が推奨されています。AWSにおけるルートユーザーは、すべての権限を持っており、誤って危険な設定変更も可能となっておりますので、普段の作業は新規で作成したIAMユーザーの権限で実施します。
まず、新規でIAMユーザーを作成します。既に、IAMユーザーを作成済みの方は、「IAMユーザーの作成」の章はスキップしていただいて問題ありませんが、次の「アクセスキーの設定」は、実施してください。
まず、マネジメントコンソールにログインします。
「サービスを検索する」の部分に、「iam」と入力し、「IAM」をクリックします。
左の一覧から「グループ」をクリックします。
「新しいグループの作成」をクリックします
「グループ名」の欄に「admin」と入力し、「次のステップ」をクリックします。
「AdministratorAccess」を選択し、「次のステップ」をクリックします。
右下の「グループの作成」をクリックします。
次にIAMユーザーを作成します。
左の一覧から「ユーザー」をクリックします。
「ユーザーの追加」をクリックします。
ユーザー名に「portfolio-dev」と入力し、「プログラムによるアクセス」と「AWSマネジメントコンソールへのアクセス」を選択します。
その後、「次のステップ:アクセス権限」をクリックします。
「admin」を選択し、「次のステップ:タグ」をクリックします。
内容は編集せずに、「次のステップ:確認」をクリックします。
右下の「ユーザーの作成」をクリックします。
「.csvのダウンロード」をクリックし、「閉じる」をクリックします。
「credentials.csv」がダウンロードされますので、ファイルを開きます。
ファイル内の「Console login link」をブラウザで開き、「User name」と「Password」の内容でログインします。
ログイン後、パスワードの変更を求められますので、パスワードを変更してください。
マネジメントコンソールにログイン後、右上のログインユーザーが「portfolio-dev」になっていることを確認してください。
前述の手順で、IAMの画面を開き、「ユーザー」→「portfolio-dev」の順番にクリックします。
「認証情報」をクリックします。
「MFAデバイスの割り当て」の右側にある、「管理」をクリックします。
「仮想MFAデバイス」にチェックが入っていることを確認し、「続行」をクリックします。
「QRコードの表示」をクリックし、QRコードを表示します。
表示されたQRコードを、MFA設定用のアプリ(Google AuthenticatorやAuthyなど)で読み取ります。MFAのアプリのインストール方法、設定等については詳細に解説しておりませんので、別の資料等を参照いただければ幸いです。
連続する2つのMFAのコードを入力し、「MFAの割り当て」をクリックします。
「MFAデバイスの割り当て」の表示が、下記画像のようになっていれば、設定ができています。
次回以降のログイン時には、MFAコードが必要になります。
MFAデバイスを紛失すると、ログインできなくなりますので、ご注意ください。
Authyの場合は、マルチデバイス機能やバックアップ機能がありますので、そちらを設定されることをおすすめします。
これまではブラウザ上での操作でしたが、以降はターミナルでの操作になります。
下記コマンドをターミナル上で実行します。
Copied!# AWS CLIをインストールする
$ pip install awscli --upgrade --user
下記コマンドでインストールの確認を行います。
(バージョンは異なる可能性がありますが、問題ありません)
Copied!# AWS CLIのバージョンを確認する
$ aws --version
aws-cli/1.16.258 Python/3.7.4 Darwin/18.7.0 botocore/1.12.248
実行時に下記の様にコマンドが見つからない、というエラーが発生した場合は、
AWS CLIをインストールした場所にパスが通っていないことが原因です。
Copied!$ aws --version
-bash: aws: command not found
Copied!# .bash_profileを開く
$ open ~/.bash_profile
.bash_profileの末尾に、下記をコピー・ペーストして、ターミナルを再起動してください。
AWS CLIをインストールした場所を、パスに追加しています。
Copied!export PATH="$HOME/.local/bin:$PATH"
再度下記コマンドを実行して、確認してみてください。
Copied!# シェルを再起動
$ exec $SHELL -l
# AWS CLIのバージョンを確認する
$ aws --version
「IAMユーザーの作成」でダウンロードした、「credentials.csv」を再度開いてください。
ここでは、「Access key ID」と「Secret access key」を使います。
下記コマンドを実行します。
「XXXX」の部分に「Access key ID」を、「YYYY」の部分に「Secret access key」を入力してください。
Copied!# AWS CLIの設定を行う
$ aws configure
AWS Access Key ID [None]: XXXX
AWS Secret Access Key [None]: YYYY
Default region name [None]: ap-northeast-1
Default output format [None]: json
下記コマンドを実行して、「portfolio-dev」の情報が表示されていれば、正常に設定できています。(表示内容が異なる場合がありますが、エラーが表示されていなければ問題ありません)
Copied!$ aws iam list-users | grep portfolio-dev
Copied!# IAMユーザーの一覧を取得する
$ aws iam list-users | grep portfolio-dev
"UserName": "portfolio-dev",
"Arn": "arn:aws:iam::xxxxxxxx:user/portfolio-dev",
以上で設定は終了になります。
お疲れ様でした。