프로젝트를 진행하면서 비밀번호 암호화를 제외하면 보안에는 크게 신경 쓰지 못했는데 학교에서 정보 보안 수업을 듣다 보니 점점 심각성이 느껴져서 기본적인 것부터 하나하나 해보려고 한다. 더 안전하고 단단한 나의 소중한 서버를 위해ㅎㅎ
먼저 도메인을 설정하고 해당 도메인의 SSL 인증서를 받는다.
nginx와 스프링부트 모두에 https를 적용시켜준다.
스프링부트에 적용시켜주지 않으면 nginx에서 스프링부트로 갈 때 결국 http로 전송되기 때문에 안전하지 못할 수 있다.
https://www.duckdns.org/login-github?code=940278cf1655fcd8cf65&state=uhoibougyohouhpyh87yy
Duck Dns라는 사이트에서 무료로 ip주소 5개까지 무료로 도메인을 만들어준다.
깃헙 구글 등 아이디로 로그인하면 바로 원하는 이름의 도메인을 만들 수 있다.
AWS EC2등 클라우드를 사용한다면 문제가 없겠지만
현재 집에 노트북에 리눅스를 설치해 서버로 사용하고 있기 때문에 공인 IP가 고정이 아니라 언제든 변경될 수 있는 상황이다.
이런 경우를 대비해 duckdns는 자동으로 갱신된 IP와 연동해 주는 기능이 있다.
사이트 상단의 install을 누르고 제일 하단에서 자신의 도메인을 선택하고
사용 중인 운영체제를 선택하면 명령어들이 나오는데 그대로 따라 하면 된다.
이제 http://설정한 도메인 이름.duckdns.org 이 주소로 요청을 보내면 된다.
http는 기본으로 80포트를 사용하기 때문에 포트 번호가 다르다면
http://설정한 도메인 이름.duckdns.org:포트번호 이런식으로 사용하면 된다.