Tag: Server Name Indication (SNI)

  • Vanaf HCL Domino V11.0.1 ondersteunt de Domino webserver Server Name Indication (SNI)

    Vanaf HCL Domino V11.0.1 ondersteunt de Domino webserver Server Name Indication (SNI)

    Vanaf HCL Domino V11.0.1 ondersteunen Domino servers de Server Name Indication (SNI) uitbreiding van het Transport Security Layer (TLS)-protocol.
    SNI stelt een Domino-server in staat om meerdere virtuele hosts (websites) via HTTPS aan te bieden, waarbij meerdere hostnamen kunnen worden geconfigureerd om toe te wijzen aan één IP-adres.

    Om SNI-ondersteuning in te schakelen, voegt u de notes.ini-instelling ENABLE_SNI=1 toe aan de server en start u de HTTP-taak opnieuw.

    De volgende zaken moeten in overweging worden genomen voordat u SNI-ondersteuning inschakelt:

    Om SNI te gebruiken, moet er een standaardwebsite zijn geconfigureerd of ten minste één website met een IP-adres dat is geconfigureerd als startpunt voor de TLS-handshake.
    Als de server de TLS SNI-extensie ontvangt, probeert deze over te schakelen naar de site die overeenkomt met de hostnaam in de SNI-extensie nadat de TLS-handshake is voltooid.
    Het inschakelen van SNI vereist mogelijk dat u de configuratie van de website (regels en andere instellingen) aanpast.
    Met SNI ingeschakeld, kan de server na de TLS-handshake een toewijzing maken van de standaardwebsite of de website met het IP-adres naar een andere site op hostnaam.
    Dit kan leiden tot een gedragswijziging in bestaande configuraties, waarbij er mogelijk één website is met alleen een geconfigureerd IP-adres en andere met alleen de hostnaam/hostnamen.
    Oude configuraties zouden de site met het IP-adres blijven gebruiken. Met SNI ingeschakeld, kan de aanvraag overschakelen naar het gebruik van een site met een hostnaam die mogelijk een andere configuratie heeft dan de site met het IP-adres.
    Een voorbeeld van de configuratie met meerdere internetsites ziet er als volgt uit, met server notes.ini “ENABLE_SNI=1” ingeschakeld op de server.

    Zie ook: Implementing multi-site HTTPS support in Domino with single IP address mapping

  • Apache of IIS als Reverse Proxy voor Domino

    Apache of IIS als Reverse Proxy voor Domino

    Gisteren bij een klant een Domino server voorzien van een wildcard SSL certificaat.
    Klant heeft meerdere (sub)domeinen maar slechts 1 publiek IP-adres.
    Voor sites draaiend op HTTP geen enkel probleem, maar zelfs in versie 9 van Domino is het nog steeds niet mogelijk om meerdere SSL sites op 1 IP-adres te configureren.
    Ik ben echt een groot liefhebber van IBM en Domino/Notes in het bijzonder, maar dat simpele dingen zoals dit nog steeds niet kunnen vind ik echt een misser!

    Notitie:

    De oplossing in dit bericht kan nog steeds werken, maar is met de komst van Domino V11.0.1 niet meer actueel: INECO – Vanaf HCL Domino V11.0.1 ondersteunt de Domino webserver Server Name Indication (SNI)

    Meestal plaats ik er dan maar een Apache HTTP of Microsoft Internet Information Services (IIS) server als Reverse Proxy voor (vaak op de zelfde machine), configureer de SSL sites en stuur ze intern door naar Domino via http op een andere poort, bijvoorbeeld poort 1080, zodat IIS of Apache op poort 80 een 443 kan draaien.
    In zowel Apache HTTP als IIS servers is het geen probleem om meerdere SSL/HTTPS sites aan 1 IP-adres te koppelen.

    IIS

    Voor IIS 8 ziet het er dan als volgt uit:
    iis_rewrite01

    iis_rewrite02
    iis_rewrite03

    iis_rewrite04

    Apache

    Voor Apache zijn er ook wel mooie interfaces, maar een tekstverwerker is snel en werkt ook prima:

    <VirtualHost *:80>
    ServerName demobedrijf.nl
    RewriteEngine On
    RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
    </VirtualHost>

    <VirtualHost *:443>
    ServerName demobedrijf.nl
    SSLEngine on
    SSLProtocol ALL -SSLv2 -SSLv3
    SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:!RC4+RSA:+HIGH:+MEDIUM
    SSLCertificateFile “C:/Program Files/Apache/conf/ssl/star_ demobedrijf_nl.crt”
    SSLCertificateKeyFile “C:/Program Files/Apache/conf/ssl/star_ demobedrijf_nl.key”
    SSLCertificateChainFile “C:/Program Files/Apache/conf/ssl/Comodo_PositiveSSL_bundle.crt”
    ProxyPass / http://demobedrijf.nl:1080/
    ProxyPassReverse / http://demobedrijf.nl:1080/
    </VirtualHost>

    De webserver die als Proxy fungeert  luistert dan naar poort 80 en 443.
    iis_bindings

    En Domino staat ingesteld op  bijvoorbeeld poort 1080.

    domino_bindings

    Doordat de reverse proxy server intern via het gewone HTTP protocol verstuurd zal Domino geen probleem hebben om het juiste website document te koppelen aan het verzoek.