Skocz do zawartości
Krzysiek_PL_

Apache2 i certyfikat SSL

Rekomendowane odpowiedzi

Witam,

 

nie dawno kupiłem certyfikat SSL dla mojej domeny.

Po instalacji certyfikatu stroną działa przez https:// ale w logach mam cały czas to ostrzeżenie:

 

Wycinek /var/log/apache2/https-mojadomena-co-uk-error.log


[Sun Nov 13 08:14:21 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 08:14:21 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 08:17:40 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 08:17:41 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?

 

Wycinek z /var/log/apache2/error.log


[Sun Nov 13 14:15:51 2016] [notice] caught SIGTERM, shutting down
[Sun Nov 13 14:15:52 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 14:15:52 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 14:15:52 2016] [notice] Apache/2.2.22 (Debian) PHP/5.5.38-1~dotdeb+7.1 mod_ssl/2.2.22 OpenSSL/1.0.1t configured -- resuming normal operations

 

Podczas generowania CSR dla mojej domeny CommonName (CN) podałem: mojadomena.co.uk

Sprawdzając na serwerze nazwę serwera przez komendę hostname -f dostaję wyniki mojadomena.co.uk

Nazwa serwera w /etc/hostname jest mojadomena, a nie mojadomena.co.uk

W /etc/hosts mam wpis: 81.xxx.xxx.65 mojadomena.co.uk www

Komendą openssl x509 -in public.crt -noout -subject sprawdziłem jaki jest CN w certyfikacie i również pokazuje mojadomena.co.uk

 

Konfig z /etc/apache2/sites-available/default-ssl


<VirtualHost 81.xxx.xxx.65:443>
    ServerName www.mojadomena.co.uk
    ServerAlias mojadomena.co.uk
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLHonorCipherOrder on
    SSLCipherSuite EECDH+aRSA+AES256:EDH+aRSA+AES256:EECDH+aRSA+AES128:EDH+aRSA+AES128
    Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"
    DocumentRoot /var/www
    ErrorLog /var/log/apache2/https.mojadomena.co.uk-error.log
    CustomLog /var/log/apache2/https.mojadomena.co.uk-access.log combined
    SSLCACertificateFile /etc/apache2/ssl-certs/intermediate.crt
    SSLCertificateFile /etc/apache2/ssl-certs/public.crt
    SSLCertificateKeyFile /etc/apache2/ssl-certs/www_mojadomena_co_uk_private.key
</VirtualHost>

 

W momencie gdy zamienie ServerName na mojadomena.co.uk a ServerAlias na www.mojadomena.co.uk mam ostrzeżenie w logach z inną subdomeną:

 


[Sun Nov 13 09:01:04 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:01:04 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:03:02 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:03:02 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?

 

I w momencie podania mojego adresu: https://mojadomena.co.uk/ wyskakuję mi komunikat, że Połączenie nie jest prywatne

 

Kiedyś serwer miał podpiętą taką nazwę [n36l.mojadomena.co.uk], ale zmieniłem ją na mojadomena.co.uk

 

Dzięki za wszelką pomoc!

Edytowane przez Krzysiek_PL_

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Bueh, CN...

Masz masz w certyfikacie ustawione Subject Alternative Name (SAN)? Jeśli nie, daj tam www.mojadomena.co.uk i mojadomena.co.uk i problem powinien zniknąć. W CN może być wtedy cokolwiek.

 

https://tools.ietf.org/html/rfc6125#section-6.4.4

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jak sprawdzić co mam wpisane w SAN? Umiem sprawdzić jaki jest CN w certyfikacie, ale jak sprawdzić SAN to już nie wiem.

Patrzę teraz na stronę gdzie kupiłem certyfikat i nie mam tam pola SAN.

 

Tutaj screen:

eGYzrf7p.png

 

Zrobiłem coś takiego:

$ openssl s_client -connect mojadomena.co.uk:443 | openssl x509 -noout -text | grep DNS:
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify return:1
depth=1 C = US, O = GeoTrust Inc., CN = RapidSSL SHA256 CA
verify return:1
depth=0 CN = mojadomena.co.uk
verify return:1
                DNS:mojadomena.co.uk, DNS:www.mojadomena.co.uk

Czy mam rozumieć że SAN mam podany: mojadomena.co.uk i www.mojadomena.co.uk?

Edytowane przez Krzysiek_PL_

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

tak, to polecenie:

openssl s_client -connect mojadomena.co.uk:443 | openssl x509 -noout -text | grep DNS:
zwraca to, o co nam chodzi; w SAN są dwa adresy i tylko dla tych dwóch adresów SSL będzie działało poprawnie. W momencie, gdy SAN jest w certyfikacie wypełnione, pole CN (common name) przestaje być w zasadzie istotne, może tam być w zasadzie cokolwiek - ale czy httpd będzie w logach wyrzucać warning, przy jakim poziomie debuga i w jakiej wersji jak to wygląda - tego Ci nie powiem z głowy :)

 

Czy przy tak wypełnionym SAN, jak masz, i takim configu httpd, jaki wklejałeś, tj:

<VirtualHost 81.xxx.xxx.65:443>
    ServerName www.mojadomena.co.uk
    ServerAlias mojadomena.co.uk
 

strona działa poprawnie, czy nie? Apache się podnosi i działa poprawnie?

 

Zastanawia mnie, skąd bierze się 

[Sun Nov 13 09:01:04 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:01:04 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:03:02 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Sun Nov 13 09:03:02 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
bo wygląda to tak, jakby apache ładował inny plik konfiguracyjny z innym certyfikatem po zamianie pól name z alias - jakiś błąd robisz, config staje się nieparsowalny i ładuje inny config?

Tego "n36l" nie ma prawa tam być...

 

PS. SAN wygląda na to, że jest wypełniane automatycznie podczas generowania certyfikatu. Formatka żąda adresu w formie domena.fqdn bez prefixu www, podaną wartość wstawia w CN, a w SAN ląduje to, co w CN i to samo z prefiksem www. Dla spokoju, serverName powinno być mojadomena.co.uk, a serverAlisas = www.mojadomena.co.uk

jak uruchomisz apache, ps aux | grep httpd i sprawdź, czy na pewno działa z tym configiem, z którym myślisz, że działa.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

Czy przy tak wypełnionym SAN, jak masz, i takim configu httpd, jaki wklejałeś, tj:

<VirtualHost 81.xxx.xxx.65:443>
    ServerName www.mojadomena.co.uk
    ServerAlias mojadomena.co.uk
 

strona działa poprawnie, czy nie? Apache się podnosi i działa poprawnie?

 

 

 

Przy tym ustawieniu Apache podnosi się i mam dostęp do strony przez https://

Ale mam ostrzeżenie w error.log

[Wed Nov 16 20:46:36 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?
[Wed Nov 16 20:46:36 2016] [warn] RSA server certificate CommonName (CN) `mojadomena.co.uk' does NOT match server name!?

W momencie gdy ServerName ustawię mojadomena.co.uk a ServerAlias www.mojadomena.co.uk dostęp przez https:// nie jest połączeniem prywatnym.

Przy tym ustawieniu podczas restartu Apache mam ostrzeżenie w error.log dotyczące n36l.mojadomena.co.uk

 

 

[Wed Nov 16 20:57:55 2016] [notice] caught SIGTERM, shutting down
[Wed Nov 16 20:57:56 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Wed Nov 16 20:57:56 2016] [warn] RSA server certificate CommonName (CN) `n36l.mojadomena.co.uk' does NOT match server name!?
[Wed Nov 16 20:57:56 2016] [notice] Apache/2.2.22 (Debian) PHP/5.5.38-1~dotdeb+7.1 mod_ssl/2.2.22 OpenSSL/1.0.1t configured -- resuming normal operations
Edytowane przez Krzysiek_PL_

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...