成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何搭建一個HTTPS服務端

開發 前端
關于 HTTPS 的基本原理大家都已經不再陌生,今天和大家說說如何搭建一個支持 HTTPS 的服務端。

關于 HTTPS 的基本原理大家都已經不再陌生,今天和大家說說如何搭建一個支持 HTTPS 的服務端。

服務端的 HTTPS

HTTPS 已經幾乎成為了當前互聯網推薦的通信方式,它能最大化保證信息傳輸的安全,從去年蘋果的強制 HTTPS ,到如今各大網站都支持了 HTTPS。它會越來越普及。

之前寫過幾篇關于 HTTPS 原理的文章,有用戶留言希望了解一些如何在服務端搭建 HTTPS 服務的內容,這次就和大家聊聊這個話題。

SSL 證書

搭建一個 HTTPS 站點,第一步要做的就是申請 SSL 證書, 而且要在標準的證書頒發機構來申請。 當然,從技術上來說,你可以使用自簽名證書,但自簽名證書會被所有的瀏覽器視為不安全的證書,并且會給用戶報錯,就像這樣:

如何搭建一個HTTPS服務端

所以,還是需要申請一個正規的證書的。 可申請證書的頒發機構有很多,比如 GoDaddy,Comodo,Verisign 等等。價格從一年幾美金到幾十美金不等。

我們就以 GoDaddy 為例,帶大家了解一下流程。 在 GoDaddy 的首頁有一個 Web Security 標簽,點擊這個標簽后可以找到 SSL Certificates 選項:

如何搭建一個HTTPS服務端

點擊進去, 就可以看到可選的幾個證書形式,有單域名的,還有允許多個二級域名的等:

如何搭建一個HTTPS服務端

避免廣告嫌疑,下面的價格信息略去了~,這里只給大家介紹流程,幫助大家了解。 證書服務商大家可以自行選擇。

接下來,證書頒發機構會讓你填寫一個叫做 CSR 的東西, 如果大家搞 iOS 開發對這個應該不陌生,申請蘋果開發者證書的時候大家也做過類似的事情。

如何搭建一個HTTPS服務端

CSR 全稱 Certificate Signing request。 顧名思義就是用于申請證書必須的一些信息,在 Lunix 系統中,它可以通過命令生成(大多數的服務端應該都是基于 Linux 的,所以我們用它來作為例子):

  1. $ openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr 

openssl 命令,如果你的系統沒有安裝的話,可以通過包管理先安裝。 需要把這里面的 yourdomain.key 和 yourdomain.csr 替換成你自己的名稱,可以是域名,也可以是其他標識。

生成成功后,可以用 cat 命令輸出 yourdomain.csr 中的內容:

  1. $ cat yourdomain.csr 

會在命令行輸出 CSR 的內容,把這段內容復制到前面截圖中的文本框中,然后點擊生成就好了。

注意,這里的 yourdomain.key 文件你要保管好。 這是你證書的私鑰,后面配置 HTTPS 的時候需要用到它。 并且它不能重新生成,而且不能泄露出去。原因可以參考我前面關于 HTTPS 原理的相關文章。

與此同時,證書頒發機構在你提交 CSR 之后,會給你生成證書文件, Godaddy 會生成兩個證書,一個是你站點的證書,一個是根證書。 把它們下載到你的服務器上面。

Apache 服務端配置

證書準備好之后,我們要對服務端程序進行配置,讓它支持 HTTPS。這里我給大家以 CentOS 7 操作系統, Apache 2.x 服務端程序為例。

Apache 的 HTTPS 配置文件一般在 /etc/httpd/conf.d/ssl.conf 這個位置。 用 vim 編輯器打開它, 然后加入這樣一個節點:

 

  1. <VirtualHost *:443> 
  2.      SSLEngine On 
  3.      SSLCertificateFile /root/yoursite.crt 
  4.      SSLCertificateKeyFile /root/yoursite.key 
  5.      SSLCACertificateFile /root/rootcert.crt 
  6.  
  7.      ServerAdmin admin@yoursite.com 
  8.      ServerName yoursite.com 
  9.      DocumentRoot /var/www/html/ 
  10. </VirtualHost> 

