Hoihoi,
Ik heb al een tijdje een domein, bar.tld dat ik graag beschermd wilde hebben middels een officieel SSL certificaat.
Dit omdat ik nu ook een iDEAL portaal wil gaan draaien en ondanks dat het prima secure is met self-signed certificaat (dat regelt je allemaal ZELF met je eigen bank
) heb ik klanten die dat wellicht niet snappen.
Het gaat hier in totaal om:
2 mailservers (postfix+dovecot) : mail.bar.tld
wat websites op verschillende IPs via apache geserveerd op foo.bar.tld
Ik wil in dit topic voorlopig even op apache focussen.
Nu kan ik dus prima een wildcard nemen omdat alles op bar.tld zit, en dit heb ik bij sslcertificaten.nl gedaan.
Die verkopen (oa) Comodo certificaten door, en ik heb dus voor Comodo gekozen.
Goed, netjes met hun Makefile even de CSR en .key aangemaakt, en vandaag ook een certificaat van ze gehad.
Daarna de Comodo CA bundle zoals door hen aangeboden gedownload:
Ik heb nu de volgende spulletjes bij elkaar gekregen:
Ik snap hoe SSL werkt en gebruik al langer self-signed spullen maar krijg dit niet goed aan de gang.
Hierbij volg ik de manual van sslcertificaten.nl.
Als testomgeving heb ik een testdoos gepakt (nadat hte op productie niet meteen lukte
) met debian en redelijk kale apache2, en een A-record in de DNS aangemaakt naar die doos als ssltest.bar.tld.
In de hoop dus dat iemand mij hier op de goede weg zet...
De quote-jes komt uit voornoemde manual, ik doe gewoon even exact wat daar staat.. ongeacht hoe debian het liever ziet, dat wordt stap2.
Lijkt me correct.
Maar dit zijn hun eigen files, en niet mijn bar.tld files...
Lekker duidelijk weer.
FYI: dit kreeg ik van ze gemaild:
Maar goed, wat moet ik nu met die CRT?
Nou laten we zeggen dat ik die eens als SSLCertificateFile inzet.... dat lijkt me de zinnigste oplossing.
Goed als ik nu die apache start:
Prima.... maar die heb ik gewoon zo gedownload van sslcertificaten.nl (en dus Comodo):
Die bevat :
-----BEGIN CERTIFICATE-----
CERTIFICAAT-ZELF (dus een berg karakters)
-----END CERTIFICATE-----
En nog een tweede certificaat. Lijkt me prima, maar dat is het dus niet.
Volgens mij zijn het beide valide PEM datatypes.
Ter informatie, de complete config:
De beide certificaten kun je hiervandaan vissen:
https://www.sslcertificat...L/PositiveSSL_Bundle_File
Wat doe ik fout?
Ik heb al een tijdje een domein, bar.tld dat ik graag beschermd wilde hebben middels een officieel SSL certificaat.
Dit omdat ik nu ook een iDEAL portaal wil gaan draaien en ondanks dat het prima secure is met self-signed certificaat (dat regelt je allemaal ZELF met je eigen bank
Het gaat hier in totaal om:
2 mailservers (postfix+dovecot) : mail.bar.tld
wat websites op verschillende IPs via apache geserveerd op foo.bar.tld
Ik wil in dit topic voorlopig even op apache focussen.
Nu kan ik dus prima een wildcard nemen omdat alles op bar.tld zit, en dit heb ik bij sslcertificaten.nl gedaan.
Die verkopen (oa) Comodo certificaten door, en ik heb dus voor Comodo gekozen.
Goed, netjes met hun Makefile even de CSR en .key aangemaakt, en vandaag ook een certificaat van ze gehad.
Daarna de Comodo CA bundle zoals door hen aangeboden gedownload:
Ik heb nu de volgende spulletjes bij elkaar gekregen:
code:
1
2
3
4
5
6
7
8
| www2:/home/boudewijn/SSL # ls AddTrustExternalCARoot.crt STAR_bar_tld.crt UTNAddTrustServerCA.crt PositiveSSL_Bundle_File www_sslcertificaten_nl.csr PositiveSSLCA.crt www_sslcertificaten_nl.key |
Ik snap hoe SSL werkt en gebruik al langer self-signed spullen maar krijg dit niet goed aan de gang.
Hierbij volg ik de manual van sslcertificaten.nl.
Als testomgeving heb ik een testdoos gepakt (nadat hte op productie niet meteen lukte
In de hoop dus dat iemand mij hier op de goede weg zet...
De quote-jes komt uit voornoemde manual, ik doe gewoon even exact wat daar staat.. ongeacht hoe debian het liever ziet, dat wordt stap2.
Installatie certificaten met een bundelbestand
De root en intermediate certificaten moeten op de server worden geïnstalleerd zodat browsers en andere clients het certificaat vertrouwen. Deze bestanden zijn voor zowel Comodo als Thawte, VeriSign en GeoTrust samengevoegd in een zgn. bundel-bestand; dit bestand kan vanaf onze website worden gedownload. Sla dit bestand op in dezelfde map als waar ssl.conf wordt bewaard (bijvoorbeeld /etc/httpd/conf.d/, hoewel dit afhankelijk is van de gebruikte distributie).
code:
1
2
| www2:/etc/apache2/conf.d# ls charset phppgadmin PositiveSSL_Bundle_File.crt security |
Lijkt me correct.
Hier maken we /etc/apache2/sites-available/default-ssl van. Deze file is gewoon zoals debian hem meelevert[root@server /]# nano /etc/httpd/conf.d/ssl.conf
Scroll naar het SSLEngine-gedeelte en voeg daarin de volgende regel toe:
SSLCertificateFile /etc/ssl/cert/www_sslcertificaten_nl.crt
SSLCertificateKeyFile /etc/ssl/cert/www_sslcertificaten_nl.key
SSLCACertificateFile /etc/httpd/conf.d/bundle.crt
code:
1
2
3
| SSLCACertificateFile /etc/apache2/conf.d/PositiveSSL_Bundle_File SSLCertificateFile /etc/ssl/certs/www_sslcertificaten_nl.crt SSLCertificateKeyFile /etc/ssl/certs/www_sslcertificaten_nl.key |
Maar dit zijn hun eigen files, en niet mijn bar.tld files...
Lekker duidelijk weer.
FYI: dit kreeg ik van ze gemaild:
code:
1
2
3
4
| extracting: AddTrustExternalCARoot.crt extracting: UTNAddTrustServerCA.crt extracting: PositiveSSLCA.crt extracting: STAR_foo_bar.crt |
Maar goed, wat moet ik nu met die CRT?
Nou laten we zeggen dat ik die eens als SSLCertificateFile inzet.... dat lijkt me de zinnigste oplossing.
Goed als ik nu die apache start:
code:
1
2
| Restarting web server: apache2Syntax error on line 1 of /etc/apache2/conf.d/PositiveSSL_Bundle.crt: Invalid command '-----BEGIN', perhaps misspelled or defined by a module not included in the server configuration |
Prima.... maar die heb ik gewoon zo gedownload van sslcertificaten.nl (en dus Comodo):
Die bevat :
-----BEGIN CERTIFICATE-----
CERTIFICAAT-ZELF (dus een berg karakters)
-----END CERTIFICATE-----
En nog een tweede certificaat. Lijkt me prima, maar dat is het dus niet.
Volgens mij zijn het beide valide PEM datatypes.
Ter informatie, de complete config:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
| www2:/etc/apache2/sites-available# egrep -v "[:space:]*#" default-ssl | egrep -v "^$" <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log LogLevel warn CustomLog /var/log/apache2/ssl_access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> SSLEngine on SSLCertificateKeyFile /etc/ssl/certs/www_sslcertificaten_nl.key SSLCertificateFile /etc/ssl/certs/STAR_bar_tld.crt SSLCACertificateFile /etc/apache2/conf.d/PositiveSSL_Bundle_File.crt <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 </VirtualHost> </IfModule> |
De beide certificaten kun je hiervandaan vissen:
https://www.sslcertificat...L/PositiveSSL_Bundle_File
Wat doe ik fout?