配置HTTPS(SSL),以及取消其密码,方便启动nginx等!
直接进入正题,首先要生成获得证书所需的密钥等文件:
openssl genrsa -des3 -out whhack.com.key 1024
openssl req -new -key whhack.com.key -out whhack.com.csr
openssl rsa -in whhack.com.key -out whhack.com.key
这样生成的证书必须是输入密码的,那么不输入密码怎么做呢:
mv whhack.com.key newwhhack.com.key
openssl rsa -in newwhhack.com.key -out whhack.com.key
rm newwhhack.com.key
然后根据这个key文件生成证书请求文件:
openssl req -new -key whhack.com.key -out whhack.com.csr
把上面生成的文件内容提交给CA,即可换取证书,这样的证书才能得到浏览器信任,但是一般需要一点费用,本站whhack.com就是;若自行生成(浏览器不信任,一般有提示)则:
openssl x509 -req -days 365 -in whhack.com.csr -signkey whhack.com.key -out whhack.com.crt
这里面的365是有效期,也就是一年,大家可以随意,弄个3650天都行的,呵呵...
那么我们现在有如下文件了:
whhack.com.crt
whhack.com.csr
whhack.com.key
好了,证书已经完成了,这里用nginx来说说实例使用,本站的Litespeed直接在控制面板中弄弄就OK了,大家下载访问https://www.whhack.com即为Litespeed面板中弄的,有面板就不多说了,来说nginx吧...
把文件假如都放在/usr/local/ssl/下面:
我们先安装nginx的ssl模块,因为http_ssl_module不属于nginx的基本模块(已经安装过的跳过此步).
./configure --user=username --group=groupname --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
给出一个完整的nginx配置的实例:
server {
listen 443;
server_name whhack.com www.whhack.com;
root /home/wwwroot/whhack.com;
index index.html index.htm index.php;
ssl on;
ssl_certificate /usr/local/ssl/whhack.com.crt;
ssl_certificate_key /usr/local/ssl/whhack.com.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
.....
}