Nginx中安装免费SSL证书开启Https请求(下)

简介: 在部分场景中,我们必须使用 https 请求,因为 https 请求更为安全,常用于支付方面的请求调用

如果获取成功,你的密钥和证书存放在 /etc/letsencrypt/live/xxx.com/ 目录下

错误解决:

  • 1、ImportError: cannot import name UnrewindableBodyError

解决办法,重装 urllib3 库,执行命令

pip uninstall urllib3

卸载 urllib3 库

pip install urllib3

安装 urllib3 库

  • 2、pkg_resources.DistributionNotFound: The ‘urllib3<1.23,>=1.21.1’ distribution was not found and is required by requests

执行命令

easy_install urllib3==1.21.1
  • 3、ImportError: ‘pyOpenSSL’ module missing required functionality. Try upgradin

执行命令

pip install --upgrade --force-reinstall 'requests==2.6.0'

以上就是我遇到的三个问题,期间会有询问的地方,输入 y 即可

以上错误解决完后,再次输入命令获取 ssl 证书

certbot certonly --webroot -w /usr/local/nginx/html/ -d xxx.com -m xxxxxx@xxx.com --agree-tos

没错误,就能够在 /etc/letsencrypt/live/xxx.com/ 目录下看到你的 ssl 证书了

注意: 该证书 90 天有效,到期需要重新申请,你也可以通过定时任务来定时更新 ssl 证书

4、配置 nginx HTTPS server

编辑 nginx 的配置文件

cd /usr/local/nginx/conf/

编辑 nginx.conf 文件

vim nginx.conf

在 server {} 后面加入以下内容

# HTTPS server
server {
  # 监听端口,默认443
  listen 443 ssl;
  # 你的域名
  server_name xxx.com;
  # 你证书的位置
  ssl_certificate      /etc/letsencrypt/live/xxx.com/fullchain.pem;
  ssl_certificate_key  /etc/letsencrypt/live/xxx.com/privkey.pem;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers  on;
  # 默认首页
  location / {
    root   html;
           index  index.html index.htm;                   
  }
}

5、访问测试

重启 nginx,进入 sbin 目录

cd /usr/local/nginx/sbin

输入命令

./nginx -s reload

浏览器访问

https://xxx.com

表示,我们的 ssl 证书生效,https 配置成功

目录
相关文章
|
3天前
|
安全 API 网络安全
使用OkHttp进行HTTPS请求的Kotlin实现
使用OkHttp进行HTTPS请求的Kotlin实现
|
12天前
|
存储 网络安全
Curl error (60): SSL peer certificate or SSH remote key was not OK for https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/repodata/repomd.xml [SSL: no alternative certificate subject name matches target host name 'update.cs2c.com.cn']
【10月更文挑战第30天】在尝试从麒麟软件仓库(ks10-adv-os)下载元数据时,遇到 SSL 证书验证问题。错误提示为:`Curl error (60): SSL peer certificate or SSH remote key was not OK`。可能原因包括证书不被信任、证书与域名不匹配或网络问题。解决方法包括检查网络连接、导入 SSL 证书、禁用 SSL 证书验证(不推荐)、联系仓库管理员、检查系统时间和尝试其他镜像。
34 1
|
14天前
|
安全 网络安全 数据安全/隐私保护
政务单位IP地址https证书
政务单位IP地址HTTPS证书是一种专为只有IP地址而无域名的政务网站设计的数字证书,用于加密通信、确保数据安全并提升用户信任度。申请流程包括选择证书颁发机构、提交申请并验证、部署证书等步骤。证书有效期通常为一年或多年,需定期更新以确保安全性。
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
1月前
|
存储 网络安全 对象存储
缺乏中间证书导致通过HTTPS协议访问OSS异常
【10月更文挑战第4天】缺乏中间证书导致通过HTTPS协议访问OSS异常
86 4
|
1月前
|
安全 算法 量子技术
【HTTPS】中间人攻击和证书的验证
【HTTPS】中间人攻击和证书的验证
50 1
|
1月前
|
存储 缓存 安全
https访问提示不安全,证书密钥验证上如何解决
【10月更文挑战第4天】访问提示不安全,证书密钥验证上如何解决
254 2
|
1月前
|
应用服务中间件 nginx
nginx反向代理与证书设置
nginx反向代理与证书设置
40 3
|
2月前
|
Linux Docker Windows
Docker配置https证书案例
本文介绍了如何为Docker的Harbor服务配置HTTPS证书,包括安装Docker和Harbor、修改配置文件以使用证书、生成自签名证书、配置证书以及验证配置的步骤。
159 2
Docker配置https证书案例
|
1月前
|
应用服务中间件 网络安全 nginx
nginx如何代理ssl
nginx如何代理ssl