linux中的http服務淺談(2)

網頁加密與自動重定向的實現:

當我們在訪問一些網頁的時候,會發現網頁前面加了一把鎖,這是網頁服務端爲了客戶端的信息安全所做的一種加密,

提升了訪問網頁的用戶的信息安全,比如下圖,是在訪問騰訊的QQ郵箱時出現的頁面,重點是域名前的那把鎖,而且

我們也發現,域名自動變爲https://了:

在linux中,我們也可以通過一些軟件和模塊來實現對我們的網頁進行加密保護,接下來簡單介紹一下,如何將域名加密,以及實現

網頁的自動重定向

1.加密

首先,我們需要下載安裝加密模塊:yum install mod_ssl

安裝晚以後,在/etc/httpd/conf.d/目錄下會自動生成一個ssl.conf文件,如圖所示:

systemctl reload httpd 重啓httpd服務

netstat -antlpr | grep httpd 可以看到多了一個443端口:

然後再訪問ip172.25.254.121   如圖所示:

然後點擊提示頁面最下面的 I Understand the Risks ,繼續點擊下面的Add Exception  :

彈出下圖提示頁面,先點擊 Get Certificate 下載,然後點擊左下角的Confirm Security Exception :

纔可進入頁面,看到之前的內容:


雖然,我們實現了加密模式和https,但是加密的信息和認證都是系統默認的,那我們如何自己製作屬於自己的認證和密鑰呢:

下載能夠生成認證文件和key的軟件: yum install crypto-utils.x86_64  

然後直接輸入命令:genkey www.test.com 進入生成認證文件和密鑰的過程,如圖所示:

點擊Next 進入下一步:

系統在加載:

加載完成後會自動跳轉到選擇密碼位數列表,可自定義選擇,然後點擊Next進行下一步:

需要重新打開一個shell,然後自定義鍵入字符,輸入字符越快,祕密生成越快,當然和你上一步選擇密碼位數正相關:

這一步選擇NO:

選擇Next:

然後輸入認證信息:

整個生成認證證書和密鑰的過程就結束了,然後系統會自動跳轉到shell界面,並把證書和密鑰的路徑顯示出來,

證書路徑:

密鑰路徑:

然後將認證證書和密鑰路徑編輯到文件 /etc/httpd/conf.d/ssl.conf中:


然後重啓服務: systemctl restart httpd

再訪問172.25.254.121,可在網頁中找到自己生成的認證證書和密鑰信息:



2.網頁重定向:在輸入一個域名時自動跳轉到http://模式

先看看之前建立的虛擬主機,在訪問時的狀態,可以和新建立的虛擬主機做一個對比:

沒有鎖的圖標,也沒有自動加上https://

mkdir /var/www/test/study.test.com   先建立一個虛擬主機的測試域名study.test.com

vim /var/www/test/study.test.com/index.html  新建並編輯訪問域名時顯示的內容,其他和本機ip同網段的主機在訪問時

將看到 study !!! 的字符(<h1></h1>爲html語句)

然後在/etc/httpd/conf.d/目錄下新建並編輯文件: vim study.conf  將路徑和授權信息都編輯到文件中,並將認證證書

和密鑰路徑編輯到文件中,文件的意思爲在訪問80默認端口時自動跳轉到443端口,既可實現從http自動跳轉到https://

systemctl restart httpd 重啓httpd服務

然後在ip和本機同網段的主機上設置本地解析,來進行測試,在/etc/hosts文件中將study.test.com編輯進去:

然後訪問 172.25.254.121(本機),可看到自動跳轉到https://模式:

顯示之前編輯的index.conf文件中的內容:



讓http執行簡單的php語句和cgi語句:

1.php語句

在http默認發佈目錄/var/www/html/下新建並用簡單的php語句編寫文件: vim index.php 


然後編輯http主配置文件/etc/httpd/conf/httpd.conf   index.php寫在默認發佈文件index.html前面:


然後重啓httpd服務: systemctl restart httpd

訪問172.25.254.121(本機),如圖所示即配置完成:


2.cgi語句

mkdir /var/www/html/cgi  新建目錄cgi

vim /var/www/html/cgi/index.cgi 新建並編輯cgi語句文件,意爲在訪問172.25.254.121/cgi/index.cgi時會顯示即時

時間:

chmod + x index.cgi 給文件一個執行權限

然後在/etc/httpd/conf.d/目錄下的 default.conf默認文件中加如cgi語句的信息:

然後查看/var/www/html/cgi/目錄的安全上下文,並更改:


然後重啓服務: systemctl restart httpd

訪問172.25.254.121/cgi/index.cgi時的效果如圖所示:



發佈了51 篇原創文章 · 獲贊 3 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章