Aqui está minha configuração básica:
80 e 443 da porta de encaminhamento de roteador para o Ubuntu Server 14.04 executando o apache. Funciona muito bem.
Execução de várias máquinas virtuais (QEMU / KVM) no servidor Ubuntu. As VMs estão no modo em ponte, portanto, elas têm seu próprio endereço IP interno.
Eu gostaria de redirecionar todo o tráfego de subdomínio para a VM para tratamento.
Ex:
sub1.example.com - > VM1
sub2.example.com - > VM2
sub3.example.com - > VM3
Eu gostaria de encaminhar solicitações SSL para a VM para manipulação.
Atualmente estou recebendo erros de redirecionamento ou erros de SSL, independentemente do que eu tentei. Eu consigo fazer o não-ssl funcionar, mas não tenho certeza de como configurar o servidor Ubuntu para manipular e encaminhar solicitações de HTTP e HTTPS.
Editar:
Aqui estão os meus arquivos atuais de hosts virtuais:
<VirtualHost *:80>
ServerName sub1.example.com
ProxyPreserveHost On
ProxyPass / http://192.168.1.78/
ProxyPassReverse / http://192.168.1.78/
</VirtualHost>
<VirtualHost *:443>
ServerName sub1.exmaple.com
ProxyPreserveHost On
ProxyPass / http://192.168.1.78/
ProxyPassReverse / http://192.168.1.78/
</VirtualHost>
Eu sei que isso não está correto, mas não sei como fazê-lo. O servidor principal receberá uma solicitação do link e do link
Editar 2:
Esqueci de mencionar que tenho este trabalho para não-ssl usando isto:
<VirtualHost *:80>
ServerName zab.example.com # this forwards to my zabbix VM
ProxyPreserveHost on
ProxyPass / http://192.168.1.64/
ProxyPassReverse / http://192.168.1.64/
</VirtualHost>
Recebe solicitações de entrada para zab.example.com e as encaminha para minha VM do Zabbix em 192.168.1.64. Portanto, os redirecionamentos da porta 80 para VMs estão funcionando bem.
Obrigado por qualquer ajuda!
Editar 3:
Ainda estou sentindo falta de algo (novamente, sou um novato :))
Aqui estão todos os meus anfitriões virtuais:
WAN - > 192.168.1.66 (servidor principal)
<VirtualHost *:80>
ServerName file.example.com
redirect permanent / https://file.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName file.example.com
SSLEngine On
SSLCertificateFile /home/js/Seafile/file_ws_ee.crt
SSLCertificateKeyFile /home/js/Seafile/file.example.com.key
SSLCertificateChainFile /home/js/Seafile/GeoTrustDVSSLCAG4.cer
SSLProxyEngine On
ProxyPreserveHost off
ProxyRequests off
ProxyPass / http://file.example.com/
ProxyPassReverse / http://file.example.com/
</VirtualHost>
VM interna 192.168.1.78 (executando o Seafile)
<VirtualHost *:80>
ServerName file.example.com
redirect permanent / https://file.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName file.example.com
DocumentRoot /var/www
Alias /media /home/js/Seafile/seafile-server-latest/seahub/media
SSLEngine On
SSLCertificateFile /home/js/Seafile/file_ws_ee.crt
SSLCertificateKeyFile /home/js/Seafile/file.example.com.key
SSLCertificateChainFile /home/js/Seafile/GeoTrustDVSSLCAG4.cer
RewriteEngine On
<Location /media>
Require all granted
</Location>
#
# seafile fileserver
#
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
#
# seahub
#
RewriteRule ^/(media.*)$ /$1 [QSA,L,PT]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /seahub.fcgi/$1 [QSA,L,E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</VirtualHost>
A execução do arquivo wget file.example.com resulta em:
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://file.example.com/ [following]
20 redirections exceeded.
Pensamentos?