Zdravím,
potřebuji se dostat do testovacího prostředí na
https://test.firma.cz/ . Problém je v tom, že při přístupu přes např. FIREFOX to hlásí, že je nedůvěryhodný certifikát. Z firmy poslali root_CA_certifikát.crt, ten naimportuji do záložky CA AUtority a FIREFOX už nehlásí problém. Klientská stanice, která volá
https://test.firma.cz/ je LINUX debian 6.
Ovšem jako úložiště je použito vlastní místo mozilly.
To se ale projevuje pouze a jen u mozily firefoxu pod přihlášeným uzivatelem [user].
Celkově v celém systému se to neprojeví.
2. Další možnost
certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "test.firma.cz" -i Root_CA_firma.crt
taky nepomohla, pravděpodobně se aktualizuje pouze mozilla úložiště certifikátů přihlášeného uživatele /home/uzivatel/.pki/nssdb/
3. Zkusit tinyca2 pro linux?
4. Jako systémové úložiště certifikátů je pravděpodobně /etc/ssl/certs/ kde jsou symbolické odkazy na např. /usr/share/ca-certifikates/mozilla/Comodo_Secure.crt
To by mělo být ono.
Takže jsem vytvořil symbolický odkaz v /etc/ssl/certs/Root_CA_firma.pem na /usr/share/ca-certificates/mozilla/Root_CA_firma.crt
Nyní by to mělo být obsaženo v systému, nicméně volání přes wget stále hlásí chybu:
wget --certificate=osobnicert.pem https://isbtst.pse.cz/kmapp/services/cdcpPort4?wsdl
--2012-06-29 16:52:35-- https://isbtst.pse.cz/kmapp/services/cdcpPort4?wsdl
Enter PEM pass phrase: zadané správné heslo
Resolving test.firma.cz... 172.16.10.49
Connecting to isbtst.pse.cz|172.16.10.49|:443... connected.
ERROR: cannot verify isbtst.pse.cz's certificate, issued by `/C=CZ/O=Prague Stock Exchange/OU=Prague Stock Exchange CA':
Self-signed certificate encountered.
To connect to isbtst.pse.cz insecurely, use `--no-check-certificate'.
Pokud dám tu volbu --no-check-certificate tak se wget připojí a stáhne ten WDSL.
Takže volání ISBTST v PHP5 stále hlásí chybu také:
Zdrojový kód:
<?php
$protected_url = "
https://isbtst.pse.cz/kmapp/services/cdcpPort4?wsdl";
$client = new SoapClient($protected_url, array('local_cert' =>file_get_contents('osobnicert.pem'), 'passphrase' =>'heslo') );
?>
Tohle mne odmění chybovou hláškou:
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://isbtst.pse.cz/kmapp/services/cdcpPort4?wsdl' : failed to load external entity "https://isbtst.pse.cz/kmapp/services/cdcpPort4?wsdl"
in /home/urso/1/soap_client9.php:3
Stack trace:
#0 /home/urso/1/soap_client9.php(3): SoapClient->SoapClient('https://isbtst....', Array)
#1 {main}
thrown in /home/urso/1/soap_client9.php on line 3
Neví tu někdo, jak ten root_CA_certifikat.crt dostat do systému DEBIAN 6 tak, aby wget nehlásil chyby a pak (možná) by šlo i PHP5 volání přes SOAP?