Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

Witam,

Z pozoru latwy do rozwiazania problem, ale..... stracilem juz blisko godzine i chyba skonczyly mi sie pomysly.

Centos 6 i Apache2 (standard, z repo).

Pare wirtualek, w tym SSLowych.
Do jednej z nich chcialbym wrzucic nowo zakupiony certyfikat SSL (kupiony w Unizeto - certum.pl).
Zrobilem jak zwykle, czyli:

<VirtualHost x.x.x.:443>
SSLEngine on
SSLCertificateKeyFile /etc/pki/tls/private/se.key
SSLCertificateFile /etc/pki/tls/certs/se.crt
SSLCACertificateFile /etc/pki/tls/certs/ca.crt
DocumentRoot /var/www/html/se/public_html/
ServerName xxx.xx
ServerAlias http://xxx.xx
ErrorDocument 404 /error/se/error-404.html
ErrorDocument 403 /error/se/error-403.html
</VirtualHost>

No i..... przegladarki "czepiaja" sie niezaufanego wystawcy.
Oczywiscie pobralem zestaw certyfikatow posredniczacych CA ze strony certum (http://www.certum.pl/keys/ca-bundle.crt) - od tego jest linia SSLCACertificateFile /etc/pki/tls/certs/ca.crt.

A pomimo to, nadal nie dziala tak, jak powinno.
Zachowuje sie tak, jakby wogole CA nie bylo.

Jakis pomysl ?

Bede bardzo wdzieczny za wszystkie sugestie :)
Janusz Skudrzyk

Janusz Skudrzyk Członek zarządu,
weblabs.pl

Temat: Apache SSL - certyfikat CA - problem

Czy Apache coś wrzuciło do swoich logów ?

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

Mam strasznie mało czasu i przyznaje, że nie zdążyłem przeczytać całości (jeśli nie będzie rozwiązania nadal to zerknę wieczorem). Rzuciły się natomiast hasła "unizeto","ssl","apache","weryfikacja" :) - może tutaj znajdziesz to czego szukasz.Mariusz Derela edytował(a) ten post dnia 09.08.11 o godzinie 13:36
Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

No tak - z rozpedu zapomnialem napisac.
W logach nic szczegolnego - jeden warning dot. niezgodnosci common name z server name, ale wg mnie nie ma to zadnego zwiazku.

Mariusz: naturalnie, czytalem ich PDFy - nawet do kazdej wersji Apacha.
Nie znajduje w nich nic ciekawego. Pisza to, co robie, czyli 3 linie:

SSLCertificateFile /sciezka_do_pliku/ca-bundle.crt
SSLCACertificateFile /sciezka_do_pliku/ca-bundle.crt
SSLCertificateKeyFile /sciezka_do_pliku/ca-bundle.crtAndrzej Cyrulik edytował(a) ten post dnia 09.08.11 o godzinie 13:38

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

A SSLEnable jest ?

Kluczowe są tu następujące dyrektywy:
SSLEngine on – włącza protokół SSL/TLS w danym Hoście Wirtualnym.
SSLCipherSuite
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL – określa
zestaw szyfrów stosowanych podczas transmisji zaszyfrowanych danych.
SSLCertificateFile – określa plik z certyfikatem serwera
SSLCertificateKeyFile – określa plik z kluczem prywatnym pasującym do certyfikatu określonego
parametrem SSLCertificateFile
SSLCACertificateFile – definiuje ścieżkę do pliku z certyfikatami urzędów pośrednich. Marcin Bojko edytował(a) ten post dnia 09.08.11 o godzinie 13:53
Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

Jest SSLEngine on

Pozatym SSL na tej maszynie dziala prawidlowo (dla wielu roznych wirtualek) - problem dot. weryfikacji certyfikatu (wczesniej nie mialem do czynienia z certyfikatami wymagajacymi instalacji cert. posredniczacych)

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

Andrzej Cyrulik:
Jest SSLEngine on

Pozatym SSL na tej maszynie dziala prawidlowo (dla wielu roznych wirtualek) - problem dot. weryfikacji certyfikatu (wczesniej nie mialem do czynienia z certyfikatami wymagajacymi instalacji cert. posredniczacych)
Brak SSLCipherSuite - to na szybko...
Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

