校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 使用Go添加HTTPS的實(shí)現(xiàn)代碼示例

使用Go添加HTTPS的實(shí)現(xiàn)代碼示例

熱門標(biāo)簽:澳門防封電銷卡 烏魯木齊人工電銷機(jī)器人系統(tǒng) 廣東語音外呼系統(tǒng)供應(yīng)商 長沙ai機(jī)器人電銷 地圖標(biāo)注測試 智能電銷機(jī)器人營銷 濮陽自動外呼系統(tǒng)代理 賺地圖標(biāo)注的錢犯法嗎 福州鐵通自動外呼系統(tǒng)

簡介

現(xiàn)在的網(wǎng)站沒有 HTTPS 都不好意思見人了.

超文本傳輸安全協(xié)議(英語:HyperText Transfer Protocol Secure,縮寫:HTTPS;常稱為 HTTP over TLS、HTTP over SSL 或 HTTP Secure)是一種通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行安全通信的傳輸協(xié)議。HTTPS 經(jīng)由 HTTP 進(jìn)行通信,但利用 SSL/TLS 來加密數(shù)據(jù)包。HTTPS 開發(fā)的主要目的,是提供對網(wǎng)站服務(wù)器的身份認(rèn)證,保護(hù)交換數(shù)據(jù)的隱私與完整性。這個(gè)協(xié)議由網(wǎng)景公司(Netscape)在 1994 年首次提出,隨后擴(kuò)展到互聯(lián)網(wǎng)上。

HTTPS 的信任基于預(yù)先安裝在操作系統(tǒng)中的證書頒發(fā)機(jī)構(gòu)(CA)。因此,到一個(gè)網(wǎng)站的 HTTPS 連接僅在這些情況下可被信任:

  • 瀏覽器正確地實(shí)現(xiàn)了 HTTPS 且操作系統(tǒng)中安裝了正確且受信任的證書頒發(fā)機(jī)構(gòu);
  • 證書頒發(fā)機(jī)構(gòu)僅信任合法的網(wǎng)站;
  • 被訪問的網(wǎng)站提供了一個(gè)有效的證書,也就是說它是一個(gè)由操作系統(tǒng)信任的證書頒發(fā)機(jī)構(gòu)簽發(fā)的(大部分瀏覽器會對無效的證書發(fā)出警告);
  • 該證書正確地驗(yàn)證了被訪問的網(wǎng)站(例如,訪問https://example.com時(shí)收到了簽發(fā)給example.com而不是其它域名的證書);
  • 此協(xié)議的加密層(SSL/TLS)能夠有效地提供認(rèn)證和高強(qiáng)度的加密。

主要目的在于:

  • 安全傳輸數(shù)據(jù)
  • 防止中間人攻擊和竊聽
  • 驗(yàn)證服務(wù)器的可信度

實(shí)踐

在 Go 中使用 HTTPS 也很簡單, 接口如下:

func (srv *Server) ListenAndServe() error
func (srv *Server) ListenAndServeTLS(certFile, keyFile string) error

對比一下就知道了, 只需要兩個(gè)參數(shù)就可以實(shí)現(xiàn) HTTPS 了.

這兩個(gè)參數(shù)分別是證書文件的路徑和私鑰文件的路徑.
通常要獲取這兩個(gè)文件需要從證書頒發(fā)機(jī)構(gòu)獲取.
雖然有免費(fèi)的, 但還是比較麻煩, 通常還需要域名.

為了簡單起見, 這里使用自簽名證書, 當(dāng)然, 這樣的證書是不會被瀏覽器信任的.

生成證書和私鑰

如果是 window 系統(tǒng), 可以在 git bash 中運(yùn)行.
MSYS_NO_PATHCONV=1 是專為 git bash 設(shè)置的環(huán)境變量, 沒有的話會報(bào)錯.

MSYS_NO_PATHCONV=1 openssl req -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

PowerShell 版本, 需要指定配置路徑 -config, 默認(rèn)應(yīng)該是 "C:\Program Files\Git\usr\ssl\openssl.cnf".

openssl req -config "C:\Program Files\Git\usr\ssl\openssl.cnf" -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

Linux 下就可以直接運(yùn)行吧.

openssl req -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

這個(gè)命令會在當(dāng)前目錄生成 server.crt 證書文件和 server.key 私鑰文件, 都復(fù)制到項(xiàng)目的 conf 目錄下.

修改配置文件

在配置文件 conf/config.yaml 中添加 HTTPS 相關(guān)的參數(shù).

tls:
 addr: :443 # HTTPS 綁定端口
 cert: conf/server.crt # 自簽發(fā)的數(shù)字證書
 key: conf/server.key # 私鑰文件

HTTPS 的默認(rèn)端口就是 443, 這里也配置成 443, 就可以在 URL 中省略端口號了.

修改啟動函數(shù)

一開始, 啟動函數(shù)是在 goroutine 中啟動 HTTP 服務(wù)器,
這里增加一個(gè) goroutine 來啟動 HTTPS 服務(wù)器.

// 啟動 https 服務(wù)
cert := viper.GetString("tls.cert")
key := viper.GetString("tls.key")
addrTLS := viper.GetString("tls.addr")
if cert != ""  key != "" {
 go func() {
  // 等待 http 服務(wù)正常啟動
  -wait
  logrus.Infof("啟動服務(wù)器在 https address: %s", addrTLS)
  srv.Addr = addrTLS
  if err := srv.ListenAndServeTLS(cert, key); err != nil  err != http.ErrServerClosed {
   logrus.Fatalf("listen on https: %s\n", err)
  }
 }()
}

啟動之后, 就可以通過 https://127.0.0.1/v1/check/cpu 驗(yàn)證一下了,

瀏覽器中打開肯定是會顯示不安全的, 因?yàn)樽C書無法通過驗(yàn)證.

