Linux?apache實(shí)現(xiàn)https的配置方法
http協(xié)議:
應(yīng)用層協(xié)議,傳輸層使用TCP協(xié)議,默認(rèn)使用80端口。http協(xié)議主要是用來是實(shí)現(xiàn)萬維網(wǎng)站點(diǎn)資源的訪問。
ssl(安全套接層)協(xié)議:
全稱為Secure Sockets Layer。工作與傳輸層和應(yīng)用層之間,實(shí)現(xiàn)對應(yīng)用層協(xié)議的網(wǎng)絡(luò)連接進(jìn)行加密。
https協(xié)議:
http協(xié)議+ssl協(xié)議。默認(rèn)使用tcp的443端口。
https協(xié)議的工作過程:
客戶端發(fā)起HTTPS請求
用戶在瀏覽器里輸入一個(gè)https網(wǎng)址,然后連接到服務(wù)器的443端口服務(wù)端的配置
采用HTTPS協(xié)議的服務(wù)器必須要有一套數(shù)字證書,可以自己制作,也可以向組織申請。區(qū)別就是自己頒發(fā)的證書需要客戶端驗(yàn)證通過,才可以繼續(xù)訪問,而使用受信任的公司申請的證書則不會(huì)彈出提示頁面。這套證書其實(shí)就是一對公鑰和私鑰傳送服務(wù)器的證書給客戶端
證書里其實(shí)就是公鑰,并且還包含了很多信息,如證書的頒發(fā)機(jī)構(gòu),過期時(shí)間等等客戶端解析驗(yàn)證服務(wù)器證書
這部分工作是由客戶端的TLS來完成的,首先會(huì)驗(yàn)證公鑰是否有效,比如:頒發(fā)機(jī)構(gòu),過期時(shí)間等等,如果發(fā)現(xiàn)異常,則會(huì)彈出一個(gè)警告框,提示證書存在問題。如果證書沒有問題,那么就生成一個(gè)隨機(jī)值。然后用證書中公鑰對該隨機(jī)值進(jìn)行非對稱加密客戶端將加密信息傳送服務(wù)器
這部分傳送的是用證書加密后的隨機(jī)值,目的就是讓服務(wù)端得到這個(gè)隨機(jī)值,以后客戶端和服務(wù)端的通信就可以通過這個(gè)隨機(jī)值來進(jìn)行加密解密了服務(wù)端解密信息
服務(wù)端將客戶端發(fā)送過來的加密信息用服務(wù)器私鑰解密后,得到了客戶端傳過來的隨機(jī)值服務(wù)器加密信息并發(fā)送信息
服務(wù)器將數(shù)據(jù)利用隨機(jī)值進(jìn)行對稱加密,再發(fā)送給客戶端客戶端接收并解密信息
客戶端用之前生成的隨機(jī)值解密服務(wù)段傳過來的數(shù)據(jù),于是獲取了解密后的內(nèi)容
apache實(shí)現(xiàn)https的流程:
apache是一個(gè)模塊化的軟件,很多功能由一個(gè)個(gè)模塊來提供的。加載對應(yīng)的模塊就能實(shí)現(xiàn)對應(yīng)的功能。
流程:
1.為apache服務(wù)器申請證書
2.配置apache的https功能
3.驗(yàn)證https
apache申請證書的方式
1.搭建私有CA實(shí)現(xiàn)證書的頒發(fā)
http://www.dbjr.com.cn/article/265122.htm
2.使用CentOS7快速生成一個(gè)自簽名證書
[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)站下載免費(fèi)的證書(需要有域名)
配置apache的https功能
安裝mod_ssl軟件包,安裝mod_ssl軟件包后會(huì)自動(dòng)生成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的證書鏈文件 證書鏈文件:不指定證書鏈文件,它就不知道這個(gè)證書是誰頒發(fā)的。證書鏈就是上級CA的證書
驗(yàn)證:
設(shè)置windows的hosts文件用于驗(yàn)證
windows的hosts文件位置:C:\Windows\System32\drivers\etc 格式:ip地址 名字
到此這篇關(guān)于Linux apache實(shí)現(xiàn)https的配置方法的文章就介紹到這了,更多相關(guān)Linux apache配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
21個(gè)常用的apache .htaccess文件配置技巧分享
這篇文章主要介紹了21個(gè)常用的apache .htaccess文件配置技巧分享,涵蓋了網(wǎng)站中最常用的一些功能需求解決辦法,需要的朋友可以參考下2014-07-07Linux服務(wù)器網(wǎng)卡流量查看方法 shell和Python各一枚
這篇文章主要為大家詳細(xì)介紹了Linux服務(wù)器網(wǎng)卡流量查看方法,shell和Python各一例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10linux之如何查看進(jìn)程占用網(wǎng)速和流量使用情況
這篇文章主要介紹了linux之如何查看進(jìn)程占用網(wǎng)速和流量使用情況,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04詳解Centos/Linux下調(diào)整分區(qū)大小(以home和根分區(qū)為例)
本篇文章主要介紹了Centos/Linux下調(diào)整分區(qū)大?。ㄒ詇ome和根分區(qū)為例),具有一定的參加價(jià)值,有需要的同學(xué)可以了解一下2017-06-06在linux系統(tǒng)下安裝兩個(gè)nginx的簡單方法
下面小編就為大家?guī)硪黄趌inux系統(tǒng)下安裝兩個(gè)nginx的簡單方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12在Linux中使用tcpdump命令捕獲與分析數(shù)據(jù)包詳解
tcpdump 是linux系統(tǒng)中提供的一個(gè)命令行工具,可以將網(wǎng)絡(luò)中傳送的數(shù)據(jù)包完全截獲下來,提供網(wǎng)絡(luò)數(shù)據(jù)分析。下面這篇文章主要給大家介紹了關(guān)于如何在Linux中使用tcpdump命令捕獲與分析數(shù)據(jù)包的相關(guān)資料,需要的朋友可以參考下2018-09-09