컴공생 누르지 마세요! 컴공생 울어요.

[AWS] WordPress blog 생성 및 DDoS attack 방어 (3) 본문

STUDY/클라우드 컴퓨팅

[AWS] WordPress blog 생성 및 DDoS attack 방어 (3)

당도최고치악산멜론 2022. 11. 23. 20:04

이번 게시글에서는 wordpress 인스턴스와 AWS S3를 연결해 볼 것이다.

wordpress 인스턴스 생성 및 RDS 연결은 지난 게시글을 참고바란다.

(1. https://kwonppo.tistory.com/26)

(2. https://kwonppo.tistory.com/27)


제일 먼저 AWS S3 버켓을 생성해주겠다.

S3 management console로 가서 "버킷 만들기" 버튼을 누른다.

나의 경우에는 S3를 외부에 공개해도 상관이 없기 때문에, 퍼블릭 액세스가 가능하도록 설정하였다.

그외 나머지는 다 default로 해주었다.

 

그럼 이제 S3 버킷이 생성되었음을 확인할 수 있다.

S3 버킷을 생성하였으면 이제 wordpress 블로그로 돌아가겠다.

wordpress 대시보드에 가면 다음과 같이 Plugins 탭이 있다. 이 탭으로 들어간다.

상단에 있는 "Add New" 버튼을 클릭한 후 "WP Offload Media Lite" 플러그인을 검색하여 설치해준다.

설치를 한 후 Activate 버튼을 눌러주고, 설정 탭에 가면 WP Offload Medai가 생겨있음을 볼 수 있다.

저기에 들억면 S3 access를 위한 Storage Provider access credentials를 설정하라고 뜰 것이다.

우선 Select Provider는 Amazon S3로 설정해주고, Connection Method는 "Define access keys in wp-config.php"로 설정한다.

그러고나서 Add credentials를 보면 wp-config.php 파일에 아래와 같은 코드를 복사하라고 뜰 것이다.

여기서 지시하는 그대로 해주면 되는데, 그 전에 우선 access key id와 secret access key를 발급 받기 위해 IAM 사용자를 생성해야 한다.

IAM management console에 가서 사용자를 추가해주면 access key와 secret access key를 발급받을 수 있는데, secret access key는 아무에게도 노출하지 않아야 한다.

 

key를 발급 받았다면 wp-config.php 파일에 다음과 같이 위 코드를 추가해주기만 하면 된다.

자세한 wp-config.php 파일 수정 방법이 궁금하다면 지난 2번째 게시글을 참고하면 된다.

 

이렇게 해서 wordpress 인스턴스와 S3를 연결하였다.

 

 

이쯤에서 이러한 궁금증이 생길 수도 있다.

 

"왜 굳이 RDS와 S3를 둘 다 연결하는 거지?"

 

그 이유는 S3에는 이미지를 저장하고, RDS에는 그 외 나머지 컨텐츠를 저장하기 위함이다.

실제로 S3는 연결하지 않고 RDS만 연결할 경우, 블로그에 이미지를 게시하였을 때 다른 인스턴스의 블로그에서는 이미지가 제대로 뜨지 않는 것을 확인할 수 있다.

이를 방지하기 위해 S3를 인스턴스에 연결해주는 것이다.

Comments