포트 8443에서 LetsEncrypt SSL을 성공적으로 사용하도록 tomcat7을 구성했습니다. 이제 443 포트만 허용하고 그 앞에 apache2를 사용하고 싶습니다. 가상 호스트를 추가했는데 이것이 우분투 /etc/apache2/available-site/example.com.conf에 있습니다.
ServerName example.com
ServerAlias *.example.com
ProxyPreserveHost on
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
SSLEngine on
SSLProxyEngine on
SSLVerifyClient None
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/fullchain.pem
ProxyPass / https://localhost:8443/
ProxyPassReverse / https://localhost:8443/
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
SSL과 관련된 tomcat 7 server.xml의 내용은 다음과 같습니다.
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true" keystoreType="PKCS12"
keystoreFile="/home/ubuntu/example.jks" keystorePass="example"
clientAuth="false" sslProtocol="TLS"/>
elink를 사용하여 연결하려고 하면 다음과 같습니다.
$ elinks https://localhost
다음 메시지가 나타납니다.
503 proxy Error the proxy server received an invalid response from an upstream server.
또한 Apache 또는 Tomcat 7에 대해서만 인증서 위치를 구성해야 합니다. 어떤 도움이라도!