這里用到了我們前面準備的證書和秘鑰。 SSLCertificateFile 是你站點的證書, SSLCACertificateFile 是根證書, SSLCertificateKeyFile 是只保存在你服務器的私鑰。

有了這些信息后,Apache 就可以正確的處理 HTTPS 請求了。 在這之前我們還需要在做最后一步操作, 編輯 /etc/httpd/conf/httpd.conf 文件, 這個是 Apache 的主配置文件, 加入這樣一行:

  1. Listen 443 

這個是讓你的服務端同時監聽 443 端口。 因為 HTTPS 的默認端口是 443, 所以這個設置是必須要有的。

一切都就緒后,重啟你的服務器:

  1. systemctl restart httpd 

然后再用瀏覽器輸入 https://yoursite.com 訪問你的站點時,就應該可以看到 HTTPS 驗證成功的小鎖頭了。

防火墻設置

如果配置都就緒,你重啟了之后,依然不能正常訪問,有可能是你的防火墻把 443 端口攔截了,把它打開:

 

  1. iptables -A INPUT -p tcp -m tcp --sport 443 -j ACCEPT 
  2. iptables -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT 

結束

目前成熟的 Web 服務程序都有對 HTTPS 很好的支持,只需要經過簡單的配置,即可完成 HTTPS 服務器的搭建。 而 HTTPS 之所以相對性能消耗更大,是因為每次數據傳輸都需要進行加密和解密的操作。 作為 APP 開發者們,可能對服務端的技術了解的并沒有那么深,可以把它作為一個備忘錄,日后用到的時候再來看看。

責任編輯:未麗燕 來源: Swift Cafe
相關推薦

2023-09-11 10:53:32

2021-04-30 09:32:38

服務端渲染SSR

2024-04-01 13:18:15

App架構服務端

2024-01-02 13:58:04

GoREST API語言

2022-05-22 13:55:30

Go 語言

2016-09-23 21:15:49

阿里云服務器搭建

2010-05-28 10:10:49

2022-06-14 15:07:04

IPC客戶端服務端

2024-01-02 12:17:44

Go傳統遠程

2020-11-11 09:49:12

計算架構

2018-12-18 12:12:51

Python服務器Django

2016-03-18 09:04:42

swift服務端

2023-10-30 18:55:43

FTP服務器開源

2019-07-25 11:20:34

閑魚服務端定位

2020-11-03 14:10:29

Vue服務端渲染前端

2021-01-20 07:37:39

Exceptionle服務端部署

2024-03-06 14:58:52

客戶端微服務架構

2012-03-02 10:38:33

MySQL

2013-03-25 10:08:44

PHPWeb

2019-08-21 17:41:29

操作系統軟件設計
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 狠狠综合久久av一区二区老牛 | 日韩中文字幕在线观看 | 国产一二三视频在线观看 | 国产做爰| 国产亚洲精品久久久久久牛牛 | 久久久久久久久毛片 | 国产精品特级片 | 99精品免费 | 涩色视频在线观看 | 99热视| 欧美一区二区在线观看 | 国产在线观看免费 | 久操伊人 | 在线免费观看视频你懂的 | 欧美激情国产精品 | 亚洲精品久久久久久久久久久久久 | 久久免费精品视频 | 精品视频一区二区 | 欧洲成人免费视频 | 91欧美精品 | 午夜一区二区三区在线观看 | 免费一区| 蜜桃视频成人 | 国产不卡在线 | 在线观看中文字幕 | av免费网站在线观看 | 日韩一区二区三区四区五区六区 | 麻豆成人在线视频 | 亚洲视频三区 | 日本成年免费网站 | 伊人狠狠干 | 成人在线视频网 | 中文字幕四虎 | 久久99精品久久久久久噜噜 | 久久蜜桃资源一区二区老牛 | 91精品国产91久久综合桃花 | 国产69精品久久久久777 | 99精品欧美一区二区蜜桃免费 | 亚洲精品免费视频 | 伊人激情综合网 | 福利片在线 |