一、安装 Nginx在 OpenCloudOS 9 系统上,首先使用以下命令更新系统的软件包列表:yum update -y这个步骤确保系统的软件包索引是最新的,以便安装最新版本的 Nginx。 二、部署证书(以 SSL 证书为例)准备证书文件通常,您需要从证书颁发机构(CA)获取 SSL 证书文件。 一般会得到两个文件:证书文件(例如,yourdomain.crt)和私钥文件(例如,yourdomain.key)。 重新加载 Nginx 配置在修改完 Nginx 配置文件后,需要重新加载配置使新的 SSL 配置生效:systemctl reload nginx 验证证书部署可以使用在线的 SSL 检查工具(如 SSL Labs 的测试工具),输入您的域名,检查证书是否正确部署,以及 SSL 配置是否安全。
本文主要记录Nginx怎么配置SSL证书,前提是Nginx安装成功和SSL证书已经获取。 在我们下载的证书文件中有一个Nginx的文件夹,这里面的两个文件都是需要的。 我们需要把这个两个文件上传到 linux 服务器中,推荐放到/etc/ssl/目录下 [0q9y04gvk0.png? 1586345599&q-key-time=1586338399;1586345599&q-header-list=&q-url-param-list=&q-signature=c0ec2002c81f282f9e714d95606f6635882a7332 1586338421;1586345621&q-header-list=&q-url-param-list=&q-signature=1d7d149c8c08a6fb989219bebed3e96f999ef9d9 nginx:emergunknown directive ssl,就是这个错误提示 因为我们配置这个SSL证书需要引用到nginx的中SSL这模块,然而我们一开始编译的Nginx的时候并没有把SSL模块一起编译进去
证书系统还可以帮助用户验证他们正在连接的站点的身份。 在本指南中,我们将向您展示如何设置自签名SSL证书,以便与Debian 9服务器上的Nginx Web服务器一起使用。 您可以按照Debian 9的初始服务器设置了解如何设置此类用户帐户。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。 您还需要安装Nginx Web服务器。 如果您只是想要Nginx Web服务器,您可以按照我们的教程在Debian 9上安装Nginx。 完成准备后,请继续以下操作。 创建指向SSL密钥和证书的配置代码段 首先,让我们在/etc/nginx/snippets目录中创建一个新的Nginx配置代码段。 ---- 参考文献:《How To Create a Self-Signed SSL Certificate for Nginx on Debian 9》
使用vim打开配置文件vim /etc/nginx/nginx.conf http{ #http节点中可以添加多个server节点 server{ #监听443端口 server_name xyz.com; rewrite ^/(.*)$ https://xyz.com:443/$1 permanent; } } 然后使用保存配置文件,使用nginx -t命令对文件对配置文件进行校验,如果看到successful表示文件格式证书,这时候我们就可以启动nginx服务或者重新加载nginx配置文件。 启动nginx服务:service nginx start 重新加载配置文件:nginx -s reload
HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性 Nginx配置 在/etc/nginx/cert目录放入证书文件 psvmc.pem psvmc.key Nginx 的配置文件添加如下配置 listen 443; ssl on; ssl_certificate /etc/nginx/cert/psvmc.pem; ssl_certificate_key /etc /nginx/cert/psvmc.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES /cert/psvmc.pem; ssl_certificate_key /etc/nginx/cert/psvmc.key; ssl_session_timeout 5m; /cert/psvmc.pem; ssl_certificate_key /etc/nginx/cert/psvmc.key; ssl_session_timeout 5m;
由于SSL证书是要求独立IP的,所以我这换了IP之后需要向证书机构申请重发证书。 当证书重发完成之后,就是绑定证书和修改配置文件了,由于之前的证书是由服务商给安装的,再加上nginx下还没有手动安装过证书,只好去找度娘问了。好歹功夫不负有心人,终于让我捣鼓好了。 ,重发证书的时候首先要在服务器上面生成两个文件一个是key(密钥文件)文件,一个是csr(证书请求文件)文件。 首先生成key文件: root@lianst:~#cd /usr/local/nginx/conf/ root@lianst:/usr/local/nginx/conf# openssl genrsa 合并完成之后将ssl.csr和www.lianst.cn.key上传到/usr/local/nginx/conf/下面,之后修改nginx.conf文件开启ssl支持。
server_name wxapi.aimiter.com; root html; index index.html index.htm; ssl_certificate /etc/nginx /conf.d/cert.pem; ssl_certificate_key /etc/nginx/conf.d/cert.key; ssl_session_cache shared # resolver 127.0.0.1; proxy_pass http://127.0.0.1:8080; #root /usr/share/nginx # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx
方式二:使用openssl生成证书 先要确认当前系统是否有安装openssl openssl version 安装下面的命令进行生成 mkdir /root/cert cd /root/cert openssl
启动 查看配置 [root@h102 conf]# grep -v "#" /usr/local/nginx/conf/nginx.conf | grep -v "^$" worker_processes
最近服务器的https证书过期了,所以重新申请证书,然后将证书下载到本地,因为是免费的所以要手动下载,这个证书因为免费所以不会自动续费延期,所以这玩意儿必须每年搞一次,而且要提前搞,还是有钱好啊,暂时没钱只能自己操作了 证书申请完后,点击下载,下载nginx版本的证书,因为我们要用nginx部署,如图: image.png 下载下来后,有两个文件,pem后缀文件的是证书,key后缀的文件是私钥。 接下来要进行如下操作: 1、将证书和私钥上传到服务器。 2、配置nginx配置文件。 3、重启nginx服务器。 root@99.99.99.99:/home/geek/nginx/conf/cert 然后将证书和秘钥分别改名为 site.pem和site.key,为了方便后面的配置使用 第二步修改nginx的配置文件 以上便是我用nginx配置linux服务器https证书的过程,希望对你有所帮助。
找到nginx的配置文件:nginx.conf,找到server添加以下代码 listen 443 ssl; server_name www.baidu.com; #你的申请过证书的域名 /dist; # try_files $uri $uri/ @rewrite; #ssl on; ssl_certificate /usr/local/nginx /https/3685111_www.baidu.com.pem; # 证书pem文件,根据自己证书的所在位置 ssl_certificate_key /usr/local/nginx/ https/3685111_www.baidu.com.key; # 证书key文件,根据自己证书的所在位置 ssl_session_timeout 5m; # ssl_protocols in /usr/local/nginx/conf/nginx.conf:43 这个是没有配置ssl出现的问题,解决方法:https://blog.csdn.net/u014227715/article
前沿 腾讯云或者阿里云后台申请的ssl证书,有一定的时间限制。到期后,还得手动部署,免费的无法自动续签。近期博主自己的网站又有一批证书快过期了。打算一次行解决这个问题。 软件安装 yum install certbot yum install python-certbot-nginx 申请证书 以nav.itbunan.xyz 举例 certbot --nginx - d nav.itbunan.xyz 验证配置是否生效 打开/etc/nginx/conf.d/proxy.conf 查看相关配置 自动续期 通过计划任务,自动检查证书期限,并实现自动续期 0 12 *
笔者使用的是Let’s Encrypt的免费https证书,是有有效期的,不过是可以免费续签的,在有效期达到之前会有邮件发到你的注册邮箱中,提醒你快到期了。 续签的步骤也很简单,下面的步骤中会提到。 /certbot-auto certonly --webroot --agree-tos -v -t --email youmail@mail.com -w /usr/local/nginx/html/ Nginx配置 主要是ssl_certificate、ssl_certificate_key的参数,指定到上面生成的文件。 on; location / { # 这里我是做了端口转发,你可以不必修改 proxy_pass http://localhost:4000; } } 证书更新 如果证书快到期了,可以使用这条命令免费续签 [root@host certbot]# .
申请SSL证书 下载证书 下载完证书之后解压,因为腾讯云选择的是nginx服务器,所以我们只需要下载nginx并解压。 配置Nginx服务器 我们需要把刚才解压的nginx证书文件拷贝到nginx的conf路径下面—也就是服务器中/etc/nginx/conf路径下面的。 ssl_certificate 1_bundle.crt;//如果文件不在conf路径下,就需要写绝对路径 ssl_certificate_key 1_mykey.key; 重启nginx访问 systemctl restart nginx.service 注意 注意:如果配置完成后没有小锁的图标,就清除浏览器缓存试试,本人由于没有清除浏览器配置完成后一直以为没有配成功,浪费了不少时间!!!
今天教大家使用nginx配置证书,双证书! Nginx1.11.0版本后提供了ESA/ECC双证书的支持,以下是参考链接: https://www.mf8.biz/ecc-nginx-double-cert http://www.freebuf.com /articles/database/155912.html ECDSA (椭圆曲线数字签名算法) 就是我们所说的 ECC 证书了,相比 RSA, ECC 证书具有安全性高, 处理速度更快的优点,尤其适合在移动设备上使用 于是双证书就出现了,它可以在 TLS 握手的时候根据客户端支持的加密方法选择对应的证书, 以向下兼容古代客户端。 我们继续编辑nginx.conf配置文件 ssl_certificate和ssl_certificate_key分别放入两个证书文件以及密钥, 使用openssl dhparam -out dhparam.pem
,key 存的是私钥(证书的密码) } sslInput # ssl 字符写入 findNginxFile(){ nginxconf=`ps -aux | grep "nginx.conf" | grep master | awk -F"-c" '{print $2}'` ; echo "nginx配置文件为; $nginxconf" nginxconfinc=$(cat $nginxconf | grep '| sed "s/*.conf;//g" ); echo " 子站点目录为:$nginxconfinc" nginxconfincfile=(`ls $nginxconfinc`) ; echo "nginx 子站点文件为: ${nginxconfincfile[*]}" echo "#--------------------- 获取 nginx 子站点角标 --------------------# nginxwww.bak echo "已经备份 $nginxwww.bak " else echo "备份文件存在:$nginxwww.bak" fi } selectNginx # 选择nginx
上一篇文章我们简单介绍了https的原理,这篇文章我们用nginx来配置一下https的证书。 首先我们来回顾一下https的原理,首先我们看图: ? 这样我们就购买完证书了,然后根据域名去申请证书就可以了,这里和传统的证书机构申请证书还不太一样,一些其他的CA机构需要你把服务器公钥和网站信息发给客服,客服会把证书颁发给你。 之后提交申请,申请通过后,会在下面栏目中出现证书下载地址: ? 我们点击下载即可得到两个文件,这里我们选择与nginx匹配的版本: ? 两个文件如下: ? pem结尾的为公钥证书,key结尾的为服务器私钥,私钥一定不要泄露出去。 然后我们通过改写nginx的配置文件nginx.conf来配置https服务器。 第一行监听443端口,https默认端口为443,第四行开启ssl,第7行配置公钥证书,第8行配置服务器私钥。 然后重启nginx服务即可。 以上便是用nginx配置https证书的过程及原理
经常在内部环境需要将网站配置成 https,于是就有了一个需求:创建一个不会过期的 ngxix 自签名证书。于是就向 ChatGPT 提出了这个需求,得到了想要的解决方案。 提问:写一个shell脚本,读取配置文件中的参数,生成自签名证书,证书可以给nginx使用 您好,下面是一个示例 shell 脚本,它可以读取配置文件中的参数并生成自签名证书。 证书文件将保存在当前目录的 certs 目录中。 #!/bin/bash # 读取配置文件 if [ -f "./config" ]; then source . exit 1 fi # 生成证书文件 mkdir -p certs openssl req -newkey rsa:2048 -nodes -keyout certs/server.key -x509 版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://tendcode.com/article/ChatGPT-nginx-sert/ 许可协议:署名-非商业性使用 4.0
首先你必须要有自己域名的证书 无论在那个平台颁发的证书,都会给你 bundle.crt 和 key 两个文件的 【注】颁发的证书有的是兼容二级域名的,有的是不兼容二级域名的 把如下配置放在 server { } 里面 ssl on; ssl_certificate 这里填写 bundle.crt 文件的绝对路径,例如:/etc/nginx/ssl/***bundle.crt; ssl_certificate_key 这里填写 .key 文件的绝对路径,例如:/etc/nginx/ssl/***key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256
业务场景: linux nginx 域名证书到期,拿着客户给的新证书文件在nginx中对证书进行替换 1.找到原证书位置,可在nginx 配置文件中查找到 ️2.找到位置后将原文件名字 加上.old ( 需要更换两个文件 一个.pem 一个.key) 例如原文件名 a.pem mv a.pem a.pem.old 3.将新证书文件放在原目录,并重命名为原证书文件名称 例如原证书文件名称 a.pem 新加证书名称为 xxx.pem (在将原文件名称加上old后使用命令) mv xxx.pem a.pem 4.cd到sbin目录 reload nginx . /nginx -s reload 5.查询是否替换成功