時(shí)間:2010-02-24 20:15:42 類(lèi)別:技術(shù) 訪(fǎng)問(wèn):11,529 views RSS 2.0 評(píng)論
請(qǐng)參考 Nginx Wiki http://wiki.nginx.org/NginxHttpSslModule
生成證書(shū)
$ cd /usr/local/nginx/conf
$ openssl genrsa -des3 -out server.key 1024
$ openssl req -new -key server.key -out server.csr
$ cp server.key server.key.org
$ openssl rsa -in server.key.org -out server.key
$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
編輯 nginx.conf
server {
server_name YOUR_DOMAINNAME_HERE;
listen 443;
ssl on;
ssl_certificate /usr/local/nginx/conf/server.crt;
ssl_certificate_key /usr/local/nginx/conf/server.key;
}
OK, 完成了。但這樣證書(shū)是不被信任的,自己玩玩還行,要被信任請(qǐng)看下面。
以下內(nèi)容轉(zhuǎn)載自
http://goo.gl/YOb5
http://goo.gl/Gftj
HTTPS(全稱(chēng):Hypertext Transfer Protocol over Secure Socket Layer),是以安全為目標(biāo)的HTTP通道,簡(jiǎn)單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容 請(qǐng)看SSL。
它是一個(gè)URI scheme(抽象標(biāo)識(shí)符體系),句法類(lèi)同http:體系。用于安全的HTTP數(shù)據(jù)傳輸。https:URL表明它使用了HTTP,但HTTPS存在不同 于HTTP的默認(rèn)端口及一個(gè)加密/身份驗(yàn)證層(在HTTP與TCP之間)。這個(gè)系統(tǒng)的最初研發(fā)由網(wǎng)景公司進(jìn)行,提供了身份驗(yàn)證與加密通訊方法,現(xiàn)在它被廣 泛用于萬(wàn)維網(wǎng)上安全敏感的通訊,例如交易支付方面。
1、自行頒發(fā)不受瀏覽器信任的SSL證書(shū):
HTTPS的SSL證書(shū)可以自行頒發(fā),Linux下的頒發(fā)步驟如下:
openssl genrsa -des3 -out api.bz.key 1024
openssl req -new -key api.bz.key -out api.bz.csr
openssl rsa -in api.bz.key -out api.bz_nopass.key

nginx.conf 的SSL證書(shū)配置,使用 api.bz_nopass.key,在啟動(dòng)Nginx是無(wú)需輸入SSL證書(shū)密碼,而使用 api.bz.key 則需要輸入密碼:
server {
server_name sms.api.bz;
listen 443;
index index.html index.htm index.php;
root /data0/htdocs/api.bz;
ssl on;
ssl_certificate api.bz.crt;
ssl_certificate_key api.bz_nopass.key;
......
}
自行頒發(fā)的SSL證書(shū)雖然能夠?qū)崿F(xiàn)加密傳輸功能,但得不到瀏覽器的信任,會(huì)出現(xiàn)以下提示:

posted on 2012-11-29 14:44
hellxoul 閱讀(391)
評(píng)論(0) 編輯 收藏