軟體環境
此舉將安裝最新的openssl到/usr/local/ssl資料夾中。無需理會系統中已有版本號的openssl,也不要去解除安裝它,否則會導致非常多的應用程式無法正常執行,比如x窗體無法進入等錯誤。
此步驟在/apache/httpd資料夾中安裝httpd服務(通過引數--prefix指定)。同一時候使用--with-ssl指定剛才所安裝openssl的路徑,用於將mod_ssl靜態的編譯到httpd服務中。
3.製作證書
我們必須手工來生成ssl用到的證書。對證書不熟悉的人,有乙個工具能夠使用: 。以下是怎樣通過這個工具來生成證書的過程:
#./new-root-ca.sh (生成根證書)
no root ca key round. generating one
generating rsa private key, 1024 bit long modulus
...........................++++++
....++++++
e is 65537 (0x10001)
enter pass phrase for ca.key:12345 (輸入乙個password)
verifying - enter pass phrase for ca.key: 12345(再輸入一次password)
......
self-sign the root ca... (簽署根證書)
enter pass phrase for ca.key:12345 (輸入剛剛設定的password)
........
........ (以下開始簽署)
country name (2 letter code) [my]:cn
state or province name (full name) [perak]:sd //隨你喜歡
locality name (eg, city) [sitiawan]:qd //隨你喜歡
organization name (eg, company) [my directory sdn bhd]:gx //隨你喜歡
organizational unit name (eg, section) [certification services division]:gx //隨你喜歡
common name (eg, md root ca) :gaoxin.com //隨你喜歡
email address :[email protected]//隨你喜歡
這樣就生成了ca.key和ca.crt兩個檔案,以下還要為我們的server生成乙個證書:
# ./new-server-cert.sh server (這個證書的名字是server)
......
......
country name (2 letter code) [my]:cn
state or province name (full name) [perak]:sd
locality name (eg, city) [sitiawan]: qd
organization name (eg, company) [my directory sdn bhd]:gx
organizational unit name (eg, section) [secure web server]:gx
common name (eg, www.domain.com) :gaoxiaoit.com (必須與上面的不同,否則報錯)
email address :[email protected]
這樣就生成了server.csr和server.key這兩個檔案。
還須要簽署一下才幹使用的:
# ./sign-server-cert.sh server
ca signing: server.csr -> server.crt:
using configuration from ca.config
enter pass phrase for ./ca.key:12345 (輸入上面設定的根證書password)
check that the request matches the signature
signature ok
the subject's distinguished name is as follows
countryname:printable:'cn'
stateorprovincename:printable:'gansu'
localityname:printable:'lanzhou'
organizationname:printable:'lzu'
organizationalunitname:printable:'lzu'
commonname:printable:'localhost'
emailaddress :ia5string:'[email protected]'
certificate is to be certified until jan 19 21:59:46 2011 gmt (365 days)
sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
write out database with 1 new entries
data base updated
ca verifying: server.crt <-> ca cert
server.crt: ok
配置conf/extr/httpd-ssl.conf
找到#include conf/extra/httpd-ssl.confm去掉凝視
以下要依照httpd-ssl.conf裡面的設定。將證書放在適當的位置。
然後就能夠啟動啦!
。這樣能夠訪問,可是瀏覽器每次訪問都要確定,並且提示不安全,這要把ca證書匯入瀏覽器的受信任列表裡。
然後就不會有不論什麼提示了。
接下來你可能須要雙向認證:
1.new-user-cert.sh user
common name 與上面要不同我這裡直接用的user
2.sign-user-cert.sh user
註冊完後事實上已經完畢,可是這裡還須要生成一種瀏覽器須要的格式
3.p12.sh user
這裡事實上是把user的crt和key合成了user.12
另外在http-ssl.conf內做例如以下配置
上面的配置對照服務端的認證就是我們須要將ca證書倒入瀏覽器信任列表。即把根證書給對方,接受信任
sslverifyclient require
sslverifydepth 10
這裡的配置對照服務端的認證就是我們在瀏覽器要輸入https,即告訴對方我要證書。
接下來最後一步。把生成的12檔案倒入瀏覽器就可以訪問。
(這裡相應的服務端認證就是我們把server的key和crt放入apache的指定路徑)
Linux下Redis下安裝
redis安裝 檢查是否安裝redis ps ef grep redis2.檢查gcc服務是否安裝成功 rpm qa grep gcc注 安裝成功則顯示 mkdir redis5.解壓redis安裝包 tar zxvf redis 2.8.17 tar.gz c usr local redis 解壓...
Linux下程式設計
windows下我的環境為 windows10 vs2015 opencv3.4.0 opencv3.4.0 contrib python linux下我的環境為 ubuntu16004 也有ubuntu1804 opencv3.4.0 opencv3.4.0 contrib python gnu ...
linux下萬用字元
萬用字元是一類鍵盤字元,有星號 和問號 當查詢檔案呀資料夾時,可以使用它來代替乙個或多個真正字元 當不知道真正字元或者不想建入完整名字時,常常使用萬用字元代替乙個或多個真正字元。星號 可以使用星號代替0個或多個字元。如果正在查詢以aew開頭的乙個檔案,但不記得檔名其餘部分,可以輸入aew,查詢以ae...