LoginSignup
1
0

More than 5 years have passed since last update.

AWS S3をバックアップの置き場所として使う

Last updated at Posted at 2016-08-20

(AWS S3を触るのは初めてなので、間違っている点がありましたらご指摘いただけますと助かります!)

さくらVPS(以後、VPS)が高速、かつ、低価格なために愛用している。しかしファイルのバックアップについては悩みがあった。複数台借りているので互いのバックアップをとりあったり特定の1台にバックアップファイルを集約するなどいろいろ方法は考えられる。

今回はAWSの勉強を兼ねてS3をバックアップ場所として利用することにした。

S3のバケットを1つ作り、そこに全VPSのバックアップを入れてもよいが、この場合、VPSの1台がハックされた場合に全サーバのバックアップファイルを取得できてしまう。そこでVPSの1台に対してIAMのユーザを1つ作成、バケットも複数作成して各VPS専用とした。

s3.png

1. バケットを作成する。最初にバケットを作成する理由は、ポリシーを設定する際にバケットの名称(arn)が必要になるため

image

2. IAMでユーザを作成する(その際、credentialを保存しておく)

image

3. IAMでポリシーを作成する

image

4. 作成したポリシーをユーザに適用する

image

5. S3に戻り、バケットのパーミッションからバケットポリシーを設定する。私はポリシーエディアを利用した。

image

Principalの指定だが、IAMの特定ユーザを指定する場合は次のように書く:

arn:aws:iam::AWSのアカウントID:user/IAMのユーザ名

リソースは次のように書く:

arn:aws:s3:::バケット名,arn:aws:s3:::バケット名/*

Generate Policyを押し、JSONの中身をコピーして、Bucket Policy Editorにペーストする:

image

6. さくらVPSにログインし、AWSをアクセスするために必要なツールをインストールする

yum install python

wget https://s3.amazonaws.com/aws-cli/awscli-bundle.zip

unzip awscli-bundle.zip
cd awscli-bundle
./install -i /usr/local/aws -b /usr/local/bin/aws

7. s3のバケットが見れるか、確認する

aws s3 ls s3://bucket-for-sakura-vps1

(エラーが出なければOK)

8. s3にファイルをアップロードしてみる

touch hoge
aws s3 cp hoge s3://bucket-for-sakura-vps1
upload: ./hoge to s3://bucket-for-sakura-vps1/hoge

と出力されればOK。

1
0
0

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
1
0