Istotnie - moja linia lekko sie roznila, poprawilem na taka, jak podaje dokumentacja unizeto - sytuacja bez zmian.Andrzej Cyrulik edytował(a) ten post dnia 09.08.11 o godzinie 14:01
Adrian Czerniak

Adrian Czerniak Administrator
Systemów Uniksowych

Temat: Apache SSL - certyfikat CA - problem

Może w kodzie witryny są odnośniki do stron spoza "chronionej" domeny?
Maciej K.

Maciej K. DevOps Engineer

Temat: Apache SSL - certyfikat CA - problem

Adrian Czerniak:
Może w kodzie witryny są odnośniki do stron spoza "chronionej" domeny?

W takim przypadku przeglądarka jedynie informuje, że nie wszystkie elementy danej strony są szyfrowane.
Jarosław Postawa

Jarosław Postawa Właściciel,
Dorvin.Net

Temat: Apache SSL - certyfikat CA - problem

Co widać w podglądzie certyfikatu? Może nie jest generowany chain, jakimś cudem usunąłeś CA Unizeto z domyślnego zestawu CA przeglądarki albo kupiłeś nie takiego certa, jak trzeba.
Jarosław Rafa

Jarosław Rafa senior software
engineer, Motorola
Solutions Systems
Polska

Temat: Apache SSL - certyfikat CA - problem

Podstawowe pytanie, to czy przeglądarka (nie serwer) ma w swoim repozytorium certyfikatów CA te same certyfikaty, którymi jest podpisany Twój certyfikat i które wgrałes na serwer do ca-bundle.crt

Druga sprawa, to raczej (na szybko, nie wgryzałem się w to dokładnie) nie wydaje mi się poprawna konfiguracja, w której we wszystkich trzech liniach SSLCertificateFile, SSLCACertificateFile i SSLCertificateKeyFile masz podana ścieżkę do tego samego pliku. Jak napisał powyżej Marcin, znaczenie tych parametrów jest różne i raczej powinny byc tam trzy rózne pliki. Ja mam np. u siebie cos takiego:

SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
SSLCertificateChainFile /etc/httpd/conf/ssl.crt/ca.crt

Wprawdzie nie mam kupnego certyfikatu, tylko wygenerowałem sobie własny certyfikat CA i nim podpisywałem certyfikat serwera, ale po umieszczeniu tegoż certyfikatu CA w przegladarce jako zaufanego wszystko działa bez problemu...
Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

Hmm,m wobec tego chyba nie bardzo rozumiem czym rozni sie SSLCACertificateFile od SSLCertificateChainFile.

Moze palne teraz glupote (z gory przepraszam), ale czy przypadkiem nie po to sa certyfikaty posrednie instalowane na serwerze, zeby przegladarki mogly z nich korzystac, a tym samym nie alarmowac o "niezaufanym" wystawcy ?
Jarosław Postawa

Jarosław Postawa Właściciel,
Dorvin.Net

Temat: Apache SSL - certyfikat CA - problem

Andrzej Cyrulik:
Moze palne teraz glupote (z gory przepraszam), ale czy przypadkiem nie po to sa certyfikaty posrednie instalowane na serwerze, zeby przegladarki mogly z nich korzystac, a tym samym nie alarmowac o "niezaufanym" wystawcy ?
W sumie tak. Tylko żeby przeglądarka nie płakała, to musisz podpisać certyfikat innym, któremu ufa. Można nawet tworzyć listę takich certyfikatów. To się nazywa chain. Skoro przeglądarka płacze, to znaczy że z jakiegoś powodu nie dostaje łańcucha certów lub nie ufa żadnemu CA z łańcucha.
Jarosław Rafa

Jarosław Rafa senior software
engineer, Motorola
Solutions Systems
Polska

Temat: Apache SSL - certyfikat CA - problem

Andrzej Cyrulik:
Hmm,m wobec tego chyba nie bardzo rozumiem czym rozni sie SSLCACertificateFile od SSLCertificateChainFile.

