溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux?apache怎么實現(xiàn)https的配置

發(fā)布時間:2022-10-17 10:27:50 來源:億速云 閱讀:111 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了Linux apache怎么實現(xiàn)https的配置的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Linux apache怎么實現(xiàn)https的配置文章都會有所收獲,下面我們一起來看看吧。

http協(xié)議:

  應(yīng)用層協(xié)議,傳輸層使用TCP協(xié)議,默認使用80端口。http協(xié)議主要是用來是實現(xiàn)萬維網(wǎng)站點資源的訪問。

ssl(安全套接層)協(xié)議:

  全稱為Secure Sockets Layer。工作與傳輸層和應(yīng)用層之間,實現(xiàn)對應(yīng)用層協(xié)議的網(wǎng)絡(luò)連接進行加密。

https協(xié)議:

  http協(xié)議+ssl協(xié)議。默認使用tcp的443端口。

Linux?apache怎么實現(xiàn)https的配置

https協(xié)議的工作過程:

Linux?apache怎么實現(xiàn)https的配置

  • 客戶端發(fā)起HTTPS請求
      用戶在瀏覽器里輸入一個https網(wǎng)址,然后連接到服務(wù)器的443端口

  • 服務(wù)端的配置
      采用HTTPS協(xié)議的服務(wù)器必須要有一套數(shù)字證書,可以自己制作,也可以向組織申請。區(qū)別就是自己頒發(fā)的證書需要客戶端驗證通過,才可以繼續(xù)訪問,而使用受信任的公司申請的證書則不會彈出提示頁面。這套證書其實就是一對公鑰和私鑰

  • 傳送服務(wù)器的證書給客戶端
      證書里其實就是公鑰,并且還包含了很多信息,如證書的頒發(fā)機構(gòu),過期時間等等

  • 客戶端解析驗證服務(wù)器證書
      這部分工作是由客戶端的TLS來完成的,首先會驗證公鑰是否有效,比如:頒發(fā)機構(gòu),過期時間等等,如果發(fā)現(xiàn)異常,則會彈出一個警告框,提示證書存在問題。如果證書沒有問題,那么就生成一個隨機值。然后用證書中公鑰對該隨機值進行非對稱加密

  • 客戶端將加密信息傳送服務(wù)器
      這部分傳送的是用證書加密后的隨機值,目的就是讓服務(wù)端得到這個隨機值,以后客戶端和服務(wù)端的通信就可以通過這個隨機值來進行加密解密了

  • 服務(wù)端解密信息
      服務(wù)端將客戶端發(fā)送過來的加密信息用服務(wù)器私鑰解密后,得到了客戶端傳過來的隨機值

  • 服務(wù)器加密信息并發(fā)送信息
      服務(wù)器將數(shù)據(jù)利用隨機值進行對稱加密,再發(fā)送給客戶端

  • 客戶端接收并解密信息
      客戶端用之前生成的隨機值解密服務(wù)段傳過來的數(shù)據(jù),于是獲取了解密后的內(nèi)容

apache實現(xiàn)https的流程:

  apache是一個模塊化的軟件,很多功能由一個個模塊來提供的。加載對應(yīng)的模塊就能實現(xiàn)對應(yīng)的功能。

流程:

1.為apache服務(wù)器申請證書

2.配置apache的https功能

3.驗證https

apache申請證書的方式

1.搭建私有CA實現(xiàn)證書的頒發(fā)

2.使用CentOS7快速生成一個自簽名證書

[root@ansible certs]# pwd
/etc/pki/tls/certs

[root@ansible certs]# ls
ca-bundle.crt  ca-bundle.trust.crt   make-dummy-cert  Makefile  renew-dummy-cert

#取消makefile文件中對私鑰文件的加密
[root@ansible certs]# vim Makefile
%.key:
        umask 77 ; \
        #/usr/bin/openssl genrsa -aes128 $(KEYLEN) > $@
        /usr/bin/openssl genrsa  $(KEYLEN) > $@

#生成證書
[root@ansible certs]# make Makefile httpds.crt

3.通過阿里云等網(wǎng)站下載免費的證書(需要有域名)

配置apache的https功能

安裝mod_ssl軟件包,安裝mod_ssl軟件包后會自動生成apache的ssl配置文件和模塊。

[root@CentOS8 ~]# rpm -ql mod_ssl
/etc/httpd/conf.d/ssl.conf  #ssl模塊的配置文件
/etc/httpd/conf.modules.d/00-ssl.conf #加載ssl模塊
/usr/lib/.build-id
/usr/lib/.build-id/e6/046e586d8d19fb92e3f8484a62203e841c3e2a
/usr/lib/systemd/system/httpd-init.service
/usr/lib/systemd/system/httpd.socket.d/10-listen443.conf
/usr/lib64/httpd/modules/mod_ssl.so  #模塊文件
/usr/libexec/httpd-ssl-gencerts
/usr/libexec/httpd-ssl-pass-dialog
/usr/share/man/man8/httpd-init.service.8.gz
/var/cache/httpd/ssl

修改配置文件:

[root@CentOS8 ~]# vim /etc/httpd/conf.d/ssl.conf
  SSLCertificateFile /data/apache/apache1.crt  #apache的證書文件
  SSLCertificateKeyFile /data/apache/apache1.key  #apache的私鑰文件
  SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt #apache的證書鏈文件
  
  證書鏈文件:不指定證書鏈文件,它就不知道這個證書是誰頒發(fā)的。證書鏈就是上級CA的證書

驗證:

  設(shè)置windows的hosts文件用于驗證

windows的hosts文件位置:C:\Windows\System32\drivers\etc

格式:ip地址 名字

Linux?apache怎么實現(xiàn)https的配置

關(guān)于“Linux apache怎么實現(xiàn)https的配置”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Linux apache怎么實現(xiàn)https的配置”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI