티스토리 뷰
SSL 관련 용어
- SSL (Secure Socket Layer): Netscape에서 개발하여 SSLv3까지 개발되고 이후로는 TLS로 계승된다.
- TLS (Transport Layer Security): SSL3.0의 업그레이드 버전으로 시작. 현재 TLS1.2가 최신이고 TLS1.3이 개발 중이다.
- HTTPS (HTTP + Secure)
- CSR (Certificate Signing Request): 인증 서명 요청. 인증서명요청 파일의 확장자로 쓰인다.
- CRT : Certificate (인증서)의 약자. 보통 인증서 파일의 확장자로 쓰인다.
- CA (Certificate Authority): 공인인증기관.
- PKI (Public Key Infrastructure) : 공개키 기반구조
- PKCS (Public Key Cryptography Standards) : 공개키 암호화 표준
- PKCS #12 : 암호화 관련 파일 포맷 정의. 인증서와 개인키가 함께 들어있다.
- X.509 : 공개키 기반 인증서 형식 표준
- PEM (Privacy-enhanced Electronic Mail) : 인증서 형식의 하나 (Base64 Encoded DER certificate). 해당 형식 인증서의 확장자로 쓰인다.
- PFX (Personal inFormation eXchange) : PKCS#12 형식의 인증서 확장자로 쓰임
- P12 : PKCS#12 형식의 인증서 확장자로 쓰임
SSL 적용 순서
1. openssl을 설치한다.
ex) brew cask install openssl
2. 개인키 및 공개키 등을 저장할 디렉터리를 생성한다
ex) mkdir /usr/local/ssl
3. 개인키를 생성한다.
ex) openssl genrsa -out private.key 2048
4. 공개키를 생성한다
ex) openssl rsa -in private.key -pubout -out public.key
5. CSR을 생성한다
ex) req -new -key private.key -out private.csr
csr에 필요정보 등은 개발용으로 사용 예정으로 대충 입력한다
hostname 입력란에 원하는 hostname 입력
ex) localhost
6. CRT를 생성한다.
ex) openssl req -x509 -days 365 -key private.key -in private.csr -out test.crt -days 365
openssl req -x509 -days [기간] -key [개인키 파일명] -in [csr 파일명] -out [파일명] days [기간]
7. CRT를 pkcs12 형식으로 변경
ex) pkcs12 -export -in test.crt -inkey private.key -out .keysotre -name tomcat
원하는 비밀번호 입력
.keystore 파일 생성 확인
숨겨진 파일이므로 ls -al로 확인
8. ssl을 적용할 Tomcat의 server.xml 파일을 열어 아래 코드를 추가한다
<Connector
port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile=".keystore 파일 위치 경로"
keystorePass="111111"
keystoreType="pkcs12"
clientAuth="false"
sslProtocol="TLS"
/>
9. 위 코드 추가 후 tomcat 실행 후 https로 확인한다.
ex) https://localhost:8443
'리눅스 > Tomcat' 카테고리의 다른 글
[Tomcat] 톰캣 용량이 큰 catalina log vi로 보는법 (0) | 2020.09.28 |
---|