亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用自簽名 SSL 證書

使用自簽名 SSL 證書

Go
慕工程0101907 2021-12-20 19:01:25
我正在嘗試將此證書與 Nginx 反向代理后面的 InfluxDB 其余端點和我用 GoLang 編寫的簡單客戶端之間的連接一起使用。我開始使用使用 openssl 生成的 SSL 證書,該鏈接中的教程指導我創建和自唱證書。但是每次嘗試建立此連接時都會出現此錯誤:x509: certificate signed by unknown authority (possibly because of "x509: invalid signature: parent certificate cannot sign this kind of certificate" while trying to verify candidate authority certificate "<My Certificate Name>")我還沒有找到解決這個問題的方法,但我會展示我認為相關的內容:據我所知,InfluxDB 的 nginx 規則很容易編寫,最終看起來像這樣:# InfluxDBserver {    ssl                   on;    ssl_protocols         TLSV1.2 TLSV1.1 TLSV1;    ssl_certificate       /etc/nginx/server.crt;    ssl_certificate_key  /etc/nginx/server.key;    listen                8086;    access_log            /var/log/nginx/influxdb.access.log;    error_log             /var/log/nginx/influxdb.error.log;    location / {      include /etc/nginx/conf.d/options.conf.inc;      include /etc/nginx/conf.d/auth.conf.inc;      proxy_pass http://127.0.0.1:8087;    }  }options.conf.inc 在哪里:  if ($request_method = OPTIONS) {    add_header Access-Control-Allow-Origin $served_at;    add_header Access-Control-Allow-Methods "GET, OPTIONS";    add_header Access-Control-Allow-Headers "Authorization";    add_header Access-Control-Allow-Credentials "true";    add_header Content-Length 0;    add_header Content-Type text/plain;    return 200;  }auto.conf.inc 在哪里:    add_header Access-Control-Allow-Headers "Authorization";    add_header Access-Control-Allow-Credentials "true";    auth_basic "Restricted";    auth_basic_user_file <pathTo>.htpasswd;    error_page 401 /401.html;正如您在我的 golang 代碼中看到的那樣,我InsecureSkipVerify在 tlsConfig 對象上使用了標志。將此設置為 true 會使一切正常,但似乎本質上不好做,因為它首先破壞了使用證書的很多意義。我留下的選項似乎是生成 CA 證書并使用 THAT 來簽署我的常規證書,但這似乎也比我需要做的更像是一種黑客行為。
查看完整描述

1 回答

?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

該錯誤消息來自 go 的CheckSignatureFrom方法。看起來它需要將 CA 標志basicConstraints設置為 true,并且如果該keyUsage字段存在(它在您鏈接的示例中,但它不在我見過的大多數使用自簽名證書的說明中),它必須包含keyCertSign價值。

當我遇到類似問題時,我創建了一個獨立于服務器證書的 CA。這需要更多的工作,但它不是“黑客”;如果將自簽名證書設置為正確識別為自己的 CA 的任何內容是更黑客的解決方案。


查看完整回答
反對 回復 2021-12-20
  • 1 回答
  • 0 關注
  • 178 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號