Pagina 1 van 1

Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 11:45
door joriz
Ik ben bezig met het opzetten van een webserver en ben me het hoofd aan het breken over bepaalde errors in de logfiles.
De setup is als volgt:
- OS = CentOS
- Apache webserver + PHP
- SSL wildcard certificaat
- 2 websites via 2 virtualhosts

De error in /var/log/httpd/error_log die blijft terugkeren is: [ssl:warn] [pid 891] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366).
Deze error heeft vermoedelijk te maken met het feit dat ik 2 websites host via virtualhosts welke op hetzelfde Ip / domain zitten en dus ook hetzelfde SSL wildcard certificaat gebruiken.
Omdat men Apache kennis nog niet zo uitgebreid is ben ik https://httpd.apache.org/docs/2.4/vhost ... based.html gaan doorlezen en heb daarna de nodige aanpassingen gedaan maar toch blijft deze error terugkeren.

De websites werken opzich wel en de http naar https redirect werkt opzich ook.

De virtualhost files zien er als volgt uit (1 file per website):

Website1

Code: Selecteer alles

#Redirect HTTP to HTTPS
<VirtualHost website1.domain.com:80>
   ServerName domain.com
   Redirect / https://website1.domain.com
</VirtualHost>


<VirtualHost website1.domain.com:443>
#SSL CONFIG
    SSLEngine on
    SSLCertificateFile /opt/ssl/star_domain_com/star_domain_com.crt
    SSLCertificateKeyFile /opt/ssl/star_domain_com/private/star_domain_com.key
    SSLCertificateKeyFile /opt/ssl/star_domain_com/Intermediate.crt

    ServerName domain.com
    DocumentRoot /var/www/website1/public
    <Directory /var/www/website1/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>
Website2

Code: Selecteer alles

#Redirect HTTP to HTTPS
<VirtualHost website2.domain.com:80>
   ServerName domain.com
   Redirect / https://website2.domain.com
</VirtualHost>


<VirtualHost website2.domain.com:443>
#SSL CONFIG
    SSLEngine on
    SSLCertificateFile /opt/ssl/star_domain_com/star_domain_com.crt
    SSLCertificateKeyFile /opt/ssl/star_domain_com/private/star_domain_com.key
    SSLCertificateKeyFile /opt/ssl/star_domain_com/Intermediate.crt

    ServerName domain.com
    DocumentRoot /var/www/website2/public
    <Directory /var/www/website2/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 11:50
door blaatpraat
En werkt het volledig?
Ik zie namelijk geen error, maar een waarschuwing die volkomen terecht is.
Oudere browsers (lees als: IE6 tijdperk) ondersteunen geen SNI SSL, wat je hier gebruikt (meerdere domeinen, elk met een certificaat, op 1 IP-adres).
Oplossing: 1 IP per certificaat voorzien; ofwel je er niets van aantrekken, want de doelgroep die nog geen SNI ondersteund, is tegenwoordig quasi irrelevant geworden (en ik ken geen enkele hoster die zich er nog iets van aantrekt, zelfs Amazon doet dit bijvoorbeeld niet meer met hun AWS).

Edit: wat mogelijks wel deze warning kan laten verdwijnen (maar de achterliggende oorzaak blijft dezelfde) is je Virtualhost vervangen door de volgende:

Code: Selecteer alles

<VirtualHost *:80>
Ook voor de 443.
Het is op basis van de ServerName en ServerAlias dat Apache de juiste vhost bepaalt.

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 13:11
door joriz
Dus deze melding is puur een warning voor oude clients.

Code: Selecteer alles

<VirtualHost *:80>
De virtualhosts waren eerst met *:80 en *:443 geconfigged maar daardoor gebeurde er toch rare dingen. Zo werkte website1 zonder problemen maar gaf website2 problemen met https. (Deze verbinding is niet Privé/ongeldig certificaat). Wanneer ik dan toch doorklikte kwam ik bij de default apache landing page uit.

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 17:21
door Geert-Jan
Waarom zet er er geen ISP paneel op? Zoals iMSCP, dan hoef je er niet mee te knoeien en kan je het zo aanmaken met een paar klikjes.
Zo kan je ook tegelijk mail opzetten, zit er allemaal standaard in alsook backup van je websites etc.
Ik doe het zo al jaren.

Draait wel enkel onder Debian (of Ubuntu), maar maakt je leven zoveel makkelijker en het kost niks.

https://i-mscp.net/

Ze hebben er een demo lopen, kan je zien wat het is.

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 18:40
door CCatalyst
Geert-Jan schreef:maakt je leven zoveel makkelijker en het kost niks
... totdat er voor dat pakket een vulnerability gepubliceerd wordt die root access tot het systeem of remote code execution toelaat.

@OP, 99.9% van de clients die geen bots zijn ondersteunen SNI vandaag de dag, dus je hoeft daar niet mee in te zitten. Je moet echt al een stokoude browser hebben om dat niet te ondersteunen. Check uw SSL config op SSLLabs, als je daar een A score krijgt is alles in orde. Het is trouwens een warning en geen error.

Ook daar krijg je nog een "This site works only in browsers with SNI support" bericht maar dat tast uw score niet aan.
joriz schreef:Dus deze melding is puur een warning voor oude clients.

Code: Selecteer alles

Wanneer ik dan toch doorklikte kwam ik bij de default apache landing page uit.[/quote]

Virtual host is dan niet juist geconfigureerd want de directive daarvan wordt niet gevolgd, maar dat heeft zeker niets met SNI te maken.

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 18:48
door joriz
Geert-Jan bedankt maar dat is niet wat ik zoek. Het is een interne webserver met wat webapps op, niet om als hosting provider te functioneren.
Daarnaast hou ik ook graag alles zo clean mogelijk via CLI.

Het feit dat het met *:80 / *:443 niet werkt zoals het moet wil misschien zeggen dat ergens anders misschien ook wat config fouten zitten.
In httpd.conf werd niets aangepast. De 2 virtualhost files zitten in conf.d welke ingeladen worden wanneer apache start.

Edit: alles nog eens goed herbekijken danmaar...

Re: Apache virtualhost ssl config

Geplaatst: 28 nov 2018, 18:56
door Geert-Jan
Ik wou enkel een hint geven, ik werk al jaren met iMSCP en het is nog nooit gehacked, noch is het lastig te gebruiken.
Zelf ben ik ook een CLI gebruiker, maar soms zijn er betere tools, vooral omdat iMSCP alles installeert om je server te beveiligen en veilig te houden.
Ook de zaken waar je zelf niet aan denkt.

Re: Apache virtualhost ssl config

Geplaatst: 30 nov 2018, 01:32
door ubremoved_2964
één van mijn taken is het opvolgen van scans van o.a. Qualys en diverse security audits, en dan de configs bijsturen bij een wereldspeler in de fin. sector

recent zijn we voor deze config gegaan, na het testen van meerdere cyphersuites:

ECDH+AESGCM:ECDH+CHACHA20:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS

Zie:

https://hynek.me/articles/hardening-you ... l-ciphers/

Geeft direct ook de beste rating op de SSL labs test (die hetzelfde grotendeels doet als wat qualys qua SSL test - zelfde bedrijf) ;)
In het artikel staat de volledige apache config, maar deze cyphersuite is ook bruikbaar voor andere tools die het ondersteunen.