100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > nginx 1.11.0实现http和https正向代理

nginx 1.11.0实现http和https正向代理

时间:2020-05-25 23:39:19

相关推荐

nginx 1.11.0实现http和https正向代理

编译安装时候加上这个--with-http_ssl_module

生成两个文件443.crt和443.key。crt是证书,key是私钥

1、先生成私key文件,再用之生成加密的私key文件

openssl genrsa -des3 -out p.key

随便写个密码

openssl rsa -in p.key -out 443.key

输入一遍建立p.key的那个密码,使用443.key的时候就不需要密码了

2、生成证书请求文件csr

openssl req -new -key 443.key -out 443.csr

Common Name要写此证书是用于哪个域名的,比如*.

3、用证书请求文件csr和私key文件生成一个十年期限的CA证书crt文件

openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey 443.key -in 443.csr -out 443_CA.crt

4、生成被CA证书文件签名过的证书文件crt

openssl x509 -req -days 3650 -in 443.csr -extensions v3_usr -CA 443_CA.crt -CAkey 443.key -CAcreateserial -out 443.crt

第四步也可以不执行,只需在下文的nginx配置文件里,把443.crt换成443_CA.crt。

http,nginx配置文件里这样写

server {

listen 80;

server_name ~^(.*);

location / {

resolver 172.16.168.2;

proxy_pass http://$http_host$request_uri;

proxy_set_header Host $http_host;

https,nginx配置文件里这样写

server {

listen 443 ssl;

ssl on;

server_name ~^(.*);

ssl_certificate /usr/local/nginx/conf/keys/443.crt;

ssl_certificate_key /usr/local/nginx/conf/keys/443.key;

location / {

resolver 172.16.168.2;

proxy_pass https://$http_host$request_uri;

proxy_set_header Host $http_host;

客户端用https访问url肯定会看到不是安全连接的警告,用户只有忽略警告,才能正常访问。这就是不找认证机构交保护费导致的!hoho

本文转自 朱科强 51CTO博客,原文链接:/zhukeqiang/1795023,如需转载请自行联系原作者

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。