티스토리 뷰
AWS Route53에서 생성한 도메인은 AWS ACM에서 인증서를 발급 받아 EC2, ELB에 적용 가능
현재 회사에서 하고 있는 프로젝트의 도메인은 Whois에 신청하여 별도의 인증서 발급이 필요
Whois에 돈을 지불하고 인증서를 발급 받거나 letsencrypt 사용하여 무료로 발급 받는 두 가지
방법 중 letsencrypt로 결정
Let's Encrypt
인터넷을 안전하게 보호(전송 데이터 암호화)할 수 있게 인증서를 제공
현재 3억 개의 웹사이트에 SSL/TLS 인증서를 발급하였고 AWS, IBM, Chrome 등
수 많은 대형 기업들이 후원하고 있는 믿고 사용할만한 서비스
Certbot
letsencrypt(CA)에서 Certbot ACME(자동 인증서 관리 환경) 사용 권장
Certbot은 수동으로 관리되는 웹사이트에서 Let’s Encrypt 인증서를 자동으로 사용
HTTPS 활성화해주는 무료 오픈 소스 소프트웨어 도구
HTTPS 접근을 위한 AWS Securiy Group 설정
- Inbounds
- 22, 80, 443
- Outbounds
- 모든 트래픽 허용
EC2 SSH 에서 certbot 설치
sudo yum install certbot
certbot 인증서 발급
sudo certbot certonly --standalone
위 과정을 거치고 정상적으로 인증서를 발급 받으면 /etc/letsencrypt/live/도메인 주소(폴더 명)에 생성된
인증서 목록을 아래 이미지와 같이 확인 가능(keystore.p12제외)
Spring boot에서 사용할 수 있는 PKCS12 형태로 변경
(PKCS12는 인증서 체인 및 개인 키를 암호화 가능한 단일 파일에 저장하는 이진 형식)
아래 명령어 입력 후 진행 중 패스워드를 요구하는데 Spring Boot application.properties에 적용할 값이다
sudo openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name ttp -CAfile chain.pem -caname root
keystore.p12 파일 적용
- src
- main
- resources
- keystore.p12
- resources
- main
Spring Boot application.properties 설정
SSL 적용 관련하여 참조한 URL
https://eff-certbot.readthedocs.io/en/stable/using.html#manual-renewal
'Spring Boot' 카테고리의 다른 글
Letsencrypt certbot --standalone 안될 때(Feat. 후이즈) (0) | 2023.04.12 |
---|---|
jasypt 이용한 properties 암호화 (0) | 2023.03.16 |
- Total
- Today
- Yesterday
- ssl nginx 라우팅
- aws codedeploy
- 도메인 내부 테스트
- 후이즈에서 AWS Route 53
- Spring boot
- Spring Data JPA
- Certbot
- codedeploy
- jasypt
- querydsl
- AWS CodePipeline
- properties 암호화
- ELK
- aws codebuild
- AWS 로드밸런서 SSL 등록
- CodeBuild
- AWS Opensearch
- CodePipeline
- REST API
- JPA 벌크성 수정 쿼리
- letsencrypt
- certonly
- 시스템 환경변수
- AWS MSK
- 네임 서버 변경
- Spring Boot 3.x
- logstash
- aws codecommit
- AWS 자동 배포
- QueryDSL 사용 방법
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |