1. 生成自签名https证书
参考
1.1 生成证书的脚本
# vi gencert.sh
#!/bin/sh
# create self-signed server certificate:
read -p "Enter your domain [www.example.com]: " DOMAIN
echo "Create server key..."
#openssl genrsa -des3 -out $DOMAIN.key 1024
openssl genrsa -des3 -out $DOMAIN.key 2048
echo "Create server certificate signing request..."
SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"
openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr
echo "Remove password..."
mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key
echo "Sign SSL certificate..."
openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt
echo "TODO:"
echo "Copy $DOMAIN.crt to /etc/nginx/ssl/$DOMAIN.crt"
echo "Copy $DOMAIN.key to /etc/nginx/ssl/$DOMAIN.key"
echo "Add configuration in nginx:"
echo "server {"
echo " ..."
echo " listen 443 ssl;"
echo " ssl on;"
echo " ssl_certificate /etc/nginx/ssl/$DOMAIN.crt;"
echo " ssl_certificate_key /etc/nginx/ssl/$DOMAIN.key;"
echo "}"
1.2 生成证书
./gencert.sh
Enter your domain [www.example.com]: sub.domain.com
Create server key...
Generating RSA private key, 2048 bit long modulus
..........................+++
.....................+++
e is 65537 (0x10001)
Enter pass phrase for sub.domain.com.key:
Verifying - Enter pass phrase for sub.domain.com.key:
Create server certificate signing request...
Enter pass phrase for sub.domain.com.key:
Remove password...
Enter pass phrase for sub.domain.com.origin.key:
writing RSA key
Sign SSL certificate...
Signature ok
....
1.3 copy证书到相应位置 nginx/conf/cert目录下
2. nginx支持https证书
# vi sub.domain.com.conf
server{
charset utf-8;
listen 80;
listen 443 ssl;
ssl on;
ssl_certificate /usr/local/nginx/conf/cert/sub.domain.com.crt;
ssl_certificate_key /usr/local/nginx/conf/cert/sub.domain.com.key;
server_name sub.domain.com;
access_log /home/wwwlogs/sub.domain.com.log;
error_log /home/wwwlogs/sub.domain.com.err;
location / {
proxy_pass http://127.0.0.1:99999;
}
}
3. 生成basic auth用的密码文件
参考
yum install httpd-tools -y
# magina是用户名,要求输入两次密码
htpasswd -c -d /usr/local/nginx/conf/pass_file magina
New password:
Re-type new password:
4. 配置nginx支持basic auth
# vi sub.domain.com.conf
server{
charset utf-8;
listen 80;
listen 443 ssl;
ssl on;
ssl_certificate /usr/local/nginx/conf/cert/sub.domain.com.crt;
ssl_certificate_key /usr/local/nginx/conf/cert/sub.domain.com.key;
server_name sub.domain.com;
# 以下2行支持 basic auth
auth_basic "sub auth";
auth_basic_user_file /usr/local/nginx/conf/pass_file;
access_log /home/wwwlogs/sub.domain.com.log;
error_log /home/wwwlogs/sub.domain.com.err;
location / {
proxy_pass http://127.0.0.1:99999;
}
}
分享到:
相关推荐
主要介绍了Nginx配置SSL自签名证书的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Windows下Nginx配置SSL实现Https访问(包含证书生成)
nginx配置+https
它一个工具等于Nginx + 网关登录 + 图片处理 + 内网穿透 + 免费Ssl证书,且配置全程界面化,让你告别难懂、难记易出错的指令配置; 在追求功能多样性上性能也无语伦比,拥有多种措施大幅度改善源应用性能,是企业和...
里面 1.7.4 的nginx https 的配置 下载下来后 需要配置一下 nginx 的配置文件即可
nginx配置 +负载均衡+https协议 完整的配置以及nginx 启动 停止 重新加载
nginx配置优化+负载均衡+动静分离详解
nginx配置优化+负载均衡+动静分离详解
basic auth配置示例: location / { auth_basic closed site; auth_basic_user_file conf/htpasswd; } 说明: auth_basic可设置为off或其它字符串,为off时表示不开启密码验证 auth_basic_user_file 为包含...
使得notepad++编辑nginx的配置文件(.conf)时,支持语法的高亮显示,非常方便
网络上很难找到非常详细的...本文档通过真实的实践经验,从安装OpenSSL和Nginx,到利用openssl生成证书,配置nginx的https(包括配置http请求转发到https)等,详细总结出nginx配置https的步骤,最终能帮助你配置成功。
内容概要:通过nginx配置实现控制不同的用户可以访问不同的资源或者web ...②Basic Auth相关知识。 阅读建议:改资源基于Linux-CentOS7系统操作,需要有一定的Linux命令操作基础和nginx安装和配置能力。
Notepad++ 自定义 nginx.conf 文件语法高亮的配置文件 使用教程:点击语言-自定义语言格式-导入(下载的xml文件)-重启notepad++,即可使用
Nginx+Uwsgi+Django(python3)+Vue部署,一步步实现。网上找了N多篇文章都没成功,特意记录,以免其他同学踩坑
Web服务器三剑客运维配置实战 Nginx+JVM+Tomcat+HTTP协议 视频教程+笔记+课件+资料 虽然在课程中还讲解了部分HTTP协议的技术,但是课程的重点还是NGINX、JVM、Tomcat三相运维与配置技术。课程内容包括了Nginx进阶...
Nginx配置http转https以及https访问http静态资源.docx
CentOS5.3+Nginx0.7.57+Postfix+Extmail邮件系统安装配置
nginx安装与配置详细资料+weblogic集群配置
nginx+tomcat7负载均衡+redis缓存session
提供了小程序https服务在nginx环境下的配置示例,包括https配置和小程序扫二维码打开小程序时需要在nginx服务端放置小程序二维码扫描校验文件的配置