SSLCACertificateFile - plik z certyfikatem Twojego serwera (tylko!), tym który został podpisany przez CA.
SSLCertificateChainFile - plik z łańcuchem certyfikatów CA które podpisywały Twój certyfikat (w moim przypadku gdy ten łańcuch sprowadza się tylko do jednego certyfikatu w tym pliku jest tylko certyfikat mojego własnego CA, które podpisało certyfikat mojego serwera).

Plik SSLCACertificateFile jest indywidualny dla Twojego serwera, plik SSLCertificateChainFile jest taki sam dla wszystkich serwerów mających certyfikat od tego samego CA...

Przecież w poście Marcina to było wyraźnie objasnione...Jarosław Rafa edytował(a) ten post dnia 11.08.11 o godzinie 21:08

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

Jarosław Rafa:
Andrzej Cyrulik:
Hmm,m wobec tego chyba nie bardzo rozumiem czym rozni sie SSLCACertificateFile od SSLCertificateChainFile.

SSLCACertificateFile - plik z certyfikatem Twojego serwera(tylko!), tym który został podpisany przez CA.
Syntax: SSLCACertificateFile file-path
This directive sets the all-in-one file where you can assemble the Certificates of Certification Authorities (CA) whose clients you deal with. These are used for Client Authentication. Such a file is simply the concatenation of the various PEM-encoded Certificate files, in order of preference. This can be used alternatively and/or additionally to SSLCACertificatePath

(nie muszę chyba pisać skąd ten cytat :)
Jarosław Rafa

Jarosław Rafa senior software
engineer, Motorola
Solutions Systems
Polska

Temat: Apache SSL - certyfikat CA - problem

Fakt, mea culpa :) Wydawało mi się, że pytanie było o różnice pomiędzy SSLCertificateFile (nie SSLCACertificateFile) a SSLCertificateChainFile... Zapewne to wynikło z tego, ze parametru SSLCACertificateFile nie uzywam (jak zreszta było widać w przykładzie configa który pokazałem) bo nie mam takiej potrzeby...
Andrzej Cyrulik

Andrzej Cyrulik Administrator RedHat
Linux

Temat: Apache SSL - certyfikat CA - problem

Lata swietlne minely..... i przepraszam ze tak pozno :(

Ale lepiej pozno niz wcale - problem oczywiscie rozwiazalem - z pomoca supportu Unizeto (troche telefonow i maili to niestety kosztowalo).

Glowna przyczyna byl bledny certyfikat posredniczacy - link zawarty w dokumentacji (manual instalacji cert) prowadzi do blednego/starego/nieprawidlowego (nie wnikalem) certyfikatu.

Udalo mi sie "dokopac" na stronie do poprawnego i aktualnego.
TEraz dziala :)

Dziekuje wszystkim za pomoc.

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

Witam :)
Chciałbym reaktywować temat.
Podpiąłem nowe certy od Unizeto na 2 maszynach.
na 1. openssl s_client -connect xxxx:443 - wynik OK - centos
na 2 - debian takie oto błędy:

verify error:num=20:unable to get local issuer certificate
verify return:1
verify error:num=27:certificate not trusted
verify return:1
verify error:num=21:unable to verify the first certificate
verify return:1

Verify return code: 21 (unable to verify the first certificate)

Kiedy podaje ręcznie CApath - wszystko jest ok. Wydaje mi się, że to problem z CA ROOT. Czy mogę prosić Was o pomoc ?

konto usunięte

Temat: Apache SSL - certyfikat CA - problem

Adam N.:
Witam :)
Chciałbym reaktywować temat.
Podpiąłem nowe certy od Unizeto na 2 maszynach.
na 1. openssl s_client -connect xxxx:443 - wynik OK - centos
na 2 - debian takie oto błędy:

Wygląda na to, że OpenSSL z centos domyślnie korzysta z paczki certyfikatów root. Debianowe OpenSSL potrzebuje określenia pliku (CAfile) lub ścieżki do katalogu (CApath) z pojedynczymi plikami certyfikatów root.

Następna dyskusja:

Apache+mod_proxy+SSL -dziwn...




Wyślij zaproszenie do