Naver Cloud Platform에 웹 배포하기 - 2 (도메인, SSL 설정)

심승민·2022년 2월 22일
0

이전에는 1번 목표와(API Server 배포) 2번 목표(Client 배포)에 대해서 했다면 이번에는 3번 목표(도메인, SSL 설정)에 대해서 다뤄보려고 한다

3-1. 도메인 설정

먼저 이를 위해서는 도메인을 구매해야한다
나는 이전에 사둔 cafe24에서 사둔 도메인이 있기 때문에 그것을 사용하려고 한다 도메인을 사는 방법에 대해서는 다른 게시물을 참고하면 좋을 것 같고 (너무 예전에 사둬서 기록이 없다...) 나는 cafe24일 경우 도메인을 연결하는 방법에 대해서 말하고자 한다

현재는 도메인과 나의 공인 IP가 연결된 상태가 아니기 때문에 이를 먼저 연결해야 한다 cafe24기준으로 DNS관리에 들어가서 하단의 그림과 같이 A레코드를 변경해야 한다

반드시 기억해야할 것이 포트포워딩이 아니라 DNS관리에서 A레코드를 변경해야한다는 것이다!!!!

포트포워딩과 A레코드의 차이 (추후에 추가)

이런 식으로 A레코드를 변경하고 나면 성공적으로 도메인과 공인 IP가 잘 연결된 모습을 볼 수 있다

3-2. SSL 설정

위를 보면 알겠지만 아직 SSL이 설정되지 않은 상태이다
SSL 또한 인증서를 구매해야하는데 나같은 경우에는 예전에 카페24에서 사둔 SSL 인증서를 쓰려고 한다 따라서 SSL 인증서 구매는 따로 검색을 통해 찾아봐야 할 것 같다... (이것 또한 너무 오래 전에 사두어서 기록이 없다 ㅜㅜ)

인증서를 설치하기 위해서는 인증서를 구매하면 같이 오는 파일들을 다운로드해야 한다

위의 그림을 보면 웹서버환경이 나오는데 별로 중요한 사항은 아닌 것 같아 기본 아파치 환경을 그대로 사용하였다 인증서 종류는 개인키, 인증서, 중개자인증서, 체인인증서가 있는데 전부 다 다운로드하면 된다

개인키(ssl.key), 인증서(ssl.crt), 중개자인증서(chain_ssl.crt), 체인인증서(chain_all_ssl.crt) 중에서 인증서라고 적힌 것들을 전부 합쳐야 한다. 합치는 순서는 인증서, 체인인증서, 중개자인증서 순서이다

(맥, 리눅스 기준 명령어)

cat ssl.crt chain_all_ssl.crt chain_ssl.crt > cert.crt

합친 cert.crt 파일과 개인키 파일을 서버로 업로드한다
나는 이때 자주 사용하는 scp를 사용하였다

업로드 후 nginx 설치를 위해 key 파일을 openssl 명령어로 변환한다

openssl rsa -in ssl.key -out cert.key

이제 파일은 전부 준비가 됐고 nginx의 설정 파일로 접근한다

cd /etc/nginx/sites-enabled
vi default

그리고 아래와 같이 변경한다

변경한 다음 문법적으로 이상이 없는지 테스트 후

nginx -t

이상이 없다면 재실행한다

systemctl restart nginx

이런 과정을 거치고 나면 나의 웹사이트에 보안이 적용된 걸 볼 수 있다!

여기까지 봐주셔서 감사합니다
잘못 이해한 부분에 대한 피드백은 항상 감사히 받겠습니다!




참고
SSL 설치 : https://stove99.github.io/linux/2021/10/14/cafe24-ssl-install-to-nginx/

profile
아는게 없는 왕왕왕초보 개발자

0개의 댓글