'생활정보/Cloud'에 해당되는 글 3건

  1. 2024.01.19 S3 Browser 사용방법
  2. 2024.01.18 [AWS] S3 특정 버킷 또는 폴더에만 접근 권한 부여하기
  3. 2020.02.12 AWS EBS 볼륨 축소 방법

Amazon S3 의 객체를 파일시스템(Filezilla, sftp 등) 방식으로 관리하는 툴 중 하나인 S3 Browser 사용법

S3 Browser는 Freeware(개인)이며 기업에서 사용하려면 Pro Version($39.99)을 구입해야 한다.

 

장점:  쉬운사용, S3에 최적화된 기능, 권한설정을 잘 해놓으면 콘솔접속 없이도 S3대부분의 기능을 컨트롤 가능

단점: Deep한 기능은 Pro에서만 제공, Windows 전용(Mac, Linux 불가)

 

우선 S3에 들어가서 계정생성 및 키를 만든다

 

Root 키는 절대 쓰지말고 IAM에서 제한된 권한을 발급한다.

 

https://s3browser.com/aws-access-key-id-and-secret-access-key.aspx

 

Access Key Id and Secret Access Key. How to retrieve your AWS Access Keys and use them to access Amazon S3.

AWS Access Keys Access Keys are used to sign the requests you send to Amazon S3. Like the Username/Password pair you use to access your AWS Management Console, Access Key Id and Secret Access Key are used for programmatic (API) access to AWS services. You

s3browser.com

 

 

테스트일 경우 FullAccess 권한을 주지만 실무에서는 특정 버킷내의 폴더에 대한 권한만 주는 것이 좋다.

 

2024.01.18 - [생활정보/Cloud] - [AWS] S3 특정 버킷 또는 폴더에만 접근 권한 부여하기

 

[AWS] S3 특정 버킷 또는 폴더에만 접근 권한 부여하기

Amazon S3를 사용하다보면 보안 문제로 특정 사용자에게 제한적인 권한을 줘야할 때가 있다. 보통 S3를 처음 쓰거나 할때는 전체 권한을 주는 경우가 많은데 S3에 접근하는 계정이나 App이 많아지면

gazuaa.tistory.com

 

연결 테스트는 S3 Full Access 권한을 주고 연결 확인이 되면 해당 IAM계정의 Role을 변경하자.

 

다음은 브라우저 파일을 받는다

 

 

홈페이지에서 파일을 다운로드: S3 브라우저 - WindowsAmazon S3 클라이언트 이용 

https://s3browser.com

 

S3 Browser - Amazon S3 Client for Windows. User Interface for Amazon S3. S3 Bucket Explorer.

 

s3browser.com

 

다운로드 받은 프로그램 설치

 

 

 

AMI에서 만든 계정의 Access Key 와 Secret Access Key 입력

 

통신하면서 불안한 경우 Encrypt Access Keys with a password를 체크해서 패스워드를 보호하자.

 

만약 위에 "특정 버킷의 폴더"를 제한한 경우라면 아래 "advanced settings"를 클릭해서 버킷명/폴더명 까지 입력해준다.

(안그러면 권한 때문에 List를 볼수 없어 오류가 난다)

 

제대로 연결되었다면 버킷 목록이 보인다.(FullAccess 인경우)

 

폴더 제한을 걸어놓은 경우 해당 폴더가 위치한 버킷만 보이면 성공이다.

 

업로드/다운로드/삭제 테스트를 한다.

 

Posted by IT매니저

출처: AWS Documentation(https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example4.html)

Amazon S3를 사용하다보면 보안 문제로 특정 사용자에게 제한적인 권한을 줘야할 때가 있다.

 

보통 S3를 처음 쓰거나 할때는 전체 권한을 주는 경우가 많은데 S3에 접근하는 계정이나 App이 많아지면 보안문제가 발생할 수 있다. (A가 접근하지 말아야 할 버킷에 파일을 삭제하거나 다운로드 받는 등)

 

1. IAM에서 사용자 추가

 

2. 사용자계정의 엑세스키 만들기

 

3.  사용자선택 후 권한 추가 -> 인라인 정책생성

 

4. Json 탭 선택 후 아래 코드 입력

 

 

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucketVersions",
                "s3:ListBucket"
            ],
            "Resource": "arn:aws:s3:::버킷명",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "폴더명/*"
                }
            }
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject",
                "s3:GetObjectVersion"
            ],
            "Resource": "arn:aws:s3:::버킷명/폴더명/*"
        },
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",
            "Action": "s3:GetBucketVersioning",
            "Resource": "arn:aws:s3:::버킷명"
        }
    ]
}

 

