톰캣 8.5 OPENSSL 인증서 설치 개발 테스트!!
회원가입을 할려고 하니NICE인증을 받아야 합니다.
그런데 HTTP에서는 인증후 콜이 안되네요 브라우저 단에서 막아버리는것 같습니다.
안전하지 않은 정보를 제출하려 함 허용
제출하려는 정보가 보안되지 않음 등 엣지나 크롬에서 서버를 확인하니 호출자체가 오지 않네요.
OPENSSL을 설치했습니다.
http://slproweb.com/products/Win32OpenSSL.html
커맨드에서 입력합니다. (도스창)
① 개인키 생성
# openssl genrsa -des3 -out private.pem 2048
② 인증 요청서(CSR) 파일 생성
# openssl req -new -key private.pem -out private.csr
③ rootCA 기본키 생성
# openssl genrsa -aes256 -out rootCA.pem 2048
④ rootCA CSR 생성
# openssl req -x509 -new -nodes -key rootCA.pem -days 3650 -out rootCA.csr
⑤ 인증서(CRT) 생성
# openssl x509 -req -in private.csr -CA rootCA.csr -CAkey rootCA.pem -CAcreateserial -out private.crt -days 3650
6 pkcs12 형식 변경
# openssl pkcs12 -export -in private.crt -inkey private.pem -out keystore -name tomcat
7 jks 형식 변경
# keytool -importkeystore -srckeystore keystore -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
생성된 KEYSTORE.JKS파일을 톰캣 경로로 옴깁니다.
SEVER.XML을 아래주석을 풀고 수정합니다.
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="D:\apache-tomcat-8.5.81\conf\ssl\keystore.jks"
certificateKeystorePassword="123456" type="RSA" />
</SSLHostConfig>
</Connector>
/src/main/webapp/WEB-INF/web.xml
파일에 이내용을 추가합니다.
<security-constraint>
<web-resource-collection>
<web-resource-name>SSL Forward</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
그럼 HTTP로 접속시 HTTPS로 자동이동합니다.
출처 : https://jdh5202.tistory.com/772