Apache více https domén jedna IP

#

Apache více https domén jedna IP
« kdy: 09. 05. 2015, 19:30:15 »
Jak rika titulek, pres SNI by toto melo jit, ale nejsu schopnej rozjet funkcni konfiguraci. Na netu je milion navodu, ale zadnej v realu nefunguje ...

Dokud jsem mel Squeeze, kde nebylo openssl se SNI podporou, tak jsem to resil pres virtualni sitovky a dalsi porty napr

Kód: [Vybrat]
eth0:1    Link encap:Ethernet  HWaddr 52:54:00:00:0d:1f 
          inet addr:10.1.1.1  Bcast:10.1.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0:2    Link encap:Ethernet  HWaddr 52:54:00:00:0d:1f 
          inet addr:10.1.1.2  Bcast:10.1.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
Kód: [Vybrat]
NameVirtualHost *:444
Listen 444 https
NameVirtualHost *:445
Listen 445 https
a
Kód: [Vybrat]
<VirtualHost 10.1.1.2:444>
<VirtualHost 10.1.1.2:445>

a presmerovani pres iptables

Kód: [Vybrat]
-A PREROUTING -d 31.31.79.62/32 -i eth0 -p tcp -m tcp --dport 444 -j DNAT --to-destination 10.1.1.2
-A PREROUTING -d 31.31.79.62/32 -i eth0 -p tcp -m tcp --dport 445 -j DNAT --to-destination 10.1.1.3

Samozrejme to ma nevyhodu, ze v prohlizeci je nutno zadat site.1:444 site.2:445 ...

Po prechodu na Wheezy jsem doufal, ze se toho zbavim ... mate nekdo opravdu funkcni config pro vice domen s jednou verejnou IP, abych mohl vsechny bezet na portu 443?

2.2.22-13+deb7u4 - apache2.2-bin
1.0.1e-2+deb7u16 - openssl
« Poslední změna: 10. 05. 2015, 21:55:58 od Petr Krčmář »


Lol Phirae

Re:Apache vice https domen jedna IP
« Odpověď #1 kdy: 09. 05. 2015, 19:50:30 »
tak jsem to resil pres virtualni sitovky

OMG. Ten ifconfig už fakt zahoď. WTF.

Jakub L

Re:Apache vice https domen jedna IP
« Odpověď #2 kdy: 09. 05. 2015, 20:07:31 »
Kód: [Vybrat]
<VirtualHost *:443>
ServerName xxx
VirtualDocumentRoot /xxx
RewriteEngine On
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4"
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
SSLCACertificateFile /etc/apache2/ssl/ca.pem
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>

<VirtualHost *:443>
ServerName yyy
VirtualDocumentRoot /yyy
RewriteEngine On
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4"
SSLCertificateFile /etc/apache2/ssl/yyy.crt
SSLCertificateKeyFile /etc/apache2/ssl/yyy.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
</VirtualHost>

Dva vhosty, které fungují jako SNI
Apache2 2.2.22-13+deb7u4
OpenSSL 1.0.1e-2+deb7u16

#

Re:Apache vice https domen jedna IP
« Odpověď #3 kdy: 09. 05. 2015, 20:19:03 »
Dva vhosty, které fungují jako SNI
Apache2 2.2.22-13+deb7u4
OpenSSL 1.0.1e-2+deb7u16
a jak mas jeste pls /etc/apache2/ports.conf ?

Jakub L

Re:Apache vice https domen jedna IP
« Odpověď #4 kdy: 09. 05. 2015, 20:59:08 »
Distribuční standard, tipuji...
Kód: [Vybrat]
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>


Trupik

Re:Apache vice https domen jedna IP
« Odpověď #5 kdy: 09. 05. 2015, 21:07:31 »
Sprav si certifikát s viacerými doménami, alebo wildcard certifikát (ak sa jedná o subdomény tej istej domény). Potom to môže bežať na tej istej IP a tom istom porte.

#

Re:Apache vice https domen jedna IP
« Odpověď #6 kdy: 09. 05. 2015, 23:40:55 »
toz dik za podnety, nakonec pro mou situaci bylo nutno

/etc/apache2/ports.conf

Kód: [Vybrat]
NameVirtualHost sub1.site1:443
NameVirtualHost sub2.site1:443
NameVirtualHost sub1.site2:443
...
Listen 443

/etc/apache2/sites-enabled/ssl

Kód: [Vybrat]
<VirtualHost sub1.site1:443>
...
<VirtualHost sub2.site1:443>
...
<VirtualHost sub1.site2:443>

a pro kazdou z nich si vygenerovat vlastni certifikat pres openssl ... snad se bude nekomu hodit.