tomcat - https 사용

Web/WAS 2012. 5. 17. 09:28


http을 자동으로 https 으로 이동 방법


리다이렉트 페이지 하나 만드는게 더 쉽습니다. 

jsp파일 실행되면 그냥 response.sendRedirect() 사용해서 페이지 하나 만드는게 편하겠네요. meta태그 사용하셔도 되구요.



저도 처음에는 meta로 어찌 해볼까 고민했었는데, 
.. 
이상하게 자꾸 루프(?)가 걸리더라고요.. 
.. 
그래서.. 아래처럼 하니.. 되네요. ㅎㅎ 
.. 

물론, index파일의 순서는 index.html -> index.jsp 이렇게 했구요. ^^ 


<html> 
<head> 
</head> 
<body> 
<script>location.href="https://server.com/index.jsp" 
</script> 

</body> 
</html>


출처 - 
http://www.solarisschool.com/qna_new/view.html?board=qna4&no=26706&start=14&sselect=&mode=&qry_string=








참조: http://tomcat.apache.org/tomcat-5.5-doc/ssl-howto.html


톰캣이 https 를 처리할 수 있게 다음 명령어로 self-signed 인증키 생성 

비밀번호는 changeit으로 하며 이것이 디폴트 값이므로 변경시 server.xml에서 별도 설정해야 함


%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA

Enter keystore password:  

Re-enter new password: 

What is your first and last name?

  [Unknown]:  test

What is the name of your organizational unit?

  [Unknown]:  development

What is the name of your organization?

  [Unknown]:  company

What is the name of your City or Locality?

  [Unknown]:  geumcheongo

What is the name of your State or Province?

  [Unknown]:  seoul

What is the two-letter country code for this unit?

  [Unknown]:  KR

Is CN=test, OU=development, O=company, L=geumcheongo, ST=seoul, C=KR correct?

  [no]:  y


Enter key password for <tomcat>

(RETURN if same as keystore password):  엔터



linux일 경우 해당 계정 홈 디렉토리에 .keystore 파일이 생성된다.




톰캣의 server.xml에서 다름 부분 주석 제거

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
 maxThreads="150" scheme="https" secure="true"
 clientAuth="false" sslProtocol="TLS" />






Tomcat은 JKS, PKCS11 혹은 PKCS12 포맷의 Keystore를 지원한다. JKS 포맷은 Java Standard Keystore 포맷이며, JDK에 포함되어 있는 Keytool 명령어를 사용하여 생성할 수 있다. PKCS12 포맷은 인터넷 표준 포맷이고, OpenSSL를 사용하여 생성할 수 있다. 이글 에서는 설정이 좀더 간편한 JKS 포맷의 Keystore를 사용한 설정 방법을 정리한다. 

1. SSL 키 파일 생성
  - 아래와 같이 keytool 명령어를 이용하여 Keystore 파일을 생성한다. (입력값은 Bold 처리)

$ $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA

keystore 암호를 입력하십시오:    #Tomcat설정에 사용됨으로 기억해야 함.
새 암호를 다시 입력하십시오:     #암호확인
성을 입력하십시오.
  [Unknown]: Dim                      #기본갑 Unknown
조직 단위 이름을 입력하십시오.
  [Unknown]:  MyGroup            #기본갑 Unknown 
조직 이름을 입력하십시오.
  [Unknown]:  MyTeam             #기본갑 Unknown 
구/군/시 이름을 입력하십시오?
  [Unknown]:  MyCity                #기본갑 Unknown 
시/도 이름을 입력하십시오.
  [Unknown]:  MyProvince          #기본갑 Unknown 
이 조직의 두 자리 국가 코드를 입력하십시오.
  [Unknown]:  KR                       #기본갑 Unknown 
CN=MyGroup, OU=MyGroup, O=MyTeam, L=MyCity, ST=MyProvince, C=KR이(가) 맞습니까?
  [아니오]:  y
<tomcat>에 대한 키 암호를 입력하십시오.
(keystore 암호와 같은 경우 Enter를 누르십시오):   #엔터입력

* 위의 명령을 수행하고 나면 명령을 실행한 디렉토리에 ".keystore" 파일이 생성됨

2. Tomcat 설정
  - HTTPS 프로토콜을 제공하기 위한 Connector설정을 server.xml 파일에 추가한다. 

<Service name="Catalina">

      . . .

<Connector 
          port="8443" maxThreads="100"
          scheme="https" secure="true" SSLEnabled="true"
          keystoreFile="keystore 파일 경로" keystorePass="keystore 패스워드"
          clientAuth="false" sslProtocol="TLS"/>
       . . .     

</Service>


3. Tomcat 재기동


4. 참고자료
  - Tomcat HTTPS 설정 참고자료 : http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html


출처 - http://dimdim.tistory.com/entry/%EC%82%AC%EC%84%A4-%EC%9D%B8%EC%A6%9D%EC%84%9C%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-Tomcat-HTTPS-%EC%84%A4%EC%A0%95


'Web > WAS' 카테고리의 다른 글

tomcat - Error listenerStart  (0) 2012.05.26
tomcat - Web Application 배포  (0) 2012.05.26
tomcat 클래스 로드 순서  (0) 2012.05.09
톰캣 앞에 아파치 웹 서버(Httpd)를 두어야 할까?  (0) 2012.05.08
톰캣(tomcat) Connector 설정  (0) 2012.04.05
Posted by linuxism
,