⑴ 如何實現ssl安全證書訪問
網站實現ssl安全證書訪問是需要申請SSL證書的,主要步驟如下:
步驟一:選擇適合的SSL證書類型,申請一張SSL證書
SSL證書種類可分為:
EV SSL證書 – 擴展驗證型SSL證書
OV SSL證書 – 機構驗證型SSL證書
DV SSL證書 – 域名驗證型SSL證書
步驟二:簽署合同;確認支付方式;
步驟三:准備CSR並選擇確認方式;
步驟四:在線提交申請;
步驟五:確認申請;頒發證書。
⑵ nginx伺服器怎麼配置瀏覽器訪問需要證書
一直在用Nginx做反向代理,但是其SSL的配置只用過普通的服務端單向證書。在Google,網路狂搜一通之後,一無所獲,依舊是那老三樣,只有單向認證的示例。瀏覽器端雙向認證的配置好像從沒人寫過。
因為要來回的設置所有直接使用域名操作比如:
chaodiquan.com 解析到 IP上面(IP要用你自己的,如果使用CDN另算)
這個是主要在最後的實際應用的測試的使用會用到
因為是自己實際應用,只好從OpenSSL的客戶端證書開始學起,一點一點啃,大段大段的E文讓我這半瓶子醋看的頭暈眼暈。
的提示下終於把這個證書搞定,來秀一個。
這需要一下幾個步驟:
1) 安裝openssl用來做證書認證
2) 創建一個CA根證書
3) 創建一個自簽名的伺服器證書
4) 設置Nginx
5) 創建客戶端證書
6) 安裝客戶端證書到瀏覽器
7) Profit.
1)
這一步我是在ubuntu下直接apt-get裝的openssl, 配置文件安裝在/etc/ssl/openssl.cnf
修改openssl.cnf的以下幾段
[ ca ]
default_ca = foo
Openssl將會尋找名稱為foo的配置段
[ foo ]
dir = /etc/ssl/private
database = $dir/index.txt
serial = $dir/serial
private_key = $dir/ca.key
certificate = $dir/ca.crt
default_days = 3650
default_md = md5
new_certs_dir = $dir
policy = policy_match
policy_match 我保持默認值沒有改
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = match
commonName = supplied
emailAddress = optional
默認簽發有效期為10年,你可以自己設置一個合適的值
2)
創建一個新的CA根證書
下面的幾個腳本我都放在/etc/ssl目錄下
new_ca.sh:
#!/bin/sh
# Generate the key. genrsa意思是生成一個私鑰
openssl genrsa -out private/ca.key
# Generate a certificate request. req表示生成證書,還能生成ca證書,-new表示產生一個新csr,需要輸入一些信息,-key表示私鑰,
openssl req -new -key private/ca.key -out private/ca.csr
#
Self signing key is bad... this could work with a third party signed
key... registeryfly has them on for $16 but I'm too cheap lazy to get
one on a lark.
# I'm also not 100% sure if any old certificate will
work or if you have to buy a special one that you can sign with. I could
investigate further but since this
# service will never see the light of an unencrypted Internet see the cheap and lazy remark.
# So self sign our root key.
x509是一個證書生成工具,顯示證書內容,轉換格式,給CSR簽名等
-signkey用來處理CSR和給證書簽名,就像CA。使用時得同時提供私鑰,把輸入文件變成自簽名的證書,如果輸入CSR文件,則生成自簽名文件
-days證書有效時間
-in輸入文件 -out輸出文件
openssl x509 -req -days 3650 -in private/ca.csr -signkey private/ca.key -out private/ca.crt
#
Setup the first serial number for our keys... can be any 4 digit hex
string... not sure if there are broader bounds but everything I've seen
uses 4 digits.
echo FACE > private/serial
# Create the CA's key database.
touch private/index.txt
# Create a Certificate Revocation list for removing 'user certificates.'
gencrl在index文件中生成一個CRL相關的信息
-crldays是crl過期的時間
openssl ca -gencrl -out /etc/ssl/private/ca.crl -crldays 7
執行 sh new_ca.sh 生成新的CA證書
3)
生成伺服器證書的腳本
new_server.sh:
#
Create us a key. Don't bother putting a password on it since you will
need it to start apache. If you have a better work around I'd love to
hear it.
openssl genrsa -out private/server.key
# Take our key and create a Certificate Signing Request for it.
openssl req -new -key private/server.key -out private/server.csr
# Sign this bastard key with our bastard CA key.
-cert CA本身的證書名
-keyfile CA本身的私鑰
這句就是相當於CA用他的證書和私鑰,根據伺服器的證書,來給出一個CA認證的證書
openssl ca -in private/server.csr -cert private/ca.crt -keyfile private/ca.key -out private/server.crt
執行 sh new_server.sh 生成新伺服器的證書
4)
最要命的一步,嘗試多次後終於搞明白。
配置 nginx 的ssl支持
我的配置如下:
# HTTPS server
#
server {
listen 443;
server_name localhost;
# 打開ssl
ssl on;
# 上一步生成的伺服器證書
ssl_certificate /etc/ssl/private/server.crt;
# 伺服器證書公鑰
ssl_certificate_key /etc/ssl/private/server.key;
# 客戶端證書簽名 也就是第二步生成的CA簽名證書
ssl_client_certificate /etc/ssl/private/ca.crt;
# ssl session 超時
ssl_session_timeout 5m;
# 打開SSL客戶端校驗 (雙向證書檢測)
ssl_verify_client on;
#ssl_protocols SSLv2 SSLv3 TLSv1;
#ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
location / {
root /var/www/nginx-default;
index index.html index.htm;
}
啟動你的nginx ,等待客戶連接
5)
現在來生成客戶端證書
new_user.sh:
#!/bin/sh
# The base of where our SSL stuff lives.
base="/etc/ssl/private"
# Were we would like to store keys... in this case we take the username given to us and store everything there.
mkdir -p $base/users/$1/
# Let's create us a key for this user... yeah not sure why people want to use DES3 but at least let's make us a nice big key.
生成用戶私鑰
openssl genrsa -des3 -out $base/users/$1/$1.key 1024
# Create a Certificate Signing Request for said key.
根據用戶私鑰生成他的證書
openssl req -new -key $base/users/$1/$1.key -out $base/users/$1/$1.csr
# Sign the key with our CA's key and cert and create the user's certificate out of it.
模擬CA來給出CA認證過的證書
openssl ca -in $base/users/$1/$1.csr -cert $base/ca.crt -keyfile $base/ca.key -out $base/users/$1/$1.crt
# This is the tricky bit... convert the certificate into a form that most browsers will understand PKCS12 to be specific.
#
The export password is the password used for the browser to extract the
bits it needs and insert the key into the user's keychain.
# Take the same precaution with the export password that would take with any other password based authentication scheme.
pkcs12 處理pkcs12文件
根據CA認證過的證書和用戶的私鑰來生成p12驗證證書,可用伺服器導入。
openssl pkcs12 -export -clcerts -in $base/users/$1/$1.crt -inkey $base/users/$1/$1.key -out $base/users/$1/$1.p12
執行 sh new_user.sh yourname 來生成一個 yourname 的client證書
按照提示一步一步來,這里要注意的是客戶證書的幾個項目要和根證書匹配
也就是第一步時配置的:
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = match
不一致的話無法生成最後的客戶證書
6)
發送上一步生成的 yourname.p12 到客戶端。
IE下雙擊安裝就可以導入。
FireFox安裝 :
Go into preferences.
Advanced.
View Certificates.
Import.
Enter master password for FireFox (if you don't have one set one here otherwise stolen laptop = easy access).
Enter in the export password given to you by the de who created your cert.
Hit OK like a mad man.
打開第一步進行設置的域名解析會彈出對話框來要求你選擇使用哪個證書,選擇剛才安裝的證書。選擇接受伺服器證書。現在你可以正常訪問伺服器拉。如果沒弄對的話就會出現400 Bad request certification的錯誤
7)沒啥拉,有問題多試幾次,其實都是很簡單的事。就是中文的資料太少了。
希望可以幫助到你哈
⑶ 公司有一WEB伺服器,要求客戶端證書訪問 怎麼設置
IIS里右鍵站點屬性,然後選擇目錄安全性選項卡,最下面那個就是證書服務,但是你必須有證書伺服器,才能用,因為證書伺服器需要頒發證書,證書伺服器你可以自己裝下。
⑷ 如何為自己的WordPress站點安裝SSL證書開啟https訪問
進入Gworg選擇SSL證書配置到伺服器,根據技術文檔設置強制HTTPS訪問後,網站後台URL地址改成HTTPS地址就可以了。
⑸ 配置使用Win2003 Server web伺服器SSL安全證書怎麼弄
Gworg申請SSL證書後進入伺服器使用對用伺服器環境SSL安裝即可。
另外Gworg提供IIS6伺服器安裝說明。
⑹ ios 訪問伺服器的證書該怎麼使用
提高蘋iOS App安全性確保App架發者必須App伺服器啟用符合ATS要求HTTPS證書沃通免費SSL證書符合蘋ATS要求支持谷歌CT證書透明度幫助發者輕松應新安全標准!
建議iOS發者配置HTTPS連接注意幾點:
·向規CA機構(沃通CA)申請符合ATS要求SSL證書
·校驗證書鏈
·校驗證書簽發者
·校驗證書域名否匹配
您何確啟用HTTPS連接疑問沃通CA提供專業技術咨詢幫助用戶更加安全配置HTTPS證書確啟用HTTPS加密連接
t
⑺ linux上配置ssl證書怎麼訪問
淘寶一個SSL證書,叫機構提供您對應伺服器環境的證書,然後按照教程安裝。
APACHE安裝SSL證書:https://www.gworg.com/ssl/106.html
Apache自動跳轉到 HTTPS:https://www.gworg.com/ssl/130.html
Nginx安裝SSL證書:https://www.gworg.com/ssl/107.html
Nginx 自動跳轉到HTTPS:https://www.gworg.com/ssl/167.html
⑻ IIS證書,如何才能使客戶端下載證書才能訪問網站
將web站點配置為要求 SSL 訪問
在IIS中查看這個Web 站點的屬性。 單擊「目錄安全性」選項卡。 單擊「安全通信」下的「編輯」。 單擊「要求安全通道 (SSL)」。現在客戶端必須使用 HTTPS 瀏覽到此虛擬目錄。
http://hi..com/reeyan/blog/item/95670ccaf8e864f552664f9f.html
本文給出了如何配置IIS通過SSL安全通道進行訪問的方法,並在此基礎上詳細討論了IIS如何設置要求對客戶端提供客戶端證書進行身份驗證。IIS端SSL伺服器證書申請和安裝,從而配置SSL安全訪問通道。客戶端證書的申請和安裝,IIS端如何映射客戶端證書到伺服器上的windows賬戶等等。
一、 測試環境配置
准備三台機器,都是windows 2003操作系統,每台機器的作用,和其上需要安裝的服務和配置如下:
1、 win2003系統_1
ip:192.168.1.11
機器名:win2003base1
伺服器作用:這個伺服器是用來安裝證書服務,作為一個CA提供證書服務。
1.1. 安裝IIS以承載CA證書服務
1.2. 安裝證書服務,CA的公用名稱設置為TestCA
在安裝證書服務過程中會生成一個證書服務的證書,一個自己頒給自己的證書作為這個CA的根證書:
在安裝了證書服務後,會把這個TestCA證書保存證書存儲區的多個位置:
l 本地計算機存儲區中的「個人」、「受信任的根證書頒發機構」、「中級證書頒發機構」,其中在「中級證書頒發機構」下的「證書」和「證書吊銷列表」中都有(為什麼會出現在「證書吊銷列表」中?)。
l 當前用戶存儲區的「個人」。
2、 win2003系統_2
ip:192.168.1.12
機器名:win2003base2
伺服器作用:這個伺服器是用來作為web server,建立一個網站,設置為SSL安全通道訪問,並需要客戶端證書進行訪問。
2.1. 安裝IIS
默認網站作為測試客戶端證書訪問的web站點。
3、 win2003系統_3
ip:192.168.1.13
機器名:win2003base3
機器作用:這個機器只是作為一個單純的IE客戶端,用來申請客戶端證書並使用證書訪問web server。
二、 配置過程
1、 win2003系統_2申請並配置IIS 的SSL的服務端證書
1.1. 生成證書申請文件
在IIS要訪問的那個網站的屬性中,「目錄安全性」--「伺服器證書」,選新建證書:
下一步:
下一步:
向導使用當前 Web 站點名稱作為默認名稱。它不在證書中使用,但作為友好名稱以助於管理員識別。下一步:
單位和部門,這些信息將放在證書申請中,因此應確保它的正確性。CA 將驗證這些信息並將其放在證書中。瀏覽您的 Web 站點的用戶需要查看這些信息,以便決定他們是否接受證書。下一步:
公用名是證書最後的最重要信息之一。它是 Web 站點的 DNS 名稱(即用戶在瀏覽您的站點時鍵入的名稱)。如果證書名稱與站點名稱不匹配,當用戶瀏覽到您的站點時,將報告證書問題。
如果您的站點在 Web 上並且被命名為 www.contoso.com,這就是您應當指定的公用名。
如果您的站點是內部站點,並且用戶是通過計算機名稱瀏覽的,請輸入計算機的 NetBIOS 或 DNS 名稱。
這里因為win2003系統_2伺服器的機器名是win2003base2,所以共用名稱設為win2003base2。
下一步:
下一步:
會要求證書申請的文件名,這是您的證書申請的 Base 64 編碼表示形式。申請中包含輸入到向導中的信息,還包括您的公鑰和用您的私鑰簽名的信息。
將此申請文件發送到 CA。然後 CA 會使用證書申請中的公鑰信息驗證用您的私鑰簽名的信息。CA 也驗證申請中提供的信息。
當您將申請提交到 CA 後,CA 將在一個文件中發回證書。然後您應當重新啟動 Web 伺服器證書向導。
下一步:
完成生成申請過程。
1.2. 提交證書申請
證書申請現在可以發送到 CA 進行驗證和處理。當您從 CA 收到證書響應以後,可以再次使用 IIS 證書向導,在 Web 伺服器上繼續安裝證書。
使用「記事本」打開在前面的過程中生成的證書文件,將它的整個內容復制到剪貼板。
啟動 Internet Explorer,導航到 http://192.168.1.11/certsrv,指向win2003系統_1的證書服務。
單擊「申請一個證書」,然後單擊「下一步」。
在「選擇申請類型」頁中,單擊「高級申請」,然後單擊「下一步」。
在「高級證書申請」頁中,單擊「使用 Base64 編碼的 PKCS#10 文件提交證書申請」,然後單擊「下一步」。
在「提交一個保存的申請」頁中,單擊「Base64 編碼的證書申請(PKCS #10 或 #7)」文本框,按住 CTRL+V,粘貼先前復制到剪貼板上的證書申請。
單擊「提交」。
1.3. 頒發證書
提交申請後,在win2003系統_1機器上證書頒發機構中批准頒發這個win2003base2證書。
確認該證書顯示在「頒發的證書」文件夾中,然後雙擊查看它。
在「詳細信息」選項卡中,單擊「復制到文件」,將證書保存為 Base-64 編碼的 X.509 證書。
關閉證書的屬性窗口。
1.4. 上安裝證書
在win2003系統_2在IIS的Web 站點,然後單擊「屬性」,單擊「目錄安全性」選項卡。
單擊「伺服器證書」啟動 Web 伺服器證書向導。
單擊「處理掛起的申請並安裝證書」,然後單擊「下一步」。
輸入包含 CA 響應的文件的路徑和文件名,然後單擊「下一步」。
檢查證書概述,單擊「下一步」,然後單擊「完成」。
現在,已在 Web 伺服器上安裝了證書。
win2003base2證書就會被安裝到win2003系統_2機器上,證書會被安裝到證書存儲區的本地計算機存儲區中的「個人」。
1.5. 將web站點配置為要求 SSL 訪問
在IIS中查看這個Web 站點的屬性。 單擊「目錄安全性」選項卡。 單擊「安全通信」下的「編輯」。 單擊「要求安全通道 (SSL)」。現在客戶端必須使用 HTTPS 瀏覽到此虛擬目錄。
⑼ java客戶端怎麼訪問帶有pfx格式證書的https網站(伺服器)呢,
使用HttpURLConnection訪問https地址。
以下是導入JKS證書的方式,可以參考。
Stringkeystorefile="file";
Stringkeystorepw="password";
Stringkeypw="password";
KeyStorekeystore=KeyStore.getInstance("JKS");
keystore.load(newFileInputStream(keystorefile),keystorepw.toCharArray());
=KeyManagerFactory.getInstance("SunX509");
keymanagerfactory.init(keystore,keypw.toCharArray());
KeyManagerakeymanager[]=keymanagerfactory.getKeyManagers();
=TrustManagerFactory.getInstance("SunX509");
trustmanagerfactory.init(keystore);
TrustManageratrustmanager[]=trustmanagerfactory.getTrustManagers();
sslcontext=SSLContext.getInstance("TLS");
sslcontext.init(akeymanager,atrustmanager,null);
sslSocketFactory=sslcontext.getSocketFactory();
Stringurl="asdfdf";
URLtestURL=newURL(url);
=(HttpURLConnection)testURL.openConnection();
if(){
HttpsURLConnectionconn=(HttpsURLConnection)urlConnection;
conn.setSSLSocketFactory(sslSocketFactory);
}
⑽ 如何使用數字證書訪問SSL加密站點
直接在伺服器上安裝SSL證書就可以了啊,不同伺服器安裝SSL證書的教程不一樣,具體的可以去安信證書查看。