Amazon S3에 Windows 시스템의 개인 data 백업하기

3811 단어 S3windowsbackupS3

1. 버킷 생성하기

Amazon S3 버킷 생성하기 버킷 생성시에 버킷 이름은 전세계 리전에 대하여 유일해야 하는 점. 잊지 않도록 주의하자 버킷 이름은 repush-desktop-backup으로 만들었다


2. IAM 생성하기

IAM 생성

/서비스/IAM/액세스관리/사용자에서 사용자추가를 클릭한다. 사용자 이름은 windows-backup으로 자신이 구분짓기 편하게 지어주고 나중에 AWS 자격 증명 유형선택 시 CLI를 사용할 것이기에 액세스 키를 선택한다 그리고 다음: 권한클릭

그룹 생성

이제 사용자를 추가할 그룹을 생성해주어야한다. 그룹 이름은 repush-desktop-backup으로 간단하게 정해주고 /권한 설정/그룹에 사용자 추가/그룹 시작하기에서 그룹생성클릭하고 정책필터AmazonS3FullAccess를 입력하고 해당 정책그룹을 생성한다. 우리가 방금 선택한 정책은 S3버킷에 대한 모든 권한을 부여했다는 점도 알아두자. 이후에는 간단한 이름태그정도 설정하고 기본값으로 사용자 만들기까지 진행한다. 완료했으면 .csv다운로드클릭

여기서 .csv 파일이란 comma-separated values라는 뜻으로 몇 가지 필드를 쉼표(,)로 구분한 텍스트 데이터 및 텍스트 파일을 말한다.

해당 파일을 메모장으로 열면 다음과 같은 내용이 들어있다. 읽는 방법은 윗단이 아랫단의 내용을 알려주고 ,로 구분지어 해당 내용이 순서대로 대입된다

User name,Password,Access key ID,Secret access key,Console login link
windows-backup,,AKIATPELQ55I4M6KKFWV,38C2F6BHplFAvMaHntj24tozpdN9tly7SUSBVbPN,https://238663298897.signin.aws.amazon.com/console

3. 버킷정책 수정

버킷 정책은 다음과 같이 수정해준다. 우리가 만든 IAM사용자에 대해서 버킷의 접근을 허용한다는 내용이다. 이때 계정ID는 우리가 로그인할 때 쓰는 계정 ID가 아니라 계정마다 있는 고유한 ID넘버임을 잊지말자

{
    "Version": "2012-10-17",
    "Id": "ExamplePolicy01",
    "Statement": [
        {
            "Sid": "ExampleStatement01",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::[계정ID]:user/[IAM사용자]"
            },
            "Action": [
                "s3:GetObject",
                "s3:GetBucketLocation",
                "s3:ListBucket",
                "s3:PutObject",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::[버킷명]/*",
                "arn:aws:s3:::[버킷명]"
            ]
        }
    ]
}

4. AWSCLI로 동기화시키기

AWSCLI를 설치하면 윈도우 cmd환경에서 awsS3버킷에 접근할 수 있다 AWSCLI설치하기 설치가 완료되었으면, cmd창을 열고 아래와 같이 aws에 들어간다

C:\Users\사용자>aws --version
aws-cli/2.0.30 Python/3.7.7 Windows/10 botocore/2.0.0dev34

C:\Users\사용자>aws configure

이제 아까 받았던 .csv파일의 내용을 입력해서 AWS S3버킷에 접속한다

AWS Access Key ID [None]: AKIATPELQ55I4M6KKFWV
AWS Secret Access Key [None]: 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
Default region name [None]: ap-northeast-2
Default output format [None]: json

동기화할 폴더를 C드라이브awsbackup이라는 이름으로 하나 만들어주고 동기화를 확인할 test파일을 만들어서 넣어준다. 그리고 아래와 같이 명령어를 입력해준다 aws s3 sync ‘로컬경로’ ‘s3://버킷명’은 폴더를 동기화시키는 명령어이다.

C:\Users\사용자>cd c:\awsbackup

c:\awsbackup>aws s3 ls
2022-04-01 22:11:16 repush-desktop-backup

c:\awsbackup>aws s3 sync C:\awsbackup s3://repush-desktop-backup
Completed 262 Bytes/269 Bytes (157 Bytes/s) with 2 fileupload: .\aws to s3://repush-desktop-backup/aws
Completed 262 Bytes/269 Bytes (157 Bytes/s) with 1 fileCompleted 269 Bytes/269 Bytes (152 Bytes/s) with 1 fileupload: .\test.txt to s3://repush-desktop-backup/test.txt


5. 삭제하기

버킷을 삭제하기 전에 버킷 안에 있는 내용을 먼저 삭제해주어야 한다. 이 후 아까 만들었던 사용자도 삭제하는 것을 잊지말자

좋은 웹페이지 즐겨찾기