Como configuro os certificados SSL com um pacote de certificados?

1

Estou tentando configurar uma conexão criptografada do cliente de linha de comando do banco de dados MySQL para a instância do banco de dados MySQL na AWS.

A AWS forneceu um pacote de certificados que parece ter todos os seus certificados para todos os seus servidores.

Os documentos do MySQL Criando Certificados e Chaves SSL Usando o OpenSSL diz que preciso fazer isso:

(1) Create CA certificate

openssl genrsa 2048 > ca-key.pem

openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem

(2) Create server certificate, remove passphrase, and sign it.

server-cert.pem = chave pública

server-key.pem = chave privada

openssl req -newkey rsa:2048 -days 3600 \
     -nodes -keyout server-key.pem -out server-req.pem

openssl rsa -in server-key.pem -out server-key.pem

openssl x509 -req -in server-req.pem -days 3600 \
     -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

(3) Create client certificate, remove passphrase, and sign it.

client-cert.pem = chave pública

client-key.pem = chave privada

openssl req -newkey rsa:2048 -days 3600 \
        -nodes -keyout client-key.pem -out client-req.pem

openssl rsa -in client-key.pem -out client-key.pem

openssl x509 -req -in client-req.pem -days 3600 -CA  ca.pem \
     -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

openssl verify -CAfile ca.pem server-cert.pem client-cert.pem

Eu já tenho ca.pem (rds-combined-ca-bundle.pem) da AWS.

Então eu tenho que pular etapas (1) e amp; (2).

Eu tenho a chave pública do servidor ca-key.pem no pacote AWS?

Se sim, como usá-lo para concluir o passo (3)?

O Documentos da AWS - 'Suporte SSL para instâncias de banco de dados MySQL' são particularmente esparsas e apenas dizem:

mysql -h myinstance.c9akciq32.rds-us-east-1.amazonaws.com
    -u my-user -p
    --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert

que deve me solicitar a senha, mas apenas trava.

UPDATE

Já tenho a conexão configurada e funcionando para o MySQL Workbench e para o pool de conexão Java JDBC, e o teste de telnet health mostra que o servidor MySQL está acessível.

    
por Adam 24.05.2017 / 11:50

2 respostas

1

Você não precisa gerar nenhum certificado SSL, basta usar os parâmetros rds-combined-ca-bundle.pem in mysql , conforme a documentação diz.

    
por 24.05.2017 / 12:53
0

não tinha nada a ver com certificados, afinal. Algumas pesquisas desesperadas por SO produziram a resposta: Conectando-se ao MySQL a partir do Cygwin

O Cygwin e o cliente Windows MySQL não são reproduzidos juntos.

    
por 24.05.2017 / 14:29