위와 같이 하면 버킷 아래의 폴더 단위까지 컨트롤이 가능하다. 

특히 S3 버킷안에 부서/사용자 별로 접근해야 하는 폴더가 다른 경우 유용하게 사용할 수 있다.

삭제 권한을 빼려면 (업로드/다운로드만 가능하게 하려면) 중간의 "s3:DeleteObject" 부분을 제거해 준다.

 

예시)

Mybucket/testfolder/myfolder

버킷명: Mybucket

폴더명: testfolder/myfolder

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucketVersions",
                "s3:ListBucket"
            ],
            "Resource": "arn:aws:s3:::Mybucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "testfolder/myfolder/*"
                }
            }
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject",
                "s3:GetObjectVersion"
            ],
            "Resource": "arn:aws:s3:::Mybucket/testfolder/myfolder/*"
        },
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",
            "Action": "s3:GetBucketVersioning",
            "Resource": "arn:aws:s3:::Mybucket"
        }
    ]
}

위와 같이 하면 권한이 있는 폴더를 제외한 다른 버킷/폴더는 해당 권한을 가진 IAM계정에서 보이지 않게 된다.

 

App에서만 사용하는 경우는 여기까지만 하면 되고 만약 사용자를 Amazon S3 콘솔에서 접근하게 하려면 보안자격증명에서 콘솔엑세스관리를 눌러 콘솔 접근 권한을 부여해주면 된다.

 

S3 Direct 링크는 다음과 같다. 

https://s3.console.aws.amazon.com/s3/buckets/Mybucket/testfolder/myfolder/ 

 

 

무분별하게 "AmazonS3FullAccess" 권한을 주고 있다면 제한적인 권한으로 보안을 강화시켜보자

 

 

'생활정보 > Cloud' 카테고리의 다른 글

S3 Browser 사용방법  (0) 2024.01.19
AWS EBS 볼륨 축소 방법  (0) 2020.02.12
Posted by IT매니저

AWS 에서 EBS 볼륨 확장은 AWS 매뉴얼을 보면 쉽게 가능하다(lsblk와 resizefs를 잘 쓰면 됨)

   -> AWS Docs 리눅스Linux 인스턴스용 사용 설명서: 볼륨 크기 조정 후 Linux 파일 시스템 확장

 

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

볼륨 크기 조정 후 Linux 파일 시스템 확장

docs.aws.amazon.com

그런데 EBS 볼륨 크기를 줄여야 할 때는 아래와 같은 순서로 한다.

 

1. AWS 콘솔에서 볼륨을 하나 추가한다.

 

2. 생성한 볼륨을 클릭하고 작업 > 볼륨 연결 클릭

 

3. lsblk (볼륨 인식 하고 있는지 확인)

 

4. 축소된 볼륨 포맷

#mkfs -t ext4 /dev/xvdf

5. 디렉토리 생성

#mkdir /DATA_Backup

6. 신규 디렉토리에 신규 볼륨 마운트

#mount /dev/xvdf /DATA_Backup

 

7. 기존 /DATA 에서 /DATA_Backup으로 데이터 이동

#CP -a /DATA /DATA_Backup

   -데이터 확인시 diff 명령어를 사용한다

#diff -r [비교폴더1] [비교폴더2]

8. 기존 볼륨 및 추가볼륨 언마운트

#umount /dev/xvdb
#umount /dev/xvdf

 * 만약 여기서 다음과 같은 에러가 나올 수가 있다. 아래 fuser 명령어로 프로세스를 Kill하고 다시 언마운트 한다

 (device is busy. In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))

[사용자 확인]
#fuser -cu /dev/xvdb
#fuser -cu /dev/xvdf
[프로세스 강제해제]
#fuser -ck /dev/xvdb
#fuser -ck /dev/xvdf

 

9. 축소된 볼륨 마운트

#mount /dev/xvdf /DATA

 

서비스 확인 후 볼륨연결 해제 -> 삭제

 

전부 완료 후 df -h로 제대로 되어 있는지 확인

Posted by IT매니저
이전버튼 1 이전버튼

블로그 이미지
IT 관리자 일기
IT매니저

공지사항

Yesterday
Today
Total

최근에 올라온 글

최근에 달린 댓글

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30