[Resolvido] SSL certificate problem: unable to get local issuer certificate

Visualizando 6 posts - 1 até 6 (de 6 do total)
  • Autor
    Posts
  • #11333
    dlerario
    Participante

    Oi, boa tarde a todos

    Estou com um erro no log da plataforma do site que estou utilizando para realizar a integração WordPress / Woocommerce com plugin Cielo Webservice desenvolvido pelo programador Claudio Sanches.

    Na hora de finalizar a compra com Cartão de Credito(ou debito) pelo plugin Cielo Webservice,

    (me atentando ao ambiente de testes, e aos centavos no produto teste para aprovação de pagamentos ex.: R$1000,00)

    Aparece um erro que ja foi comentado no forum de suporte do plugin,

    No site: “Cielo: Um erro aconteceu ao processar o seu pagamento, por favor, tente novamente ou entre em contato para conseguir assistência”

    E no log do Woocommerce:  “SSL certificate problem: unable to get local issuer certificate”

    Cuja soluçã segundo o próprio Claudio Sanches, seria atualizar as extensões cURL e OpenSSL no servidor,

    Estou tentando mas não estou conseguindo atualizar via SSH no meu servidor VPS

    (Linux CentOS 6 com cPanel/WHM hospedado pela GoDaddy)

    pois não manjo muito de comandos no terminal, e gostaria de ter mais certeza na solução para poder resolvê-la, pois nem sei se isto irá solucionar no meu caso, e também para não piorar a situação.

    Eu ja conferi no phpinfo.php do meu site as versões que tem instaladas são:
    cURL = 7.38
    OpenSSL = 1.0.1e

    Vi dísponivel na web as versões mais recentes(no entanto nem sei se são compativeis com o meu OS):
    cURL = 7.45
    OpenSSL = 1.0.2d

    O site está pronto com todos produtos, e aparentemente só me falta arrumar este erro para começar a operar com o site.

    Obrigado desde ja.

     

    Segue abaixo log do erro:

    10-18-2015 @ 12:03:41 - Requesting a transaction for order 1317 with the follow data: WC_Cielo_XML Object
    (
        [@attributes] => Array
            (
                [id] => 1317-1445177021
                [versao] => 1.3.0
            )
    
        [dados-pedido] => WC_Cielo_XML Object
            (
                [numero] => 1317
                [valor] => 90000
                [moeda] => 986
                [data-hora] => 2015-10-18T11:27:06
                [idioma] => PT
            )
    
        [forma-pagamento] => WC_Cielo_XML Object
            (
                [bandeira] => visa
                [produto] => 1
                [parcelas] => 1
            )
    
        [url-retorno] => https%3A%2F%2Fwww.allentare.com.br%2Fwc-api%2FWC_Cielo_Credit_Gateway%2F%3Fkey%3Dwc_order_56239e2ad2607%26amp%3Border%3D1317
        [autorizar] => 3
        [capturar] => true
        [gerar-token] => false
    )
    
    10-18-2015 @ 12:03:42 - An error occurred while requesting the transaction: WP_Error Object
    (
        [errors] => Array
            (
                [http_request_failed] => Array
                    (
                        [0] => SSL certificate problem: unable to get local issuer certificate
                    )
    
            )
    
        [error_data] => Array
            (
            )
    
    )

    Solução segundo a Cielo:

    Será necessário proceder com as atualizações abaixo:
     
    1.       Atualização do Certificado Digital de Validade Estendida:
    Para melhorar a segurança da plataforma Cielo E-commerce, foi feito a atualização do Certificado SSL atual para o Certificado Digital de Validação Estendida no dia 02/02/2015.
    O objetivo da atualização é aumentar a proteção do site, tornando-o mais confiável para os clientes que acessam e realizam compras virtualmente.
    A loja virtual deve descompactar o arquivo em anexo e instalar na Trustedstore do servidor, especialmente em ambientes Java e PHP.
     
    O Certificado Digital deve ser instalado pelo Administrador do seu servidor ou pelo provedor de hospedagem do site.
     
    Caso sua equipe seja responsável por essa atualização e possua dúvidas quanto ao procedimento a ser seguido, segue algumas dicas: Clique Aqui
     
    2.       Bloqueio SSLv3:
    Para se manter em conformidade com o PCI-DSS, no dia 02/02/2015 a Cielo deixará de aceitar transações que usarem o protocolo SSLv3. Esse procedimento será adotado para evitar riscos de vulnerabilidades.
    Caso a aplicação utilize somente o protocolo SSLv3 como forma de criptografia de dados, é necessário que sua aplicação seja atualizada para utilizar o TLS.
     
     
     
    Dicas: Caso a loja esteja utilizando a linguagem PHP e o procedimento mencionado não funcione, altere dentro do include.php a versão do Certificado de 3 para 4.
     
    DE: curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 3);
    PARA: curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 4);
     
    Caso a alteração não funcione, altere para:
     
    PARA: curl_setopt($sessao_curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
     
    Verifique se a biblioteca cURL possui a versão 7.24, caso possua essa ou versões inferiores, é necessário alterar para:
     
    curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 1);
     
     
    Veja mais orientações no site: Curl
     
    Existem sistemas que não suportam o protocolo criptográfico TLS, neste caso, será necessário a atualização da versão.
    Exemplo: Versão do Open 1.0 não suporta, sendo necessário a atualização para versão mais recente.
     
     
    P.S.: Esta orientação possui a finalidade de sugerir uma alternativa de uso para uma função PHP. Sua aplicação assim como possíveis adaptações que possa ocorrer em função dela, são de responsabilidade do desenvolvedor. A Cielo não oferece suporte a programação.

    Realmente instalei a cadeia de certificados da Cielo no cPanel > SSL/TLS , mas isto não mudou nada em relação ao erro que persiste.

    Se altero dentro do plugin a linha

    PARA: curl_setopt($sessao_curl, CURLOPT_SSLVERSION,CURL_SSLVERSION_TLSv1);

    Vem a surgir um novo erro :

    10-16-2015 @ 10:44:16 - An error occurred while requesting the transaction: WP_Error Object
    (
        [errors] => Array
            (
                [http_request_failed] => Array
                    (
                        [0] => Operation timed out after 0 milliseconds with 0 out of 0 bytes received
                    )
    
            )
    
        [error_data] => Array
            (
            )
    
    )
    

    Por favor, alguem saberia me ajudar? Ou me dar suporte ?

    Obrigado desde ja.

    • Este tópico foi modificado 8 anos, 6 meses atrás por dlerario.
    #11334
    Luis FatorBinario
    Administrador

    Eu já vi acontecer esse mesmo erro desse mesmo conector do Claudio em outro sistema operacional. Naquele caso a única solução foi trocar a distribuição de Linux para o Ubuntu.

    O mais seguro a fazer no seu caso é abrir um ticket com a GoDaddy e apresentar o problema que talvez eles atualizem os módulos.

    E na minha opinião aquele conector precisa de uma revisão completa, pois como eu disse o seu caso não é o primeiro que pede ajuda aqui.

     

    O que você ainda pode tentar é:

    http://www.jrossetto.com.br/tutoriais/php/corrigindo-erro-de-certificado-da-cielo-tls/

    ou

    https://github.com/DeveloperCielo/Checkout-Cielo/issues/6

    e tente ainda desativar o firewall momentaneamente pra ver se não é problema de porta.

     

    #11335
    dlerario
    Participante

    Luis,

    Obrigado pela atenção e pela resposta.

    O meu servidor (GoDaddy) VPS tem dois planos um de R$99/mes sem suporte e um de R$600/mes com suporte. Optei pelo mais barato e agora tenho um suporte em inglês e que não me ajuda em nada, e alem de tudo ja gastei R$1.200,00 pois o pagamento é anual e antecipado…

    Em relação as tentativas, é o mesmo que a Cielo me passou:

    Dicas: Caso a loja esteja utilizando a linguagem PHP e o procedimento mencionado não funcione, altere dentro do include.php a versão do Certificado de 3 para 4.
    
    DE: curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 3);
    
    PARA: curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 4);
    
    Caso a alteração não funcione, altere para:
    
    PARA: curl_setopt($sessao_curl, CURLOPT_SSLVERSION,CURL_SSLVERSION_TLSv1);

    Como no plugin já vem configurado “curl_setopt($sessao_curl, CURLOPT_SSLVERSION, );” me restou alterar para “curl_setopt($sessao_curl, CURLOPT_SSLVERSION,CURL_SSLVERSION_TLSv1);” , que resultou no segundo erro 

    10-16-2015 @ 10:44:16 - An error occurred while requesting the transaction: WP_Error Object
    (
        [errors] => Array
            (
                [http_request_failed] => Array
                    (
                        [0] => Operation timed out after 0 milliseconds with 0 out of 0 bytes received
                    )
    
            )
    
        [error_data] => Array
            (
            )
    
    )

    Para este segundo erro, o suporte Cielo me retornou a seguinte informação:

    Pedimos que verifique no include .php se tempo configurado no servidor está de acordo com os includes CONNECTTIMEOUT e TIMEOUT, as informações devem estar iguais em ambos, servidor e includes.

                //  CURLOPT_CONNECTTIMEOUT
                //  o tempo em segundos de espera para obter uma conexão
                curl_setopt($sessao_curl, CURLOPT_CONNECTTIMEOUT, 10);
     
                //  CURLOPT_TIMEOUT
                //  o tempo máximo em segundos de espera para a execução da requisição (curl_exec)
                curl_setopt($sessao_curl, CURLOPT_TIMEOUT, 40);

    De acordo com o plugin, o tempo ja esta configurado para 40. Porem no servidor nao sei localizar esta informação.

    Sei que é trabalhoso, por isso pergunto se conhece alguem que poderia indicar para me ajudar a resolver este problema, pois já é dificíl encontrar alguem que entenda o que está acontencendo, e que ainda sabem solucionar está dificil encontrá-los.

    Obrigado

    #11338
    Luis FatorBinario
    Administrador

    Ok. Então o problema é localizar os arquivos e alterar as configurações..

    Posso olhar pra você, mas precisamos fazer isso com uma forma mais rápida de contato.

    Se usa Skype me adicione, o nome é: fatorbinario

     

    Por lá você pode me passar as credenciais do servidor e a gente pode ver como faz..

    * Me adicione e aguarde lá que estou resolvendo um ataque de servidor cPanel. Descobri que o WHM/cPanel são excelentes colaboradores de spammers/spoofers de email.

     

    #11339
    dlerario
    Participante

    OK Luis, muito obrigado.
    Esta adicionado. Basta me aceitar o usuario dlerario.

    #11343
    dlerario
    Participante

    Boa tarde,

    Para quem interessar consegui contornar este erro inserindo as seguintes linhas no functions.php do meu tema:

    /**
     * SSL unable to verify host fix
     */
    add_filter( 'https_local_ssl_verify', '__return_false' );
    add_filter( 'https_ssl_verify', '__return_false');

    Bastou seguir o tutorial postado em ingles no link:

    SSL certificate problem: unable to get local issuer certificate?

Visualizando 6 posts - 1 até 6 (de 6 do total)
  • Você deve fazer login para responder a este tópico.

©2014-2024 Fator Binário - Todos os direitos reservados

Fazer login com suas credenciais

Esqueceu sua senha?