localhost tomcat ssl 적용
Posted by Albert 2792Day 1Min 45Sec ago [2018-04-07]
이번 facebook OAuth 로그인 테스트 시 리턴 url이 ssl인증되지않은 경로일시
페이스북설정에 경로를 추가할 수 없는사항으로 로컬상 ssl 설정해보기로 했다.
우선 cmd 창을 켜고
1. cd %JAVA_HOME%/bin // jdk bin 폴더로 이동
2. keytool -genkey -alias tomcat -keyalg RSA
// ssl관련 키를 생성한다. 생성한 키는 C:\Users\사용자 폴더 밑에 .keystore 파일로 저장된다.
(생성시 이름과성,조직, 구/군/시/ 비밀번호등은 자신이 원하는대로 생성하면된다.)
3. Tomcat 폴더의 Server.xml
<!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->부분을 찾아 주석해제후 아래처럼 변경한다. (키스토어 경로와 비밀번호는 생성시 비밀번호 및 키스토어가 저장된 위치경로를 입력)
<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
disableUploadTimeout="true" enableLookups="false" maxThreads="25"
port="8443" keystoreFile="/Users/loiane/.keystore" keystorePass="password"
protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
secure="true" sslProtocol="TLS" />4. 웹프로젝트의 web.xml 파일에서 아래 항목을 추가해준다.
<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>추가후 템캣 재부팅후 시작하면 ssl이 잘 적용된것을 확인할수 있다.
참고원문: https://dzone.com/articles/setting-ssl-tomcat-5-minutes