2014-11-25 2 views
0

Windows 7 x64에 CouchDB를 설치했습니다. 사용 CouchDB WikiWindows 용 CouchDB - SSL 인증서 - 연결 오류

내가 다시 서버 :

curl http://127.0.0.1:5984/_restart -X POST 
secure-socket-level-options

또한 확인 : 는 내가 준비 문서에 같은 인증서입니다 포트 6984.

에 SSL과 CouchDB를 실행하려고

로그 표시, 포트 6984는 수신 대기 중입니다.

[Tue, 25 Nov 2014 10:15:48 GMT] [debug] [<0.1208.0>] 'POST' /_restart {1,1} from "127.0.0.1" 
Headers: [{'Accept',"*/*"}, 
      {'Authorization',"Basic dG9tOnBhcw=="}, 
      {'Content-Type',"application/json"}, 
      {'Host',"127.0.0.1:5984"}, 
      {'User-Agent',"curl/7.38.0"}] 
[Tue, 25 Nov 2014 10:15:48 GMT] [debug] [<0.1208.0>] OAuth Params: [] 
[Tue, 25 Nov 2014 10:15:48 GMT] [info] [<0.1208.0>] 127.0.0.1 - - POST /_restart 202 
[Tue, 25 Nov 2014 10:15:50 GMT] [info] [<0.1957.0>] Apache CouchDB has started on http://127.0.0.1:5984/ 
[Tue, 25 Nov 2014 10:15:50 GMT] [info] [<0.1957.0>] Apache CouchDB has started on https://127.0.0.1:6984/ 

난 그냥 문서처럼 local.ini을 수정하고 말한다 :

[daemons] 
; enable SSL support by uncommenting the following line and supply the PEM's below. 
; the default ssl port CouchDB listens on is 6984 
httpsd = {couch_httpd, start_link, [https]} 

[ssl] 
;cert_file = C:/Program\ Files\ (x86)/Apache\ Software\ Foundation/CouchDB/etc/Cert/localhost.crt 
;key_file = C:/Program\ Files\ (x86)/Apache\ Software\ Foundation/CouchDB/etc/Cert/localhost.pem 
cert_file = C:/Program\ Files\ (x86)/Apache\ Software\ Foundation/CouchDB/etc/couchdb/localhost.crt 
key_file = C:/Program\ Files\ (x86)/Apache\ Software\ Foundation/CouchDB/etc/couchdb/localhost.pem 
;cert_file = /etc/Cert/localhost.crt 
;key_file = /etc/Cert/localhost.pem 
;key_file = /etc/couchdb/localhost.pem 
;cert_file = /etc/couchdb/couchdb.pem 
port = 6984 
;password = pass:a 
; set to true to validate peer certificates 
verify_ssl_certificates = false 
; Path to file containing PEM encoded CA certificates (trusted 
; certificates used for verifying a peer certificate). May be omitted if 
; you do not want to verify the peer. 
;cacert_file = /full/path/to/cacertf 
; The verification fun (optional) if not specified, the default 
; verification fun will be used. 
;verify_fun = {Module, VerifyFun} 
; maximum peer certificate depth 
ssl_certificate_max_depth = 1 

재시작 서비스 후, 포트 6984에서 서버에 연결할 수 없습니다 : 내가 놓친 것을,

curl -k -v https://127.0.0.1:6984 
* Rebuilt URL to: https://127.0.0.1:6984/ 
* Hostname was NOT found in DNS cache 
* Trying 127.0.0.1... 
* Connected to 127.0.0.1 (127.0.0.1) port 6984 (#0) 
* 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 

뭔가가, 나는 확인되지 않았다? CouchDB는 버전 1.6.1입니다.

+1

동일한 문제가 있습니다. Windows에서 SSL을 사용하여 CouchDB를 실행할 수 있었습니까? – oliverdm

답변

0

동일한 문제가 있지만 동일한 증상이 있지만 인증서 경로가 확실하지 않습니다.

인증서에 대한 실제 'Windows'경로를 사용해야하며 공백 (예 : c : \ Program Files (x86) \ Apa .....)이 있으면 전체 경로를 작은 따옴표로 묶어야합니다. 경로에서 '\'를 '/'로 바꾸면됩니다.