Histórico de mensagens sobre ssl

EXIBINDO CONVERSAS RECENTES:

Texto: ssl
# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Olá, <@!411338863949381634>.
Você está implementado em PHP certo? Caso esteja utilizando nossa SDK com certificado em formato .p12, será este o problema.
Para realizar as requisições, é necessário converter o certificado para .pem
Ou adicionar o trecho CURLOPT_SSLCERTTYPE => "P12", nas requisições para permitir o formato .p12

# pix
Avatar discord do usuario terremoth

terremoth

e nem esse parametro de CURLOPT_SSLKEY

# pix
Avatar discord do usuario Eduardo_

Eduardo_

Ver Respostas

Confere se esta enviando algo assim:
CURLOPT_URL => 'https://....',
CURLOPT_PORT => 8443,
CURLOPT_SSLCERT => $codificado,
CURLOPT_SSLKEY => $decodificado,
CURLOPT_CAINFO => $codificado,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_FAILONERROR => 1,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => 'POST',

# pix
Avatar discord do usuario terremoth

terremoth

Ver Respostas

openssl pkcs12 -in certificado.p12 -out certificado.pem -nodes

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

TLS 1.3 tem uma lista de ciphers mais reduzida, seu OpenSSL tem suporte aos algoritmos previstos no TLS 1.3 ?

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Você chegou a incluir em seu Virtual Host as configurações como no exemplo:

## Diretório onde hosts virtuais estão armazenados.

SSLCertificateFile /caminho_certificado/server_ssl.crt.pem
SSLCertificateKeyFile /caminho_certificado/server_ssl.key.pem
SSLVerifyClient require
SSLVerifyDepth 3
SSLCACertificateFile /caminho_certificado/chain-pix-prod.crt

## Se preferir deixar apenas uma rota de sua url para notificações você pode adicionar:

SSLVerifyClient none

SSLVerifyClient require
SSLVerifyDepth 3

# pix
Avatar discord do usuario edson2387

edson2387

esse certificado não seria que esta configurado no ssl do httpd conf.d

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Entendido

:443>
ServerAdmin [email protected]
DocumentRoot /var/www/market4u_dev2/
ServerAlias m-dev2.market4u.com.br

SSLCertificateFile /etc/pki/tls/certs/localhost.crt # Este não parece estar referenciando o arquivo correto
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key # Este não parece estar referenciando o arquivo correto
SSLCACertificateFile /var/www/market4u_dev2/gerencianet/chain-pix-prod.crt # Ok, este é a chave publica da GN para que ocorra o "Hand-Shake"

SSLVerifyClient none # Adicione isto fora do

SSLVerifyClient require
SSLVerifyDepth 3


Nos parâmetros, SSLCertificateFile e SSLCertificateKeyFile, você irá fornecer o caminho da chave privada server_ssl.key.pem e uma pública server_ssl.crt.pem da sua certificadora SSL do seu domínio. Eles possuem extensão .pem, como pode ver neste exemplo que dei: https://discord.com/channels/775322853884821504/775328670784159744/804760929136541767

# pix
Avatar discord do usuario edson2387

edson2387

:443>
ServerAdmin [email protected]
DocumentRoot /var/www/market4u_dev2/
ServerAlias m-dev2.market4u.com.br

SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCACertificateFile /var/www/market4u_dev2/gerencianet/chain-pix-prod.crt


SSLVerifyClient require
SSLVerifyDepth 3

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Boa tarde, <@!802052811718262814>!
Tente seguir estes passos, que estão mais detalhados par aconfigurar o Apache.
Primeiramente você deve acessar o arquivo de configuração do apache, geralmente fica em /etc/apache2/mods-enabled
Nele você irá fornecer o caminho da chave privada server_ssl.key.pem e uma pública server_ssl.crt.pem da sua certificadora SSL do seu domínio.

SSLCertificateFile /caminho_certificado/server_ssl.crt.pem
SSLCertificateKeyFile /caminho_certificado/server_ssl.key.pem

