コンソール操作は直感的ですが、複数のバケットやインスタンスを扱いはじめると、毎回クリックして探すのは非効率になってきます。WSL2のLinuxターミナルにAWS CLIを入れれば、
aws s3 lsやaws ec2 describe-instancesの1行でAWSリソースをコマンドから操作できます。この記事では、WSL2(Windows Subsystem for Linux 2)のUbuntu上にAWS CLI v2をインストールして、認証情報の設定からS3・EC2の基本操作を試すまでの手順を初心者向けに解説します。実際にコマンドを動かしながら、クラウドとLinuxターミナルをつなぐ感覚をつかんでください。
この記事のポイント
・WSL2のUbuntuにAWS CLI v2をインストールして「aws」コマンドが使えるようになる
・aws configureでアクセスキー・リージョンを設定するだけで接続できる
・aws s3 ls・aws ec2 describe-instancesで基本的なリソース確認ができる
・「command not found」「Unable to locate credentials」エラーの対処法も解説する
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
なぜWSL2でAWS CLIを使うのか?
AWSの操作にはブラウザのマネジメントコンソールを使う方法が一般的ですが、現場のエンジニアはコマンドラインを好んで使います。その理由は主に3つあります。・繰り返し操作を自動化できる:シェルスクリプトと組み合わせれば、複数のS3バケットへの一括アップロードや、EC2インスタンスの一括起動も1行で実行できます
・操作ログが残る:historyコマンドで過去の操作が確認でき、何をやったか記録が残ります
・Linux環境と統一できる:本番のLinuxサーバー上でもAWS CLIは同じコマンドで動きます。WSL2で慣れておけば、本番でも迷いません
WSL2はWindows上でLinuxのターミナル環境を使えるようにする仕組みです。WSL2がまだインストールされていない方は、先に「WSL2でLinuxを始める手順」の記事で環境を整えてから戻ってきてください。
AWS CLI v2のインストール手順
動作確認環境: Ubuntu 24.04 LTS(WSL2)、AWS CLI v2.17.x1. WSL2のUbuntuを最新の状態にする
まず、Ubuntuのパッケージを最新の状態にします。WSL2のターミナルを開いて以下を実行してください。sudo apt update && sudo apt upgrade -y
2. AWS CLI v2のインストーラーをダウンロードする
AWSの公式インストーラーをcurlでダウンロードして展開します。# インストーラーのダウンロード curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" # unzipで展開(入っていない場合は sudo apt install unzip -y で導入) unzip awscliv2.zip # インストール実行 sudo ./aws/install
3. インストールの確認
インストールが成功したかどうかをバージョンコマンドで確認します。aws --version
aws-cli/2.17.45 Python/3.12.6 Linux/5.15.167.4-microsoft-standard-WSL2 exe/x86_64.ubuntu.24
AWS CLIの初期設定(aws configure)
インストールしただけでは、どのAWSアカウントに接続するか分かりません。aws configureコマンドで認証情報を設定します。1. IAMユーザーのアクセスキーを用意する
aws configureに必要なのは以下の4つの情報です。・AWS Access Key ID:IAMユーザーのアクセスキーID(AKIAで始まる20文字)
・AWS Secret Access Key:アクセスキーに対応するシークレットキー(40文字)
・Default region name:操作するAWSリージョン(東京リージョンは「ap-northeast-1」)
・Default output format:コマンドの出力形式(json・text・tableから選ぶ。初心者はjsonでOK)
アクセスキーはAWSマネジメントコンソールの「IAM > ユーザー > セキュリティ認証情報」タブから発行できます。発行したら手元にメモしておいてください(シークレットキーは一度しか表示されません)。
2. aws configureコマンドで設定する
aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: ap-northeast-1 Default output format [None]: json
3. 設定ファイルの確認
設定は~/.aws/ディレクトリに保存されます。# 認証情報ファイル(アクセスキー) cat ~/.aws/credentials # 設定ファイル(リージョン・出力形式) cat ~/.aws/config
# ~/.aws/credentials の内容例 [default] aws_access_key_id = AKIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
基本的な操作を試す
設定が完了したら、実際にAWSリソースにアクセスしてみます。1. S3バケットの一覧を確認する
aws s3 ls
2025-03-15 10:23:45 my-backup-bucket-20250315 2025-08-01 08:00:12 my-webapp-static-assets
2. EC2インスタンスの一覧を確認する
EC2インスタンスの状態をテーブル形式で確認します。aws ec2 describe-instances --query "Reservations[].Instances[].{ID:InstanceId,State:State.Name,Type:InstanceType}" --output table
--------------------------------------------- | DescribeInstances | +------------------+-----------+-----------+ | ID | State | Type | +------------------+-----------+-----------+ | i-0a1b2c3d4e5f | running | t3.micro | | i-0f5e4d3c2b1a | stopped | t2.small | +------------------+-----------+-----------+
--queryオプションで必要な列だけを絞り込んでいます。JSON全量が不要な場面でよく使うパターンです。よくあるエラーと対処法
1. 「command not found: aws」が表示される
インストール後すぐにawsが使えない場合は、ターミナルを閉じて再起動してください。パスが反映されていないことが原因です。それでも解決しない場合は、インストールパスを確認します。
which aws # /usr/local/bin/aws が返ってくれば正常 # 何も返ってこない場合はインストールが失敗している # 再インストールする場合は以下でインストール先を指定する sudo ./aws/install --update
2. 「Unable to locate credentials」エラーが出る
aws configureを実行していないか、設定に失敗している場合に出るエラーです。An error occurred (AuthFailure) when calling the DescribeInstances operation: Unable to locate credentials. You can configure credentials by running "aws configure".
aws configureを再度実行して、アクセスキーIDとシークレットキーを正しく入力してください。アクセスキーに必要なIAMポリシーがない場合は「AccessDenied」エラーになります。その際はAWSのIAM管理画面でポリシーを確認してください。3. リソースが見つからない(空の一覧が返る)
設定したリージョンと、実際にリソースを作成したリージョンが異なると、S3やEC2の一覧が空になります。# コマンド実行時に一時的にリージョンを指定する方法 aws ec2 describe-instances --region us-east-1 # 設定を更新する場合は aws configure を再実行する
アクセスキーの管理で注意すること
AWS CLIを使うにあたって、アクセスキーの扱いには十分な注意が必要です。現場で実際によく起きるミスを2つ紹介します。・【注意】アクセスキーをGitHubに絶対にアップロードしない:
~/.aws/credentialsや.envファイルをGitリポジトリに含めると、インターネット上に認証情報が公開されてしまいます。悪意のある第三者に発見されると、クラウドリソースが不正利用されて多額の課金が発生する事故になります・【注意】ルートユーザーのアクセスキーは作成しない:AWSの最高権限を持つルートユーザーのアクセスキーを発行するのは危険です。必要最小限の権限を持つIAMユーザーを作成して、そのアクセスキーを使う運用が現場の鉄則です
アクセスキーが漏洩した疑いがある場合は、AWSマネジメントコンソールのIAM画面からすぐに無効化してください。
本記事のまとめ
| やりたいこと | コマンド |
|---|---|
| AWS CLIのバージョン確認 | aws --version |
| 認証情報の設定 | aws configure |
| S3バケット一覧の表示 | aws s3 ls |
| EC2インスタンス一覧(テーブル形式) | aws ec2 describe-instances --output table |
| 特定リージョンを指定して実行 | aws ec2 describe-instances --region ap-northeast-1 |
| 認証情報ファイルの確認 | cat ~/.aws/credentials |
無料の「Linuxサーバー構築入門マニュアル(図解60ページ)」をプレゼントしています。
コマンドを「なんとなく打つ」段階から卒業したい方は、ぜひ受け取ってみてください。
無料マニュアルを受け取る >>
次に読む記事(LinuxMaster.JP)
・DNS設定とresolv.confをnmcliで管理する方法|NetworkManagerとの連携も解説・Apacheのタイムアウト設定を確認・変更する方法|Timeout・KeepAliveTimeout対応
・ssコマンドでポートの使用状況を確認する方法|LISTEN・ESTABの見方
・systemctlでサービスを管理する方法|起動・停止・自動起動設定
・tarコマンドで圧縮・解凍する方法|.tar.gzと.tar.bz2の両対応
・ftpコマンドでファイルを転送する方法|接続からダウンロードまで
・rpmコマンドでパッケージを照会・検証する方法|RHEL/CentOS対応
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
姓・名・メールの3つだけ/30秒/解除は3秒 / 詳細はこちら
- 前のページへ:LinuxサーバーにSSHで接続する入門|公開鍵認証の仕組みとVPS・クラウドへの接続手順
- この記事の属するカテゴリ:【Linux入門】初心者のための基礎知識・講座へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は30秒、解除もいつでも可。
登録無料・いつでも解除できます