http to https redirect (tomcat/jboss)
JBoss만 사용하는 시스템인데, http로 들어온 요청을 모두 https로 변경하는 방법은 다음과 같습니다.
여러가지 방법이 있는데 앞단에 웹서버가 없는 경우 다음과 같이 설정하시면 됩니다.
1. deploy/jboss-web.deployer/conf/web.xml 에 다음의 설정 security-constraint설정 추가.
<security-constraint> <web-resource-collection> <web-resource-name>App_nmae</web-resource-name> <url-pattern>/*</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> |
2. deploy/jboss-web.deployer/server.xml에 80 포트에 대해서 https로 redirect 하도록 설정
- 기본적으로 redirectPort=8443과 같이 설정이 되어 있습니다. 별도로 수정을 안하셔도 됩니다.
<Connector port="80" address="${jboss.bind.address}" maxThreads="150" maxHttpHeaderSize="8192" emptySessionPath="true" protocol="HTTP/1.1" enableLookups="false" redirectPort="443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" compression="on" /> <Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/opt/apache-tomcat-6.0.13/.keystore" keystorePass="changeit"/> |
by hyeons (12월)