
유료 SSL 인증서는 일반적으로 DigiCert, GlobalSign, Sectigo(구 Comodo), GoDaddy 같은 인증 기관(CA)에서 발급받으며, 이를 Tomcat에 적용하는 과정은 다음과 같습니다.
📌 1. 기존 SSL 인증서 확인 및 새로운 도메인용 SSL 발급
✅ 1) 기존 인증서 확인
먼저 기존 인증서가 어떻게 적용되어 있는지 확인해야 합니다.
🔍 확인 방법:
1. Tomcat server.xml에서 SSL 설정 확인
cat /opt/tomcat/conf/server.xml | grep SSLCertificate
혹은
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateFile="/etc/ssl/certs/old_domain.crt"
certificateKeyFile="/etc/ssl/private/old_domain.key"
certificateChainFile="/etc/ssl/certs/old_domain_chain.crt" />
</SSLHostConfig>
</Connector>
위 설정이 있다면 기존 인증서 파일 위치를 확인하세요.
✅ 2) 새로운 도메인용 SSL 인증서 발급
유료 SSL 인증서를 새 도메인으로 발급받아야 합니다.
새로운 도메인(새로운도메인.com)에 대해 SSL을 적용하려면 CSR (Certificate Signing Request) 파일을 생성해야 합니다.
📌 2. SSL 인증서 발급 과정
✅ 1) 키(Key) & CSR 파일 생성
Tomcat에서 사용하기 위해 Java KeyStore (JKS) 또는 PKCS#12(PFX) 형식으로 생성하는 방법이 있습니다.
📍 1. OpenSSL을 이용한 CSR 생성 (권장)
openssl req -new -newkey rsa:2048 -nodes -keyout 새로운도메인.key -out 새로운도메인.csr
- 새로운도메인.key: Private Key 파일
- 새로운도메인.csr: CSR 파일
입력 예시 (CSR 생성 중)
Country Name (2 letter code) [XX]: KR
State or Province Name (full name) []: Seoul
Locality Name (e.g., city) [Default City]: Gangnam-gu
Organization Name (e.g., company) [Default Company Ltd]: Example Corp.
Organizational Unit Name (e.g., section) []: IT Department
Common Name (e.g., your name or your server's hostname) []: 새로운도메인.com
Email Address []: admin@새로운도메인.com
- Common Name (CN) → 새로운도메인.com 입력 (이 도메인에 대한 인증서 발급)
✅ .csr 파일이 생성되면, SSL 인증 기관(CA)에 제출하여 인증서를 발급받습니다.
(예: DigiCert, GlobalSign, Sectigo 등)
📌 3. SSL 인증서 설치
✅ 1) 발급받은 SSL 파일 구성
인증 기관(CA)에서 SSL을 발급받으면, 보통 아래 파일들을 제공합니다.
- 새로운도메인.crt → SSL 인증서
- 새로운도메인.key → Private Key (기존 생성된 키 사용)
- 새로운도메인_chain.crt 또는 ca_bundle.crt → CA 중간 인증서 (Chain 인증서)
✅ 2) Tomcat server.xml 수정 (PEM 기반 인증서 적용)
Tomcat은 기본적으로 JKS(Java Keystore)를 사용하지만, OpenSSL PEM 형식(.crt, .key)도 지원합니다.
📍 Tomcat server.xml 수정
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="200" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateFile="/etc/ssl/certs/새로운도메인.crt"
certificateKeyFile="/etc/ssl/private/새로운도메인.key"
certificateChainFile="/etc/ssl/certs/새로운도메인_chain.crt" />
</SSLHostConfig>
</Connector>
📌 주요 설정
- certificateFile → 새 도메인의 SSL 인증서 경로
- certificateKeyFile → Private Key 파일 경로
- certificateChainFile → 중간(Chain) 인증서 경로
📌 4. Tomcat SSL 적용 테스트
✅ 1) Tomcat 재시작
sudo systemctl restart tomcat
or
/opt/tomcat/bin/shutdown.sh
/opt/tomcat/bin/startup.sh
✅ 2) SSL 정상 동작 여부 확인
- 웹 브라우저에서 확인
- https://새로운도메인.com 접속 후 🔒 아이콘이 정상적으로 표시되는지 확인
- SSL 인증서 정보 확인
openssl s_client -connect 새로운도메인.com:443 -showcerts
- 출력된 정보에서 CN=새로운도메인.com 확인
✅ 정리: 유료 SSL 설정 단계
1️⃣ 기존 SSL 인증서 확인 (server.xml)
2️⃣ 새 도메인용 SSL 인증서 발급 (CSR 생성 후 인증 기관에 제출)
3️⃣ 인증서 설치 (.crt, .key, ca_bundle.crt)
4️⃣ Tomcat server.xml 수정 및 적용
5️⃣ Tomcat 재시작 및 테스트 (https://새로운도메인.com)
6️⃣ SSL 만료일 관리 및 갱신 (정기 확인)
'SW Dev Portfolio' 카테고리의 다른 글
Jenkins 는 무엇이여 자동 배포에 어떤 역할을 하는가 ? (0) | 2024.07.23 |
---|---|
사업아이템 개발 - 지도 앱- 환경세팅 (0) | 2024.06.07 |
특허 ReView : AI 홈트레이닝 서비스의 제공 방법 및 그 장치 ( 주식회사 미임팩트) (0) | 2024.05.21 |
2023년 홈페이지 취약점 점검 문제점 및 핵심사항 해결 방법 (3) | 2024.01.17 |
IT 경력 개발자 이직 면접 예상 질문 및 답변 (3) | 2024.01.09 |
React 기반 MERN 웹 로그인 할 때 firebase Authentication 사용법 자세히 알려드립니다. (회원가입 , 로그인 코드) (4) | 2023.11.04 |