2012-06-07, 10:06 PM | #1 | |
注册日期: 2003-10-22
帖子: 11,053
积分:6
精华:24
现金:14348金币
资产:29325305金币
|
Nginx下绑定自己签发的免费SSL数字安全证书
由于HTTP协议明文传输数据,使得嗅探无处不在,因此对某些网站如购物交易类、注册登陆类等,需要开启HTTPS协议来增加安全性,保证用户的密码不被盗取和嗅探。 HTTPS需要SSL数字安全证书的支持,一般找浏览器信任的CA机构签发数字证书都是要收费的,价格一般在13美元/年至50美元/年不等。(除了StartSSL和PositiveSSL) 如果证书只是给自己用的,防止在线管理时密码被**,则可以自行颁发免费的SSL数字安全证书。 Debian5 + OpenSSL + Nginx环境步骤如下: 一、使用OpenSSL生成SSL数字安全证书 PHP 代码:
第二步是证书请求生成和自签名,此时会要求输入参数,随便填,但Common Name必须填即将使用HTTPS的站点名称,比如:*.yourdomain.com 。 二、确保Nginx支持OpenSSL模块 Nginx默认是不支持SSL的,需要重新配置和编译,命令如下: PHP 代码:
另外,用户也可以在编译前注释掉 auto/cc/gcc 中的 CFLAGS=”$CFLAGS -g” 这行,使Nginx不以Debug模式编译,节约文件和内存占用、提高速度。 三、修改Nginx配置 修改nginx.conf中相应的server段: 代码:
server { listen 443; ssl on; ssl_certificate /etc/ssl/cacert.pem; ssl_certificate_key /etc/ssl/privkey.pem; server_name www.yourdoamin.com; index index.html index.htm index.php; root /home/wwwroot/yourdomain; ...... ...... } 四、重启Nginx 上传nginx.conf后,测试配置文件是否正确,并重启Nginx: PHP 代码:
键入https://www.yourdomain.com 会出现警告框: 由于是自己使用,点击查看证书-安装证书,下次就不会再弹出该警报框。 至此,你就可以使用HTTPS协议安全的访问网站,不用担心用户名和密码会在传输过程中被嗅探、盗取。 |
|
|
||
|