LoginSignup
9

More than 5 years have passed since last update.

アッ aws configure でアクセスキーとか入れちゃったけどやっぱ要らんやんけ!となった人へ

Posted at

はじめに

なにかの記事を見たり、あるいはaws-cliの促すとおりにAWSのEC2サーバーaws configureと入力してしまうことが、特に初心者にはよくあるはずです。そう私のような。
けれどもそのaws configureはもしかしたらセキュリティ的にリスクがある行動かもしれません。なぜならconfigureしたEC2上では、その認証情報(アクセスキーやシークレット)が残り続けるからです。
ここでは「えっもうconfigureしちゃったよ」という人向けに消し方を書いておきます。

結論を先に書いておくと、ホームディレクトリに作成されているはずの.awsを消すだけです。

$ rm -r ~/.aws

まず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]: text

こうすると、入力した情報のプロファイルの権限で、AWSの機能にアクセスできるようになりますよね。
この情報を書いたファイルがどこにあるかというと、aws configureを行ったユーザーのホームディレクトリの直下にあります。

例えばec2-userでaws configureしたら、/home/ec2-user/.awsが作成されます。

$ ls -l ~/.aws

-rw------- 1 ec2-user ec2-user  48 Jan 16 13:41 config
-rw------- 1 ec2-user ec2-user 225 Jan 16 14:12 credentials

その.aws隠しディレクトリの下に、configとcredentialsというファイルがあります。
viなどで中身を見たら、入力した情報が書かれていることが確認できるはずです。

$ vi ~/.aws/credentials
/home/ec2-user/.aws/credentials(一例)
[default]
aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

それを踏まえた上でやること

とても簡単です。ホームディレクトリの.awsフォルダを消します。

$ rm -r ~/.aws

EC2でaws-cliを使うには?

EC2でaws-cliを使うには、基本的にEC2インスタンスそのものに、権限を与えましょう。
例えばS3の読み書きをしたいのであれば、S3の読み書きのできるポリシーを割り当てたロールを、EC2にアタッチします。
そうすることでaws configureをしなくても、.awsがなくても、そのEC2で割り当てられた権限の範囲でaws-cliを使えるようになります。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9