總結(jié)

HTTPS 是一種趨勢, 也是未來. API 接口為了安全性, 一般都是需要上 HTTPS 的.

而且在 Go 中使用 HTTPS 也挺簡單的, 換個(gè) TLS 結(jié)尾的函數(shù)就行了.
也可以只使用 HTTPS, 禁止 HTTP 對外服務(wù),
修改 HTTP 的配置參數(shù) addr 為 localhost:port 就行.

當(dāng)前部分的代碼

作為版本v0.10.0

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 詳解Golang實(shí)現(xiàn)http重定向https的方式
  • golang的httpserver優(yōu)雅重啟方法詳解

標(biāo)簽:調(diào)研邀請 太原 廣西 慶陽 阿克蘇 貴陽 西雙版納 德州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用Go添加HTTPS的實(shí)現(xiàn)代碼示例》,本文關(guān)鍵詞  使用,添加,HTTPS,的,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用Go添加HTTPS的實(shí)現(xiàn)代碼示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用Go添加HTTPS的實(shí)現(xiàn)代碼示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美日韩国产色站一区二区三区| 一区二区三区在线影院| 欧日韩精品视频| 97久久超碰国产精品电影| 激情久久五月天| 蜜桃视频一区二区| 久久成人久久爱| 久久精品理论片| 激情五月婷婷综合| 韩国精品在线观看| 国产精品91一区二区| 懂色av一区二区三区免费观看| 国产福利一区在线观看| 国产伦精一区二区三区| 国产一二三精品| 成人污视频在线观看| 91丨porny丨国产| 欧美日韩一区二区三区四区五区| 精品视频123区在线观看| 欧美在线观看视频一区二区三区| 欧美日韩国产一级| 久久久国产午夜精品| 一区视频在线播放| 午夜久久久影院| 国产一区二区三区免费播放 | 久久网站最新地址| 中文字幕高清不卡| 亚洲国产日韩a在线播放| 久久99精品久久久久久| 粉嫩av一区二区三区在线播放| 99久精品国产| 欧美videofree性高清杂交| 欧美精品一区二区不卡| 亚洲精品日韩综合观看成人91| 日韩黄色片在线观看| 国产乱码字幕精品高清av| 91网上在线视频| 欧美精品九九99久久| 国产午夜精品福利| 日日夜夜一区二区| 成人美女在线视频| 日韩三级在线观看| 亚洲黄色小视频| 国产成人精品亚洲日本在线桃色| 欧美性xxxxxxxx| 国产亚洲精品资源在线26u| 亚洲电影在线免费观看| 粉嫩av亚洲一区二区图片| 在线播放一区二区三区| 国产精品久久福利| 韩国毛片一区二区三区| 欧美精三区欧美精三区| 国产精品久久毛片a| 激情综合网最新| 91 com成人网| 一区二区理论电影在线观看| 国产乱码精品一区二区三区av | 色老汉一区二区三区| 亚洲精品在线观| 三级久久三级久久久| 91免费国产在线| 国产农村妇女毛片精品久久麻豆 | 欧美videos大乳护士334| 亚洲午夜精品在线| 色婷婷av久久久久久久| 国产精品初高中害羞小美女文| 美日韩一区二区三区| 欧美日韩视频在线第一区 | 国产精品456| 精品国产乱码久久久久久老虎| 视频一区二区三区入口| 欧美日韩视频在线一区二区| 一区二区高清视频在线观看| 99re成人精品视频| 亚洲三级视频在线观看| 色综合天天综合网天天看片| 国产精品麻豆网站| 97超碰欧美中文字幕| 中文字幕在线不卡| av电影一区二区| 亚洲婷婷在线视频| 色偷偷成人一区二区三区91 | 亚洲一区二区三区影院| 色婷婷亚洲综合| 亚洲国产精品久久久男人的天堂 | 成人h版在线观看| 欧美国产精品久久| 99视频一区二区| 亚洲高清免费视频| 成人动漫在线一区| 国产丝袜欧美中文另类| 成人手机在线视频| 亚洲免费在线看| 欧美伦理电影网| 久久成人综合网| 国产精品美女久久久久久久久| caoporm超碰国产精品| 亚洲女与黑人做爰| 91精品在线麻豆| 久久国产精品露脸对白| 中文字幕一区免费在线观看| 91色|porny| 青椒成人免费视频| 国产精品午夜电影| 色八戒一区二区三区| 图片区小说区国产精品视频| 日韩欧美一区电影| 91在线视频免费观看| 天天综合日日夜夜精品| 久久久99精品免费观看| 色综合色狠狠天天综合色| 五月激情综合色| 中文字幕二三区不卡| 欧美日本韩国一区| 国产精品2024| 免费一级片91| 亚洲国产精品ⅴa在线观看| 欧美日韩成人在线| 高清不卡在线观看| 轻轻草成人在线| 亚洲欧美成人一区二区三区| 精品国产百合女同互慰| 91丝袜国产在线播放| 精彩视频一区二区| 一区二区三区四区精品在线视频| 欧美zozozo| 欧美日韩精品欧美日韩精品| 国产aⅴ综合色| 免费成人在线观看视频| 一区二区三区日本| 国产精品视频第一区| 欧美一级久久久久久久大片| 一本色道综合亚洲| 国产99精品视频| 久草这里只有精品视频| 五月综合激情日本mⅴ| 成人免费小视频| 国产精品天干天干在观线| 2020国产精品自拍| 91精品国产入口| 精品视频免费看| 欧美三级中文字幕| 91黄色小视频| 91热门视频在线观看| 成人综合在线网站| 韩国三级在线一区| 日韩主播视频在线| 亚洲一区视频在线观看视频| 中文字幕欧美一区| 中文字幕一区在线| 亚洲欧美日韩国产手机在线| 国产精品久久久久一区二区三区共| 精品av综合导航| 精品日韩在线一区| 精品国产乱码久久久久久久久| 91精选在线观看| 日韩午夜在线影院| 日韩欧美国产wwwww| 精品国产免费一区二区三区香蕉| 日韩精品在线一区| 精品美女一区二区| 国产日韩欧美精品电影三级在线| 精品成人a区在线观看| 欧美一区二区三区男人的天堂| 欧美一区二区精品久久911| 欧美亚洲国产一区二区三区va| 91黄视频在线观看| 欧美人动与zoxxxx乱| 日韩精品中午字幕| 91精品午夜视频| 精品久久久久久久人人人人传媒| 精品福利一区二区三区| 国产亚洲欧美日韩在线一区| 国产欧美精品区一区二区三区 | 777奇米四色成人影色区| 欧美日本韩国一区| 日韩精品综合一本久道在线视频| 2024国产精品| 亚洲欧美激情插 | 成人毛片老司机大片| 91麻豆国产香蕉久久精品| 欧美自拍偷拍一区| 日韩一级视频免费观看在线| 久久亚洲综合色| 亚洲欧美另类久久久精品2019| 午夜在线成人av| 成人一区二区三区视频在线观看| 日本韩国欧美三级| 日韩美女主播在线视频一区二区三区| 2020国产精品自拍| 亚洲美女偷拍久久| 国产在线视频一区二区| 91丝袜国产在线播放| 日韩欧美www| 亚洲精品欧美综合四区| 乱一区二区av| 欧美综合亚洲图片综合区| 26uuu欧美日本| 天天综合网天天综合色| 97久久久精品综合88久久|