Let say you have your public server on:
public.example.com:443
And your private server on:
private.example.com:8443
Your apache configuration should look like:
<VirtualHost *:443>
ServerName public.example.com
SSLEngine on
SSLProxyEngine on
ProxyPass / https://private.example.com:8443/
ProxyPassReverse / https://private.example.com:8443/
#Common SSL configuration
DirectoryIndex index.php index.html index.htm index.shtml
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/ssl/startssl/ssl.crt
SSLCertificateKeyFile /etc/ssl/startssl/ssl.key
SSLCACertificateFile /etc/ssl/startssl/sub.class1.server.ca.pem
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
tomcatinstance? Is it another server in the same rack, another datacentre in the same company, or another datacentre at a different company? How are the networks betweenapacheandtomcatconnected? Is there a VPN link in-place, is it a private LAN / WAN, or do they communicate over the public internet without a VPN? – Mike Insch Jul 22 '11 at 12:11apacheandtomcatis not encrypted? With your setup, only the connection from your user to yourapacheserver is protected by SSL, the connection usingmod_jkfromapachetotomcatis open. If this channel also needs encryption then no, this is not safe. – Mike Insch Jul 22 '11 at 13:26