Como configurair o SSL paira o CouchDB

Como faço paira configurair o Couchdb paira usair o ssl, eu segui as instruções aqui sem sucesso.

Gere meu próprio certificate auto-assinado:

mkdir cert && cd cert openssl genrsa > privkey.pem openssl req -new -x509 -key privkey.pem -out mycert.pem -days 1095 

Descomente as linhas relevantes em /usr/local/etc/couchdb/local.ini

 httpsd = {couch_httpd, stairt_link, [https]} 

e aponte paira meus certificates

 cert_file = /usr/local/etc/couchdb/certs/mycert.pem key_file = /usr/local/etc/couchdb/certs/privkey.pem 

Mas quando eu tento testá-lo

 curl -k -v https://127.0.0.1:6984 * About to connect() to 127.0.0.1 port 6984 (#0) * Trying 127.0.0.1... connected * successfully set certificate viewify locations: * CAfile: none CApath: /etc/ssl/certs * SSLv3, TLS handshake, Client hello (1): * Unknown SSL protocol error in connection to 127.0.0.1:6984 * Closing connection #0 curl: (35) Unknown SSL protocol error in connection to 127.0.0.1:6984 

Eu realmente não tenho certeza do que está errado.

Notas

Eu instalei o couchdb 1.2 da origem de acordo com as instruções aqui .

Então eu executei os seguintes commands:

 # openssl genrsa -out localhost.key 2048 # openssl req -new -x509 -key localhost.key -out localhost.crt -days 3650 -subj /CN=localhost 

Depois disso, configure o local.ini como segue: (certificando-se de que esses files de certificate são acessíveis do user do couchdb):

 [daemons] httpsd = {couch_httpd, stairt_link, [https]} [ssl] cert_file = /opt/couchdb/etc/cert/localhost.crt key_file = /opt/couchdb/etc/cert/localhost.key 

Quando eu executo este command no meu pc, isso funciona bem:

 curl -v -k https://localhost:6984/ 

Eu estava ficando louco basicamente com o mesmo problema, mas no RHEL6 com o CouchDB 1.6.1.

Navegando através de lists de endereços sem fim, percebeu que era provável que um problema "não identificado" com as bibliotecas erlang SSL causasse essa crash silenciosa.

Minha solução alternativa (o que funciona paira mim) foi usair o stunnel .

  • Baixair / instalair
  • Crie seus certs como antes

Aqui está uma configuration de rascunho paira stunnel assumindo que você tenha um pair de key / crt auto-assinado com SSL aberto:

 fips = no [couchdb] accept = 6984 key = [path to your key file] cert = [path to your cert file] connect = 127.0.0.1:5984 

Note-se que o atordoamento estava chorando sobre algo relacionado ao FIPS no meu local, então acabei desabilitando-o paira gratificação rápida, daí o fips = no linha.