国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
安全連接SSL
安全連接方式SSL
通常的連接方式中,通信是以非加密的形式在網(wǎng)絡(luò)上傳播的,這就有可能被非法竊聽到,尤其是用于認(rèn)證的口令信息。為了避免這個安全漏洞,就必須對傳輸過程進(jìn)行加密。對HTTP傳輸進(jìn)行加密的協(xié)議為HTTPS,它是通過SSL(Secure socket layer)進(jìn)行HTTP傳輸?shù)膮f(xié)議,不但通過公用密鑰的算法進(jìn)行加密保證傳輸?shù)陌踩?,而且還可以通過獲得認(rèn)證證書CA,保證客戶連接的服務(wù)器沒有被假冒。
使用公用密鑰的方式可以保證數(shù)據(jù)傳輸沒有問題,但如果瀏覽器客戶訪問的站點被假冒,這也是一個嚴(yán)重的安全問題。這個問題不屬于加密本身,而是要保證密鑰本身的正確性問題。要保證所獲得的其他站點公用密鑰為其正確的密鑰,而非假冒站點的密鑰,就必須通過一個認(rèn)證機(jī)制,能對站點的密鑰進(jìn)行認(rèn)證。當(dāng)然即使沒有經(jīng)過認(rèn)證,仍然可以保證信息傳輸安全,只是客戶不能確信訪問的服務(wù)器沒有被假冒。如果不是為了提供電子商務(wù)等方面對安全性要求很高的服務(wù),一般不需要如此嚴(yán)格的考慮。
下面我們就分幾節(jié)來談到如何在Apache服務(wù)器上實現(xiàn)SSL。
第一節(jié)SSL
SSL除了可以用在Web服務(wù)器與瀏覽器之間信息交換以外,還可以支持其他我們所熟識的網(wǎng)絡(luò)應(yīng)用。以TCP/IP網(wǎng)絡(luò)層來看,SSL是定位在網(wǎng)絡(luò)層之上的應(yīng)用協(xié)議,如圖:
HTTPFTPSMTP
Secure Socket Layer
TCP層
IP層
任何以TCP/IP層以上的網(wǎng)絡(luò)協(xié)議SSL都可以支持,因此HTTP、FTP、SMTP等等皆是SSL的保護(hù)范圍。SSL協(xié)議一共包含兩個部分:SSL Handshake協(xié)議和SSL Record協(xié)議。前者是負(fù)責(zé)通信前的一些參數(shù)協(xié)商,后者則是定義SSL的內(nèi)部數(shù)據(jù)格式。
SSL Handshake協(xié)議
SSL中Handshake協(xié)議可以說是SSL的前置步驟,就好象初次見面的兩個人回先自我介紹一番再開始談話一樣。通信的餓雙方(商店的服務(wù)器與客戶計算機(jī))先進(jìn)行“溝通”與“協(xié)調(diào)”有關(guān)SSL通信的參數(shù)設(shè)置,其中包括:
※通信中所使用的SSL版本。※信息加密用的算法 ※客戶端的身份驗證要求 ※所使用的公開金鑰算法
這個協(xié)議的餓大致步驟如下:
(1)Client Hello:首先,由客戶端計算機(jī)向服務(wù)器Say Hello,并同時將客戶端計算機(jī)所能支持的安全模塊告訴對方,以便溝通。信息內(nèi)容包括:SSL協(xié)議版本、本次聯(lián)機(jī)的餓識別碼以及加密模塊等。
(2)Server Hello:這時商店端服務(wù)器在收到這個信息后,立即送出包含以下信息的響應(yīng)信息給客戶端: ※服務(wù)器的數(shù)字證書,讓客戶端可以檢查服務(wù)器的身份。
※如果服務(wù)器要求雙方相互認(rèn)證的話,則送出“認(rèn)證請求”的餓信息。要求客戶端也提出識別身份的數(shù)字證書。
※服務(wù)器用來加密的金鑰。
(3)加解密參數(shù):當(dāng)客戶端收到服務(wù)器的信息后,就可根據(jù)要求來響應(yīng),并且也將客戶端的公用金鑰也送給對方,作為后續(xù)信息的加解密之用。到這個階段為止,通信雙方都已經(jīng)達(dá)成了共識,并準(zhǔn)備傳送真正的信息內(nèi)容。
(4)HTTP數(shù)據(jù)流:協(xié)調(diào)的工作已經(jīng)大功告成了!這時雙方就可以HTTP協(xié)議來進(jìn)行數(shù)據(jù)交換了。
SSL Record協(xié)議
顧名思義Record協(xié)議,是在描述SSL信息交換的過程中的記錄格式。SSL協(xié)議是介于應(yīng)用層和網(wǎng)絡(luò)層之間,因此它回接收來自應(yīng)用層的信息,并加以包裝后交由下一層(也就是網(wǎng)絡(luò)層來傳送)。
第二節(jié)Apache上實現(xiàn)SSL
雖然Apache服務(wù)器不支持SSL,但Apache服務(wù)器有兩個可以自由使用的支持SSL的相關(guān)計劃,一個為Apache-SSL,它集成了Apache服務(wù)器和SSL,另一個為Apache+mod_ssl,它是通過可動態(tài)加載的模塊mod_ssl來支持SSL,其中后一個是由前一個分化出的,并由于使用模塊,易用性很好,因此使用范圍更為廣泛。還有一些基于Apache并集成了SSL能力的商業(yè)Web服務(wù)器,然而使用這些商業(yè)Web服務(wù)器主要是北美,這是因為在那里SSL使用的公開密鑰的算法具備專利權(quán),不能用于商業(yè)目的,其他的國家不必考慮這個專利問題,而可以自由使用SSL。
以下是我們安裝說需要的各部分說明
apache_1.3.11.tar.gz (服務(wù)器)
mod_ssl-2.5.0-1.3.11.tar.gz?。⊿SL接口模塊)
openssl-0.9.4.tar.gz?。╯sl安全和算法類庫)
mod_perl-1.21.tar.gz?。╬erl接口模塊)
rsaref20.tar.Z(RSA算法包)
perl5.005_03.tar.gz(perl環(huán)境)
如果你的系統(tǒng)是從頭裝起的話,建議你留出一個叫/chroot的分區(qū)用來運(yùn)行Apache。
至于這個分區(qū)的大小,取決于你自已,一般來說,一個普通的網(wǎng)站有40M也就夠了。但你的系統(tǒng)如果早就運(yùn)行了Apache,你可以另外開辟一個分區(qū),或者選擇不用獨立分區(qū)來安裝,僅僅在根下面開一個目錄。
另外我假定你的系統(tǒng)已經(jīng)通過了一定的安全檢測——在安裝Apache之前(如果有其它漏洞存在的話,你認(rèn)為運(yùn)行在其上的Apache會怎樣,所謂覆巢之下,焉有完卵:),檢測至少要包括(但不僅限于)——移除不安全的SUID程序、升級某些守護(hù)進(jìn)程,去掉不必要的服務(wù)。還假定你是的WEB SERVER是運(yùn)行TCP/IP而且有自己的地址。
一、平臺
以下測試都在下列平臺下通過: 
1、Slackware 4.x distribution using gcc 2.7.2.3 and Perl v5.005_02
2、Solaris 7 on Sparc using gcc v2.8.1 and Perl v5.005_03 
3、Digital UNIX V4.0F distribution using gcc 2.7.2.3 and Perl v5.005_03 
二、獲取所需要的軟件
因為阿帕奇并沒有在她的包里自己SSL,因此我們必須先下載到這些加密網(wǎng)頁所必需的部份:
1、Apache Web Server - http://www.apache.org/dist/
不必多說,我們當(dāng)然需要獲得這個web server,現(xiàn)在的版本是1.3.11,阿帕奇是現(xiàn)在世界
上使用最廣泛的web server。
2、mod_ssl - http://www.modssl.org
這是一個為Apache1.3.x web server提供強(qiáng)力加密的的軟件模塊,它使用的是SSL v2和v3 以及TLS(Transport Layer Security)v1 協(xié)議。該軟件包是在BSD的license下開發(fā)的,在非商業(yè)的情況下,你可以自由地使用它,要判斷該使用哪一個版本的mod_ssl很簡單,它的版本號是-格式的,也就是說,你如果用的是1.3.11
的Apache,那么就該用2.50-1.3.11的mod_ssl。
3、mod_perl - http://perl.apache.org/dist/
Apache1.3.x 的perl接口模塊
4、Open SSL - http://www.openssl.org
這一軟件包提供了SSL v2/v3(Secure Sockets Layer)及TLS v1(Transport Layer Security) 協(xié)議的加密保護(hù)。
5、RSAref - 用搜索引擎查找一下"rsaref20.tar.Z"應(yīng)該就能找到了RSA加密算法的實現(xiàn)軟件包
6、Perl減壓縮、安裝(詳見Perl介紹)
Perl是一種編程語言。它是一種非常流行的編程語言,在文本處理、端口通信、協(xié)調(diào)多個不同應(yīng)用以及完成其他諸多任務(wù)時都受到人們的歡迎。Perl同時也是一種頗有名氣的流行CGI編程語言,不過這只是Perl諸多應(yīng)用中的一種
我們將把這些程序安裝于/usr/local目錄下 
增加功能模塊可以給阿帕奇更強(qiáng)大的功能,如果你需要更多的模塊的話,自己去獲得它并且加載,比如mod_php這一模塊也是現(xiàn)在流行的,可以使阿帕奇提供php腳本支持……
三、軟件包的安裝
在實際安裝前我們要決定我們將把web server安裝在什么環(huán)境下,對于一個對安全有相當(dāng)高要求的人來說,可以將服務(wù)器和軟件安裝于chroot環(huán)境,chroot改變root 目錄并且僅在這一目錄中執(zhí)行程序,這提供了一個內(nèi)建的小環(huán)境,即使入侵者已經(jīng)通過cgi程序或者其它辦法通過80端口獲得了系統(tǒng)的進(jìn)入權(quán)限,它也只能夠在這一受限的環(huán)境中活動,從安全角度考量,這當(dāng)然是最好的,但對系統(tǒng)管理員來說,這樣安裝相對麻煩一些,還必須把一些必要的庫,perl以及相關(guān)工具也搬到chroot中,所以——你自己決定吧,這里我們介紹的是在chroot下安裝。
展開這些軟件包:
#gzip -d -c apache_1.3.11.tar.gz | tar xvf -
#gzip -d -c mod_ssl-2.5.0-1.3.11.tar.gz | tar xvf -
#gzip -d -c openssl-0.9.4.tar.gz | tar xvf -
#gzip -d -c mod_perl-1.21.tar.gz | tar xvf -
展開并且編譯rsaref
#mkdir rsaref
#cd rsaref
#gzip -d -c ../rsaref20.tar.Z | tar xvf -
#tar xvf rsaref.tar
#cp -rp install/unix temp
#cd temp
#make
#mv rsaref.a librsaref.a
#cd ../../
編譯OpenSSL
#cd openssl-0.9.4
#perl util/perlpath.pl /usr/bin/perl (Path to Perl)
#./config -L`pwd`/../rsaref/temp/
#make
#make test
#cd ..
將mod_perl加到Apache的編譯選項里
#cd mod_perl-1.21
#perl Makefile.PL APACHE_PREFIX=/usr/local/apache \
APACHE_SRC=../apache_1.3.11/src \
USE_APACI=1
你會得到下面的提示:
Configure mod_perl with ../apache_1.3.11/src ? [y]
直接按enter就是默認(rèn)的yes
然后Makefile會問你是否建立httpd,可以用n選擇不。
#make
#make install
#cd ..
將mod_ssl加到Apache中
#cd mod_ssl-2.5.0-1.3.11
#./configure --with-apache=../apache_1.3.11 \
--prefix=/usr/local/apache \
--with-ssl=../openssl-0.9.4 \
--with-rsa=../rsaref/temp \
--activate-module=src/modules/perl/libperl.a
#cd ..
編譯Apache:
#cd apache_1.3.11
在編譯以前我們可以再做一件事——編輯包含http server版本號的文件,使想得到它的入侵者摸不著腦袋長哪兒:)
# src/include/httpd.h
尋找下面的行 (approx. 454)并且改變server的名字及版本號——可以隨便用你想改成的東西。
define SERVER_BASEVERSION "Apache/1.3.11"
現(xiàn)在你可以編譯阿帕奇了
#make
現(xiàn)在你可以生成一個CA了(actual certificate).
#make certificate
按照該授權(quán)書的安裝介紹做。
#make install
這將會把阿帕奇裝在/usr/local/apache。
測試web server (還沒裝SSL)是否運(yùn)行正?!?---調(diào)用web server:
/usr/local/apache/bin/apachectl start
當(dāng)WEB服務(wù)器運(yùn)行起來后,你可以用 lynx或者任意什么瀏覽器連接你的80端口,如果能看到apache
的歡迎頁,就OK了。
停止server:
/usr/local/apache/bin/apachectl stop
測試web server (同時起SSL) - 調(diào)用帶SSL的WEB服務(wù)器
/usr/local/apache/bin/apachectl startssl
服務(wù)器運(yùn)行時你用Netscape或者其它支持SSL的瀏覽器來看https://your.ip.here,看到歡迎頁了么?
要停止SERVER:
/usr/local/apache/bin/apachectl stop
四、阿帕奇的配置
現(xiàn)在我們可以來看看阿帕奇的配置文件了——需要記住的是如果你對它做了更改,
在未重新啟動httpd守護(hù)進(jìn)程前,它是不會發(fā)生作用的。好,現(xiàn)在我們可以進(jìn)目錄
/usr/local/apache/conf看看了。
httpd.conf -
這是阿帕奇的主要配置文件,你可以在這里設(shè)定服務(wù)器啟動時的基本環(huán)境,比如服務(wù)
器的啟動方式、端口號、允許的最多連接數(shù)等等,這一文件的注釋非常詳細(xì),要看明
白應(yīng)該沒什么問題。
access.conf -
這一文件是設(shè)定系統(tǒng)中的存取方式和環(huán)境的,但現(xiàn)在已經(jīng)可以在httpd.conf中設(shè)定了,
所以推薦你別動它,放空好了。
srm.conf - 
這家伙主要做的是資源上的設(shè)定,你也可以放空,僅僅設(shè)定httpd.conf中的相關(guān)項。
現(xiàn)在重啟web server來使改動生效:
#/usr/local/apache/bin/apachectl restart
五、將阿帕奇設(shè)定在chroot環(huán)境下
現(xiàn)在我們開始把剛才建立的東西移到chroot環(huán)境下——包括阿帕奇服務(wù)器以及所有需
要的庫文件。當(dāng)然如前面所說的,這部份是可選的,如果你怕麻煩的話就算了,但轉(zhuǎn)
移后可以對你的web server多一個可靠的保護(hù)。
建立/chroot目錄
#mkdir /chroot
建立一些必需的子目錄
#mkdir /chroot/dev
#mkdir /chroot/lib
#mkdir /chroot/etc
#mkdir /chroot/bin
#mkdir /chroot/usr
#mkdir /chroot/usr/local
在我們的chroot建立/dev/null
#mknod -m 666 /chroot/dev/null c 1 3
將阿帕奇拷貝到/chroot目錄中
#cp -rp /usr/local/apache/ /chroot/usr/local
拷貝必需的二進(jìn)制文件
#cp /bin/sh /chroot/bin
確定哪些庫是必需的——這取決于你編譯時內(nèi)建了哪些模塊
#ldd /usr/local/apache/bin/httpd
將需要的庫拷貝到chroot目錄
#cp /lib/libm.* /chroot/lib/
#cp /lib/libgdbm.* /chroot/lib
#cp /lib/libdb.* /chroot/lib
#cp /lib/libdl.* /chroot/lib
#cp /lib/libc.* /chroot/lib
拷貝網(wǎng)絡(luò)連接所需要的函數(shù)庫
#cp /lib/libnss* /chroot/lib
拷貝必需的/etc下的文件到chroot
#cp /etc/passwd /chroot/etc
#cp /etc/shadow /chroot/etc
#cp /etc/group /chroot/etc
#cp /etc/resolv.conf /chroot/etc
#cp /etc/hosts /chroot/etc
#cp /etc/localtime /chroot/etc
#cp /etc/localtime /chroot/etc
#cp /etc/ld.so.* /chroot/etc
測試chroot下的阿帕奇
#chroot /chroot /usr/local/apache/bin/apachectl start
現(xiàn)在再
#chroot /chroot /usr/local/apache/bin/apachectl stop
服務(wù)器就停下來了,如果不行的話,再次確認(rèn)是否所有需要的庫都拷到了/chroot/lib
下了,如果仍然無幫助的話,或者可以以strace方式運(yùn)行httpd,它的輸出可能會有一
些有價值的內(nèi)容可以幫助確定是丟失了哪些庫或者二進(jìn)制文件。
然后我們可以做一些小工作了:默認(rèn)情況下阿帕奇是以nobody用戶及用戶組運(yùn)行的,不
要更改它。
在passwd\shadow\group等文件中包含了大量系統(tǒng)信息,所以你可以替換掉它們。
建立一個用戶名為httpd,UID為80
建立一個組名為httpd,GID為80
用下面的命令來將/chroot下的passwd,shadow,group替換掉
#echo "httpd:x:80:100:,,,:/home/httpd:/bin/false" > /chroot/etc/passwd
#echo "httpd:*LK*:11010:0:99999:7:::" > /chroot/etc/shadow
#echo "httpd:x:80:" > /chroot/etc/group
設(shè)定好文件的許可權(quán)限
#chmod 600 /chroot/etc/passwd shadow group
現(xiàn)在我們可以編輯apache的配置文件并進(jìn)行需要的配置,文件在
/chroot/usr/local/apache/conf/httpd.conf,尋找到包含apache運(yùn)行用戶
及組的信息的行并改變它(approx. line 263),當(dāng)然是改成httpd/httpd。
一切運(yùn)行正常后我們可以刪除前面的那些服務(wù)器安裝的東西——/usr/local下的,
包括服務(wù)器以及那些內(nèi)建的模塊等等。
#rm -rf /usr/local/apache
#rm -rf /usr/local/mod_ssl-2.5.0-1.3.11/
#rm -rf /usr/local/mod_perl-1.21/
#rm -rf /usr/local/openssl-0.9.4/
#rm -rf /usr/local/rsaref
如果以后還想改變它們的配置,增加新的模塊,那么將原先的apache留下來也行。
將阿帕奇設(shè)定為在開機(jī)時自啟動,修改/etc/rc.d/rc.local并且加入以下行:
echo "Starting Apache-SSL"
/usr/sbin/chroot/apache/bin/apachectl startssl
如果一切都運(yùn)行正常的話,那么恭喜你,你已經(jīng)成功地運(yùn)行了帶SSL支持的阿帕奇
了,這會使你的web server更加安全,如果你希望加入更多的模塊實現(xiàn)其它功能的
話,自己動手吧,最后要說明的是:在chroot環(huán)境中最好只有必需的一些二進(jìn)制程
序,而SUID程序還是干掉比較好些。 (http://www.fanqiang.com/) 進(jìn)入【UNIX論壇】
注明:
在局域網(wǎng)中這樣是可行的,但是在廣域網(wǎng)可能會出現(xiàn)這樣一種情況:
由于加密證書是我們自己生成并自簽的,并沒有得到廣域證書提供商認(rèn)可,可能在html連接上,會彈出提問,是否信任證書提供商(這個時候的證書提供商就是本公司)。如果想要得到廣域證書提供商的證書,可以尋找相關(guān)網(wǎng)站,花費(fèi)大概300-500美元,這樣在html連接上,由于有了廣域證書,就不會彈出上面的提問了。
第三節(jié)Perl介紹及安裝
以版本 5.00503 為例, 上述命令會在目前目錄下建立一個 perl5.005_03 的子目錄, 接著
cd perl5.005_03
./Configure
這時 Configure 會嘗試取得針對你的系統(tǒng)應(yīng)有的設(shè)定值, 都按 [Enter] 就行了
如果您覺得按 [Enter] 回答問題很累的話, ./Configure 這個命令可以換成./Configure -des, 那么 Configure 會直接使用它找出來的設(shè)定值, 不再尋求使用者的確認(rèn). 接下來
make
make test
測試一下,最后將 perl 安裝到系統(tǒng)上 make install // 注意:perl在/usr/local/bin/目錄下?lián)Q成perl5名安裝好的 perl 會放在
位置說明
/usr/loca/binperl 主程式 與一些工具程式
/usr/local/lib/perl5/5.00503perl module 和 POD(perl online document)
/usr/local/man/man1perl 的 man page
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
apache+mysql+php+ssl服務(wù)器之完全安裝攻略
開源 Apache 服務(wù)器安全防護(hù)技術(shù)精要及實戰(zhàn)
The Perfect Server - Fedora 12 x86_64 [ISPConfig 2] - Page 5 | HowtoForge - Linux Howtos and Tutorials
系統(tǒng)管理員社區(qū) - Linux Apache PHP MySQL SSL配置詳解
httpd 升級與 limitipconn 模組安裝
PHPWAMP如何開啟SSL,Apache下如何安裝ssl證書?PHPWAMP配置ssl證書其實很簡單
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服