Neste mesmo arquivo do apache, adicione o caminho para o arquivo com a chave pública da Gerencianet para que ocorra o "Hand-Shake". Este arquivo você mesmo criará com a nossa chave (https://pix.gerencianet.com.br/webhooks/chain-pix-sandbox.crt - Produção) e salvará em um diretório de sua escolha.
SSLCACertificateFile /caminho_certificado/chain-pix-prod.crt

Se preferir deixar apenas uma rota de sua url para notificações, ex http://seudominio.com.br/webhook" class="link-msg">http://seudominio.com.br/webhook (as notificações serão enviadas para esta rota) você pode adicionar:
SSLVerifyClient none

 SSLVerifyClient require -- Indica que todas as requisições nesta rota irão requerer um certificado para o "Hand-Shake"
 SSLVerifyDepth 3

Se preferir que todas as notificações sejam enviadas para sua URL sem um subdiretório, ex http://seudominio.com.br, basta adicionar as seguintes informações
SSLVerifyClient require
SSLVerifyDepth 3

Com basicamente isto configurado no Apache, você realiza a requisição da rota PUT/v2/webhook/:chave passando no body { "webhookUrl": "http://seudominio.com.br/webhook"; } que seu webhook estará cadastrado para sua chave Pix. A partir daí, as cobranças Pix criadas com sua chave que estejam associados a um txid serão notificados em sua URL.

Para confirmar que seu webhook foi cadastrado, basta consumir a rota GET /v2/webhook/:chave para exibir informações acerca do webook pix vinculado à sua chave

# pix
Avatar discord do usuario rogeriocruzsousa

rogeriocruzsousa

Ver Respostas

Esta acontecendo a mesma coisa aqui, só a linha abaixo como do exemplo não funciona em produção, somente em localhost.

System.setProperty("javax.net.ssl.keyStore", certificado.p12;

Alguém sabe se precisa colocar parâmetros extras no java também?

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

<@!375094642238029824> Tente seguir estes passos, que estão mais detalhados.
Primeiramente você deve acessar o arquivo de configuração do apache, geralmente fica em /etc/apache2/mods-enabled
Nele você irá fornecer o caminho da chave privada server_ssl.key.pem e uma pública server_ssl.crt.pem da sua certificadora SSL do seu domínio.

SSLCertificateFile /caminho_certificado/server_ssl.crt.pem
SSLCertificateKeyFile /caminho_certificado/server_ssl.key.pem

Neste mesmo arquivo do apache, adicione o caminho para o arquivo com a chave pública da Gerencianet para que ocorra o "Hand-Shake". Este arquivo você mesmo criará com a nossa chave (https://pix.gerencianet.com.br/webhooks/chain-pix-sandbox.crt - Produção) e salvará em um diretório de sua escolha.
SSLCACertificateFile /caminho_certificado/chain-pix-prod.crt

Se preferir deixar apenas uma rota de sua url para notificações, ex http://seudominio.com.br/webhook" class="link-msg">http://seudominio.com.br/webhook (as notificações serão enviadas para esta rota) você pode adicionar:
SSLVerifyClient none

 SSLVerifyClient require -- Indica que todas as requisições nesta rota irão requerer um certificado para o "Hand-Shake"
 SSLVerifyDepth 3

Se preferir que todas as notificações sejam enviadas para sua URL sem um subdiretório, ex http://seudominio.com.br, basta adicionar as seguintes informações
SSLVerifyClient require
SSLVerifyDepth 3

Com basicamente isto configurado no Apache, você realiza a requisição da rota PUT/v2/webhook/:chave passando no body { "webhookUrl": "http://seudominio.com.br/webhook"; } que seu webhook estará cadastrado para sua chave Pix. A partir daí, as cobranças Pix criadas com sua chave que estejam associados a um txid serão notificados em sua URL.

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Isso, <@!798679248633856000>.
Especificando o caminho do certificado em ssl_client_certificate, então é realizado a verificação do certificado da Gerencianet com o que você inseriu, e o resultado da verificação é armazenado na variável $ssl_client_verify
E você especifica o path que quer fazer o rewrite

# pix
Avatar discord do usuario ribas2555

ribas2555

Ver Respostas

serio que é só isso?

configuro o nginx pra servir minha api, e especifico que em algum path tipo o webhook ele tem que verificar o client?

$ssl_client_verify
returns the result of client certificate verification: “SUCCESS”, “FAILED:reason”, and “NONE” if a certificate was not present;


e coloco o path no ssl_client_certificate ?

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Claro! Essa chave pública da Gerencianet você configura em seu servidor para realizar o "Hand-Shake" e assim a comunicação ser estabelecida.
Para Nginx será informado no parâmetro ssl_client_certificate conforme apontado
imagem enviada na mensagem pelo usuario guilherme_efi

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

Ver Respostas

ja tenho o ssl ativado para ter o https

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

Ver Respostas

quando tentei criar o webhoook me deu esse erro: Unknown SSL protocol error in connection to api-pix.gerencianet.com.br:443

# pix
Avatar discord do usuario diegohenrique1989

diegohenrique1989

Ver Respostas

curl_setopt_array($curl, array(
CURLOPT_URL => $_ENV["PIX_URL_AUTH"], // Rota base, desenvolvimento ou produção
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>"{\r\n \"grant_type\": \"client_credentials\"\r\n}",
CURLOPT_SSLCERT => $arq_certificado, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $authorization",
"Content-Type: application/json",
),
));

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Certo. No Postman utilizou o certificado .p12 mesmo?
Verifique se a verificação de SSL está ativa. Se sim, deixe OFF
imagem enviada na mensagem pelo usuario guilherme_efi

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

A url deve ter o certificado SSL para HTTPS, onde foram geradas as chaves pública e privada?