版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)10BSSL協(xié)議測(cè)試實(shí)驗(yàn)?zāi)康氖炀氄莆誸omcat中SSL協(xié)議的配置。初步理解Java環(huán)境下HTTPS客戶(hù)與服務(wù)器程序的開(kāi)發(fā)。實(shí)驗(yàn)準(zhǔn)備(1)Tomcat因技術(shù)先進(jìn)和免費(fèi),深受Java愛(ài)好者的喜愛(ài),成為目前比較流行的Web應(yīng)用服務(wù)器。為T(mén)omcat配置SSL,它包含以下兩個(gè)步驟:(1)
準(zhǔn)備安全證書(shū),(2)
配置Tomcat的SSL連接器(Connector)。(2)客戶(hù)機(jī)/服務(wù)器模式的SSL編程和基于Socket的編程類(lèi)似,不同的地方在于其ServerSocket對(duì)象是通過(guò)SSLServerSocketFactory類(lèi)型的對(duì)象創(chuàng)建的,這樣以后的輸入和輸出流將自動(dòng)按照SSL協(xié)議指定的方法交換密鑰并對(duì)數(shù)據(jù)進(jìn)行加密。此外,需要指定包含證書(shū)的密鑰庫(kù),以便客戶(hù)程序確定SSL服務(wù)器是否可靠。實(shí)驗(yàn)內(nèi)容(1)tomcat中SSL協(xié)議的配置=1\*GB3①準(zhǔn)備安全證書(shū)獲得安全證書(shū)有兩種方式:一種方式是到權(quán)威機(jī)構(gòu)購(gòu)買(mǎi),還有一種方式是創(chuàng)建自我簽名的證書(shū)。SUN公司提供了制作自我簽名的證書(shū)的工具keytool。通過(guò)keytool工具創(chuàng)建自簽名證書(shū)的命令為:keytool
-genkeypair
-alias
"tomcat"
-keyalg
"RSA"-keystoreC:\tomcat.key。
這部分內(nèi)容在上一章的實(shí)驗(yàn)中已經(jīng)討論過(guò),這里要注意密碼部分的設(shè)置,keystore密碼和密鑰(key)密碼應(yīng)該設(shè)置成同一密碼,下一步的SSL連接器配置中要使用該密碼。=2\*GB3②配置SSL連接器在Tomcat的server.xml文件中,已經(jīng)提供了現(xiàn)成的配置SSL連接器的代碼,只要把<Connector>元素的注釋去掉即可:<!—
Define
a
SSL
HTTP/1.1
Connector
on
port
8443
This
connector
uses
the
JSSE
configuration,
when
using
APR,
the
connector
should
be
using
the
OpenSSL
style
configuration
described
in
the
APR
documentation
<Connector
port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
clientAuth="false"
sslProtocol="TLS"
keystoreFile="C:/tomcat.key"/>
keystorePass="對(duì)應(yīng)的密碼"
/>
實(shí)際上,基于SSL的HTTPS使用的默認(rèn)端口是443。但Tomcat在這里將HTTPS端口設(shè)置為8443。<Connector>配置里的一些屬性參數(shù)如下表:屬性描述clientAuth如果設(shè)為true,表示Tomcat要求所有的SSL客戶(hù)出示安全證書(shū),對(duì)SSL客戶(hù)進(jìn)行身份驗(yàn)證keystoreFile指定keystore文件的存放位置,可以指定絕對(duì)路徑,默認(rèn)情況下,Tomcat將從當(dāng)前操作系統(tǒng)用戶(hù)的用戶(hù)目錄下讀取名為“.keystore”的文件。keystorePass指定keystore的密碼,如果此項(xiàng)沒(méi)有設(shè)定,在默認(rèn)情況下,Tomcat將使用“changeit”作為默認(rèn)密碼。sslProtocol指定套接字(Socket)使用的加密/解密協(xié)議,默認(rèn)值為T(mén)LS,用戶(hù)不應(yīng)該修改這個(gè)默認(rèn)值。ciphers指定套接字可用的用于加密的密碼清單,多個(gè)密碼間以逗號(hào)(,)分隔。如果此項(xiàng)沒(méi)有設(shè)定,在默認(rèn)情況下,套接字可以使用任意一個(gè)可用的密碼。=3\*GB3③訪(fǎng)問(wèn)支持SSL的Web站點(diǎn)由于SSL技術(shù)已建立到絕大多數(shù)瀏覽器和Web服務(wù)器程序中,因此,僅需在Web服務(wù)器端安裝服務(wù)器證書(shū)就可以激活SSL功能了。如果上述的第一步和第二步已經(jīng)配置完畢,那么就可以重啟Tomcat服務(wù)器了,然后從IE瀏覽器中以HTTPS方式來(lái)訪(fǎng)問(wèn)在Tomcat服務(wù)器上的任何一個(gè)Web應(yīng)用?,F(xiàn)在我們?cè)L問(wèn)地址:https://localhost:8443進(jìn)行測(cè)試。當(dāng)Tomcat收到這一HTTPS請(qǐng)求后,會(huì)向客戶(hù)的瀏覽器發(fā)送服務(wù)器的安全證書(shū),IE瀏覽器接受到證書(shū)后,將向客戶(hù)顯示安全警報(bào)窗口,說(shuō)明該安全證書(shū)非權(quán)威機(jī)構(gòu)頒發(fā),不能作為有效的驗(yàn)證對(duì)方身份的憑據(jù)。上述情況明SSL協(xié)議已經(jīng)正常工作。(2)Java環(huán)境下HTTPS客戶(hù)與服務(wù)器程序的開(kāi)發(fā)分析調(diào)試下列服務(wù)器端程序和客戶(hù)機(jī)端程序,回答實(shí)驗(yàn)報(bào)告中的問(wèn)題。=1\*GB3①服務(wù)器端程序import
.*;import
java.io.*;import
.ssl.*;public
class
MySSLServer{
public
static
void
main(String
args[
])
throws
Exception{
System.setProperty(".ssl.keyStore","mykeystore");
System.setProperty(".ssl.keyStorePassword","aaa");
SSLServerSocketFactory
ssf=(SSLServerSocketFactory)
SSLServerSocketFactory.getDefault(
);
ServerSocket
ss=ssf.createServerSocket(5432);
System.out.println("Waiting
for
connection...");
while(true){
Socket
s=ss.accept(
);
PrintStream
out
=
new
PrintStream(s.getOutputStream(
));
out.println("Hi");
out.close(
);
s.close(
);
}}}=2\*GB3②客戶(hù)機(jī)端程序import
.*;import
java.io.*;import
.ssl.*;public
class
MySSLClient{
public
static
void
main(String
args[
])
throws
Exception
{
System.setProperty(".ssl.trustStore","clienttrust");
SSLSocketFactory
ssf=
(SSLSocketFactory)
SSLSocketFactory.getDefault(
);
Socket
s
=
ssf.createSocket("",
5432);
BufferedReader
in
=
new
BufferedReader(new
InputStreamReader(s.getInputStream(
)));
String
x=in.readLine(
);
System.out.println(x);
in.close(
);
}}四、實(shí)驗(yàn)報(bào)告1.通過(guò)實(shí)驗(yàn)回答下列問(wèn)題(1)給出實(shí)驗(yàn)內(nèi)容(1)配置完成后的測(cè)試結(jié)果?!久看螌?shí)驗(yàn)用的電腦不太一樣,所以截圖上的ip地址不相同】通過(guò)安裝證書(shū),和在瀏覽器的高級(jí)設(shè)置中進(jìn)行安全證書(shū)導(dǎo)入可以打開(kāi)網(wǎng)頁(yè)。實(shí)驗(yàn)內(nèi)容(2)中,如果要讓客戶(hù)端和服務(wù)器端程序運(yùn)行起來(lái),密鑰庫(kù)應(yīng)該如何設(shè)置?設(shè)置密鑰庫(kù)及口令:System.setProperty(".ssl.keyStore","C:\\apache-tomcat-8.5.50\\conf\\key\\tomcat.keystore");System.setProperty(".ssl.keyStorePassword","123123");需要設(shè)置的參數(shù):.ssl.keyStore指定密鑰庫(kù)的名稱(chēng),.ssl.keyStorePassword指定密鑰庫(kù)的密碼。實(shí)驗(yàn)內(nèi)容(2)中,當(dāng)服務(wù)器和客戶(hù)機(jī)連通后,客戶(hù)端顯示的結(jié)果是什么?2.簡(jiǎn)答題(1)描述SSL協(xié)議的構(gòu)成和各部分的功能。SSL協(xié)議分為兩層,下層為SSL記錄協(xié)議,上層為SSL握手協(xié)議、SSL密碼變化協(xié)議和SSL警告協(xié)議。下層為SSL記錄協(xié)議,主要作用是為高層協(xié)議提供基本的安全服務(wù)建立在可靠的傳輸之上,負(fù)責(zé)對(duì)上層的數(shù)據(jù)進(jìn)行分塊、壓縮、計(jì)算并添加MAC(消息驗(yàn)證碼)、加密,最后把記錄塊傳輸給對(duì)方。上層為SSL握手協(xié)議、SSL密碼變化協(xié)議和SSL報(bào)警協(xié)議1.SSL握手協(xié)議:SSL握手協(xié)議被封裝在SSL記錄協(xié)議中,該協(xié)議允許服務(wù)器與客戶(hù)端在應(yīng)用程序傳輸和接收數(shù)據(jù)之前互相認(rèn)證、協(xié)商加密算法和密鑰。在初次建立SSL連接時(shí),服務(wù)器與客戶(hù)機(jī)交換一系列消息。2.SSL修改密文協(xié)議:保障SSL傳輸過(guò)程中的安全性,客戶(hù)端和服務(wù)器雙方應(yīng)該每隔一段時(shí)間改變加密規(guī)范3.SSL報(bào)警協(xié)議:用來(lái)為對(duì)等體傳遞SSL的相關(guān)警告。如果在通信過(guò)程中某一方發(fā)現(xiàn)任何異常,就需要給對(duì)方發(fā)送一條警示消息通告。當(dāng)打開(kāi)淘寶網(wǎng)首頁(yè),描述瀏覽器和服務(wù)器已經(jīng)完成的交互。1.客戶(hù)使用https的URL訪(fǎng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 居家保姆雇傭合同書(shū)
- 2025年統(tǒng)編版八年級(jí)地理上冊(cè)月考試卷
- 2025年滬教新版高二數(shù)學(xué)上冊(cè)階段測(cè)試試卷
- 2025年粵人版八年級(jí)歷史下冊(cè)階段測(cè)試試卷
- 遵義職業(yè)技術(shù)學(xué)院《西方法律思想史(B)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年牛棚養(yǎng)殖廢棄物回收與處理服務(wù)合同4篇
- 二零二五版門(mén)窗行業(yè)標(biāo)準(zhǔn)化安裝服務(wù)合同4篇
- 二零二五版苗木種植與森林防火技術(shù)服務(wù)合同3篇
- 2025年度新型木門(mén)材料研發(fā)與市場(chǎng)拓展合作合同3篇
- 二零二五版木托盤(pán)生產(chǎn)設(shè)備進(jìn)出口合同4篇
- 安徽省定遠(yuǎn)重點(diǎn)中學(xué)2024-2025學(xué)年第一學(xué)期高二物理期末考試(含答案)
- 教育教學(xué)質(zhì)量經(jīng)驗(yàn)交流會(huì)上校長(zhǎng)講話(huà):聚焦課堂關(guān)注個(gè)體全面提升教育教學(xué)質(zhì)量
- 2024人教新目標(biāo)(Go for it)八年級(jí)英語(yǔ)上冊(cè)【第1-10單元】全冊(cè) 知識(shí)點(diǎn)總結(jié)
- 劇本殺店長(zhǎng)合同范例
- 華中師范大學(xué)第一附中2025屆高考仿真模擬數(shù)學(xué)試卷含解析
- 農(nóng)村自建房施工合同模板
- GB/T 44731-2024科技成果評(píng)估規(guī)范
- 影視動(dòng)畫(huà)設(shè)計(jì)與制作合同
- 2023學(xué)年廣東省深圳實(shí)驗(yàn)學(xué)校初中部九年級(jí)(下)開(kāi)學(xué)語(yǔ)文試卷
- 企業(yè)新員工培訓(xùn)師帶徒方案
- 2025屆河南省鄭州一中高三物理第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
評(píng)論
0/150
提交評(píng)論