-
OpenSSL 인증을 이용하여 Tomcat SSL 설정하기기타 2012. 1. 4. 17:49
1. JDK의 keytool 프로그램을 이용해서 keystore를 생성
keytool -genkey -alias tomcat -keyalg RSA
2. keytool을 이용해서 인증서 요청파일(CSR)을 생성
keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr
certreq.csr 파일이 생성되었는지 확인
3. OpenSSL에서 certreq.csr파일을 이용해서 인증서 생성
1) OpenSSL에 필요한 디렉토리와 파일들 생성
mkdir CA
cd CA
mkdir certs
mkdir crl
mkdir newcerts
mkdir private
touch index.txt
echo "0001" > serial
echo "0001" > crlnumber
2) CA 인증서 생성
가. CA 개인키 생성
openssl genrsa -aes256 -out ca.key 1024
나. Self-Signed CA 인증서 생성
openssl req -new -x509 -days 365 -key ca.key -out ca.crt
3) keytool에서 생성한 certreq.csr 을 이용해서 인증서 발급
openssl x509 -req -CA ca.crt -CAkey ca.key -days 365 -in ../certreq.csr -out certreq.crt –Cacreateserial
4. keytool을 이용해서 생성된 인증서를 tomcat에 import하기
keytool -import -alias root -trustcacerts -file ca.crt
keytool -import -alias tomcat -file certreq.crt
5. tomcat 환경설정하기
Tomcat이 설치된 디렉토리에서 conf/server.xml을 편집
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="${user.home}/.keystore" keystorePass="패스워드입력"
clientAuth="false" sslProtocol="TLS" />
6. https 기본 포트인 443을 이용하도록 tomcat 설정하기
Conf/server.xml파일 편집
아래설정내용에서 붉은색 부분을 443으로 변경
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="${user.home}/.keystore" keystorePass="******"
clientAuth="false" sslProtocol="TLS" />
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
'기타' 카테고리의 다른 글
구글 검색엔진 최적화(Search Engine Optimization, SEO) (0) 2012.11.20 시큐어코딩 가이드 (0) 2012.11.02 트위터 API(Twitter API) 사용하기 (0) 2011.07.12 Xpress Engine(xe) 첨부파일 오류시 해결방법 (0) 2011.02.11 '극진'최배달 총재님의 주옥같은 어록 (0) 2011.01.25 댓글