728x90
반응형
Tomcat에서 http로 접근을 하게 되었을 때 https로 변경되는 방법에 대해서 설명한다.
Tomcat 의 tomcat/conf/server.xml 파일에 https 설정을 443 포트로 설정하고, 추가로 http 설정을 80 포트로 설정한다.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<server>
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
... 중간 생략...
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="{keystoreFile}" keystorePass="{keystorePass}" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
... 중간 생략...
</server>
web.xml에 리다이렉트 설정 추가한다. web.xml 파일에 아래 <security-constraint> 설정을 추가한다.
그리고 Tomcat 을 재시작하고, http로 접근을 하게 되면 https로 리다이렉트 되는 것을 확인할 수 있을 것이다.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
... 중간 생략...
<security-constraint>
<web-resource-collection>
<web-resource-name>HTTP</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
</web>
web.xml 파일에 <security-constraint> 태그는 여러번 나올 수 있다.
Tomcat 에서 보안 목적으로 특정 HTTP Method 를 제한이나 특정 URL만 설정하는 등도 <security-constraint> 를 사용한다
728x90
반응형
LIST
'Linux' 카테고리의 다른 글
[Linux] 리눅스, 우분투 tcpdump 사용 (6) | 2023.01.09 |
---|---|
[Linux] 리눅스, 우분투 pem, der 인증서 내용 확인 (4) | 2023.01.09 |
[Tomcat] 톰캣 특정 IP 접근 제한 설정 (4) | 2023.01.08 |
[Tomcat] 톰캣 URI Encoding 설정 (4) | 2023.01.08 |
[Linux, Ubuntu] Java 프로세스 명칭 출력 명령어 (2) | 2023.01.05 |