본문 바로가기

Training & Research Projects/API server,Client Development

localhost 도메인부여, 인증서 발급

1. 도메인 생성

http://<공인IP>:8080으로 접속 가능한것을 확인했다. → 하지만 모두 공인 아이피를 이용하여 접속하면 보안상문제, 비효율적이라 DuckDNS사용하여 새로운도메인을 생성해서 접속하게 만들었다.

 

cctvtest라는 도메인을 생성

2. 웹서버 연결하기

 

그 후 리버스 프록시 웹서버 소프트웨어인 nginx를 다운받고 연결해줬다.

리버스 프록시 웹서버가 필요한이유는 보안페이지 제어,WAS에 서버 과부하를 줄이기 위해 필요하다.

WebServer : NGINX

WAS : Spring

DB : MongoDB 이렇게 사용할 예정이다.

3. 인증서 부여하기

이때, https가 아니라 http라서 방화벽에서 안전하지 않은 사이트라고 막는데,

그래서 보안 인증서를 부여해서 https로 만들어봤다

이때 certbot을 다운받아 도메인 cctvtest에 인증서를 부여해줬다.

 

여기서 certbot 이란?

certbot 은 Let's Encrypt의 SSL 인증서 사용을 관리하는 무료 오픈소스 도구이다. certbot 명령을 이용하여, 무료로 사용 할 수 있는 SSL 인증서를 발급/갱신/삭제 관리 할 수 있다.

설치 후 ssl_certificate와 ssl_certificate_key를 발급받았다.

그 후 nginx\conf\nginx.conf 파일 수정

처음설정 : listen 80; → 80포트

server_name _; → 공인IP or DNS(cctvtest.duckdns.org) 둘중 아무거나 접속 가능

이후 설정추가

ssl_certificate C:\Certbot\live\cctvtest.duckdns.org\fullchain.pem; 
ssl_certificate_key C:\Certbot\live\cctvtest.duckdns.org\privkey.pem;

다음과 같이 nginx.conf 파일을 수정했다.(리눅스는 certbot에서 인증서 발급 시 자동으로 설정됨)

이후 http: 80포트를 접속시 https: 443 포트로 자동 우회접속하게 만들었다.

접속 불가능시 404페이지로 뜸

4. 접속 테스트

https://cctvtest.duckdns.org 도메인 발급받고 외부에서 접속이 모두 가능한것을 확인