인스턴스 설정 및 보안 설정 바꿔주기
Nginx를 시작하기 위해서 먼저 인스턴스를 만들고 보안 설정을 변경해줬다
처음엔 22만 열려 있기 때문에 HTTP와 HTTPS 포트를 추가하고 ip는 모든 ip로 설정하기!
그 다음 인스턴스에 connection 후 서버를 켜기 위해서 Nginx 관련 명령어를 입력해준다
설치
$ sudo apt-get update
$ sudo apt-get install nginx
Nginx 시작 및 활성화 상태 보기 : 실패
$ sudo service nginx start
$ sudo service nginx status
활성화 중이라고 아주 잘 뜬다!
그 러 나......
아래와 같이 뜨는 것이다.....
분명히 보안 설정에서 http랑 https를 둘다 추가 해줬는데 말이다 😂
Nginx에서 현재 열려있는 포트 확인
sudo ss -tulnp | grep nginx
확인해보니 포트가 80번만 열려있었던 것이다...
찾아보니 나처럼 보안 설정에서 https를 추가해줘도 막상 열려있는 포트를 확인해보면 열려있지 않다고 하는 분도 있다는 것을 알아냈다
그렇다면 보안인증서를 추가해주고 443번도 열리도록 설정을 바꿔주자!
자체 서명된 SSL 인증서 만들기
sudo mkdir -p /etc/nginx/ssl
sudo openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 \
-keyout /etc/nginx/ssl/nginx.key \
-out /etc/nginx/ssl/nginx.crt
이렇게 하면 아래와 같이 입력해야 할 값들이 나온다 값을 입력해서 인증서를 생성했다
Country Name (2 letter code) [AU]: KR
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Nginx 설정 파일 열고 수정하기
443포트를 열고 SSL 설정을 추가해준다
혹시 모를 nano 편집기사용법 : 수정하고 저장하는 법
1. Ctrl + O 눌러서 저장
2. Enter
3. Ctrl + X
혹은
1. esc
2. :wq
다시 재시작하고 상태 보기
$ sudo service nginx restart
$ sudo ss -tulnp | grep nginx
그러면 이렇게 443 포트도 열려있다!
재접속
그러면 이렇게 잘 뜨는걸 볼 수 있다
하지만 ERR_CERT_AUTHORITY_INVALID이 발생하게 된다
이것은 SSL 인증서가 유효하지 않거나 신뢰할 수 있는 인증 기관에서 발급되지 않았기 때문에 발생하는 오류인데 자체 서명된 인증서를 발급해서 발생한 문제라서 그냥 마저 접속했다!
신뢰할 수 있는 인증기관에서 발급받으려면 도메인이 있어야 한다고 해서 그냥 이번은 인스턴스 생성 연습이기 때문에 넘어갔다
실무에서는 인증서를
1. aws에서 구입하면 만들어주는게 있다고 한다
2. 혹은 회사에서 데브옵스 팀이 자체적으로 만들어서 설정해준다고 한다!
'AWS' 카테고리의 다른 글
S3 버킷 생성과 스프링부트로 S3에 이미지 저장하기 구현 (0) | 2025.03.21 |
---|---|
RDS 구축하고 EC2에 연결하기 (0) | 2025.03.19 |
Spring 프로젝트 AWS에 배포하기 (0) | 2025.03.19 |