Chinaunix首页 | 论坛 | 博客
  • 博客访问: 78810
  • 博文数量: 12
  • 博客积分: 1560
  • 博客等级: 上尉
  • 技术积分: 146
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-07 07:23
文章分类
文章存档

2011年(2)

2010年(8)

2008年(2)

分类: LINUX

2010-04-10 01:19:27

nginx下载  版本:0.7.65

openssl下载:    版本:1.0.0

 

1.注意:OPENSSL不需要安装,只需要解压出来就行。不然在编译时会提示类似以下的错误:

make[1]: Entering directory `/root/nginx-0.7.65'
cd /server/openssl \
        && make clean \
        && ./config --prefix=/server/openssl/openssl no-shared  no-threads \
        && make \
        && make install
make[2]: Entering directory `/server/openssl'
make[2]: *** No rule to make target `clean'.  Stop.
make[2]: Leaving directory `/server/openssl'
make[1]: *** [/server/openssl/openssl/include/openssl/ssl.h] Error 2
make[1]: Leaving directory `/root/nginx-0.7.65'
make: *** [build] Error 2

 

2.安装Nginx的时候,把openssl路径指定到解压出来的路径:

./configure  --with-http_stub_status_module --with-http_ssl_module --with-openssl=/root/openssl-1.0.0 --with-http_gzip_static_module 

 

之后是一个漫长的等待时间

 

3、生成RSA密钥的方法

openssl genrsa -des3 -out privkey.pem 2048
这个命令会生成一个2048位的密钥,同时有一个des3方法加密的密码,如果你不想要每次都输入密码,可以改成:
openssl genrsa -out privkey.pem 2048
建议用2048位密钥,少于此可能会不安全或很快将不安全。

4、生成一个证书请求
openssl req -new -key privkey.pem -out cert.csr
这个命令将会生成一个证书请求,当然,用到了前面生成的密钥privkey.pem文件
这里将生成一个新的文件cert.csr,即一个证书请求文件,你可以拿着这个文件去数字证书颁发机构(即CA)申请一个数字证书。CA会给你一个新的文件cacert.pem,那才是你的数字证书。

如果是自己做测试,那么证书的申请机构和颁发机构都是自己。就可以用下面这个命令来生成证书:
openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095
这个命令将用上面生成的密钥privkey.pem生成一个数字证书cacert.pem

5.Nginx配置中,需要修改的地方:

server {
        listen       443;
        server_name  localhost;

        ssl                  on;
    ssl_certificate /usr/local/nginx/conf/cacert.pem;
    ssl_certificate_key /usr/local/nginx/conf/privkey.pem;
    server_name 192.168.10.70
ssl_session_timeout  5m;
}

6.在iptables中打开ssl使用到的443端口,重启iptables.

7.测试。访问时,发现有提示需要证书,应该成功了。

 

 

阅读(2625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~