1. Apache SSL to Tomcat SSL 보안인증서로 변경하여 사용하기
Apache SSL 보안인증서를 Tomcat SSL 보안인증서로 변경 하자
Copy # ls
ChainBundle.crt www.kr_key.pem GLOBALSIGN_ROOT_CA.crt www.kr_apache.crt
# openssl pkcs12 -export -in www.kr_apache.crt -inkey www.kr_key.pem -out www.kr.keystore -name tomcat
Enter Export Password: [비밀번호입력]
Verifying - Enter Export Password: [비밀번호입력]
# ls
ChainBundle.crt www.kr_key.pem GLOBALSIGN_ROOT_CA.crt www.kr_apache.crt www.kr.keystore
2. 생성된 test.keystore 를 이용하여 Tomcat 설정 하기
Copy <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true"
keystoreFile="/home/centos/ssl/www.kr.keystore"
keystorePass="[비밀번호]"
sslProtocol="TLS" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
3. Tomcat server.xml 에서 HTTPS 로 자동 Redirect 설정
server.xml 에서 HTTPS 로 자동 Redirect 설정 하기
Copy <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
<!-- JavaKeyStore 의 경우 -->
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true"
keystoreFile="/home/centos/ssl/www.kr.keystore"
keystorePass="[비밀번호]"
sslProtocol="TLS" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
web.xml 의 마지막 부분에 입력. 모든 url 의 패턴을 https 로 Redirect 하기
Copy <web-app>
<!-- 마지막 부분에 아래의 값을 입력-->
<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>
</web-app>
web.xml 의 마지막 부분에 입력. 특정 url 의 패턴을 http or https 로 Redirect 하기
Copy <security-constraint>
<web-resource-collection>
<web-resource-name>HTTPS or HTTP</web-resource-name>
<url-pattern>/images/*</url-pattern>
<url-pattern>/css/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>