AWS로 간단하게 워드프레스 사이트 만들기 - (2) HTTPS 세팅

Min Su Kwon·2024년 2월 9일
0
post-custom-banner

인스턴스를 만들고 wp-admin에 접속이 되는 것까지 확인했지만, 눈에 거슬리는게 하나 있다.

그건바로 ip또는 dns로 접속을 시도할때 등장하는 이 경고문이다. 그리고 이 경고문이 등장하는 이유는, 우리가 만든 워드프레스 사이트에 HTTPS 인증서를 설치하지 않았기 때문이다. 대신, 아래와 같은 더미 인증서가 들어가있다는 것을 확인할 수 있다.

HTTPS?

우선 굳이 HTTPS를 사용해야하는가..에 대해서 궁금할 수도 있는데, 개발단계에서 테스트하는 경우가 아니라면 HTTPS 세팅은 해주는게 좋다. 기존에 사용하는 HTTP는 네트워크 통신 과정에서 왔다갔다 하는 내용들이 암호화되어있지 않아서, 중간에 누가 가로챌수만 있다면 중요한 정보들이 그냥 드러날수도 있다. 이를 해결하기 위해서 HTTPS(HTTP + Secure)가 등장하게 되었다.

세부적인 설명은 이곳에 아주 잘 되어있다. 시간이 되면 읽어보는 것을 추천한다. 일단 여기서는 브라우저도 믿을 수 있는 SSL 인증서가 없는 상태고, 이 인증서를 만들어야된다 정도로만 정리하고 넘어가도록 하겠다.

Bitnami Wordpress HTTPS 세팅하기

Bitnami에서 친절하게 문서를 작성해놨다. 이를 참고해서 작업을 진행한다.

참고로 이 작업을 하기 위해선 개인 소유의 도메인이 필요하다. 없다면 AWS Route 53 등을 통해 구매해서 EC2 인스턴스 IP로 연결해준 뒤에 작업이 가능하다.

SSH 접속하기

우선 우리가 만든 인스턴스에 SSH를 통해 접속해야한다. 인스턴스 생성시에 지정한 키파일을 통해서, EC2 인스턴스에 원격접속 해주자. 나는 윈도우즈 환경에서 작업중이고, OpenSSH Client를 설치해둬서, Powershell을 통해 ssh 커맨드로 인스턴스에 접속했다.

위와 같이 bitnami@[인스턴스IP]를 타깃으로 SSH 접속해주면 된다. 처음 접속시에 진짜 접속할건지 물어보는데, 친절히 yes라고 대답해주면 된다.

Bitnami HTTPS Configuration 툴 이용하기

이제 문서에 나와있는 자동 Configuration 툴을 간단하게 이용해주면 된다 😉

sudo su

/opt/bitnami/bncert-tool

ShellScript

Config 툴을 실행하기 전에 루트 권한으로 들어가주고(sudo su), 그 다음 Config 툴을 실행해준다.

입력해주면, 어떤 도메인에 적용할 것인지 물어본다. Route 53 등으로 구입한 도메인을 입력해주면 된다. AWS에서 제공하는 DNS로는 이 작업을 할 수 없다. 나는 테스트를 위해 Route 53으로 등록해놓고 이 EC2 인스턴스 IP로 연결해둔 wordpress-demo.mskwon.click 도메인을 사용했다.

www 도메인이 포함되지 않으면 자동 redirect를 해줄 수 없음을 확인하고, HTTP redirection을 활성화할건지도 물어본다. 둘 모두 Y라고 답해주면,

어떤 변화들이 일어나게 되는지 친절하게 알려준다. 여기에도 Y라고 답해주면

SSL 인증서를 만들어줄 Let's Encrypt 쪽에 필요한 정보를 요청한다. 이메일을 입력해주고, Subscriber Agreement에 동의해주면, 잠시 기다린 뒤에

성공적으로 완료가 된다.

결과학인

이제 등록해놓은 도메인으로 접속을 시도해보면..

이렇게 경고문 없이 잘 접속이 되는 것을 확인할 수 있고, 인증서 문제도 없음을 확인할 수 있다!

하지만 여전히, EC2에서 제공하는 IPv4 DNS를 통해 접속하면 경고문이 뜬다. 인증서의 발급 대상이 wordpress-demo.mskwon.click로 한정되기 때문이다.

profile
이제 막 커리어를 시작한 소프트웨어 엔지니어입니다. 배운 것을 정리하면서 조금 더 깊이 이해하려는 습관을 들이려고 합니다. 피드백은 언제나 환영입니다.
post-custom-banner

0개의 댓글