rclone
Go로 만들어진 클라우드 스토리지 up/down 툴로 AWS의 s3 뿐만 아니라 다양한 클라우드를 지원하는데 Cloudflare R2 역시 지원한다.
또한 윈도우, 리눅스, MAC 등 여러 OS 플랫폼을 지원한다.
설치
리눅스
- CentOS 7 x64 에서 테스트 한다.
- 설치방법은 Script Installation , Precompiled binary 등의 방법이 있다.
Precompiled binary
1. 다운로드 및 압축 해제
curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
2. 파일 복사
cd rclone-v1.66.0-linux-amd64
# 권한 설정
chown root:root rclone
chmod 755 rclone
# 바이너리 파일 복사
cp -arf rclone /usr/bin/
3. man page 설치
cp -arf rclone.1 /usr/local/share/man/man1/
mandb
Script Installation
sudo -v ; curl https://rclone.org/install.sh | sudo bash
윈도우
1. binary 파일 다운로드
https://downloads.rclone.org/rclone-current-windows-amd64.zip
압축 해제 후 rclone.exe 파일을 %SystemRoot%\system32 아래에 복사한다
또는 C 드라이브에 복사 한후 환경변수 추가 설정을 통해 진행한다.
rclone라는 이름으로 디렉토리 이름을 수정한 후 C 드라이브에 복사한다.
2. 환경변수를 등록한다.
rclone.conf
(아래 내용은 윈도우, 리눅스 모두 유사하므로 설명은 리눅스를 기준으로 한다.)
클라우드 스토리지에 접속하기 위한 provider 정보는 rclone.conf를 사용한다.
rclone의 경로는 다음 명령어로 확인 할 수 있다.
rclone config paths
rclone config paths
Config file: /root/.config/rclone/rclone.conf
Cache dir: /root/.cache/rclone
Temp dir: /tmp
대화 형식( interactive )으로 아래의 명령어로 rclone.conf 를 생성해도 되지만
rclone config
직접 rclone.conf 파일 수정을 통해도 된다.
[r2]
type = s3
provider = Cloudflare
access_key_id = <...>
secret_access_key = <...>
endpoint = https://<...>.r2.cloudflarestorage.com
acl = private
access_key_id, secret_access_key, endpoint 는 cloudflare GUI 에서 생성하고 확인할 수 있다.
Permissions
- Admin Read & Write : 모든 bucket의 read, write, delete, list 등의 권한을 가진다.
- Admin Read only : 모든 bucket의 read, list 권한을 가진다.
- Object Read & Write : 특정 bucket의 read, write, delete, list 등의 권한을 가진다.
- Object Read only : 특정 bucket의 read, list 등의 권한을 가진다.
Specify bucket(s)
- 특정 bucket을 선택할 수 있다.
TTL
- Token의 만료되는 시간을 설정 할 수 있다.
Client IP Address Filtering
- Client IP로 ACL 을 설정할 수 있다.
- 설정하지 않으면 모든 IP에 대해 허용된다.
아래와 같이 access_key_id, secret_access_key, endpoint 값을 확인 할 수 있다.
참조 : [cloudflare] R2를 rclone으로 다뤄 보기[2]
'Public Cloud > Cloudflare' 카테고리의 다른 글
[cloudflare] spectrum log의 Clientasn 필드로 AS Name 필드 추가하여 logstash 로 수집하기 (0) | 2024.06.19 |
---|---|
[Cloudflare] R2를 rclone으로 다뤄 보기[2] (0) | 2024.06.04 |
[Cloudflare-CDN] HTTP Header를 무시하고 모든 콘텐츠 caching 하기 (0) | 2023.06.29 |
[Cloudflare] CDN Cache 응답(Response Status)에 따른 HTTP 통신 파악하기 (0) | 2023.06.29 |
[Cloudflare] ColoCode를 Logstash에서 좌표값 Field 추가 하기 (0) | 2022.12.26 |