ssl协议存在弱加密算法修复,禁用低版本的TLS
验证用网站:https://www.ssleye.com/ssltool/cipher_suites.html
https://www.site24x7.com/zhcn/tools/tls-checker.html

使用 nmap 对 SSL 协议进行检测,SSL协议存在弱加密算法。( nma
-sV -p 443--script ssl-enum-ciphers om.apuscn.com)
# nmap -sV -p 443 --script ssl-enum-ciphers cax.xx.cn Starting Nmap 6.40 ( http://nmap.org ) at 2024-03-12 14:55 CST
Nmap scan report for cax.xx.cn (10x.xx.x.x2)
Host is up (0.013s latency).
Other addresses for cax.xx.cn (not scanned): 10x.x.xx.234
PORT STATE SERVICE VERSION
443/tcp open ssl/https?
| ssl-enum-ciphers:
| SSLv3: No supported ciphers found
| TLSv1.0:
| ciphers:
| TLS_RSA_WITH_AES_128_CBC_SHA - strong
| TLS_RSA_WITH_AES_256_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_128_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_256_CBC_SHA - strong
| compressors:
| NULL
| TLSv1.1:
| ciphers:
| TLS_RSA_WITH_AES_128_CBC_SHA - strong
| TLS_RSA_WITH_AES_256_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_128_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_256_CBC_SHA - strong
| compressors:
| NULL
| TLSv1.2:
| ciphers:
| TLS_RSA_WITH_AES_128_CBC_SHA - strong
| TLS_RSA_WITH_AES_128_CBC_SHA256 - strong
| TLS_RSA_WITH_AES_128_CCM - strong
| TLS_RSA_WITH_AES_128_CCM_8 - strong
| TLS_RSA_WITH_AES_128_GCM_SHA256 - strong
| TLS_RSA_WITH_AES_256_CBC_SHA - strong
| TLS_RSA_WITH_AES_256_CBC_SHA256 - strong
| TLS_RSA_WITH_AES_256_CCM - strong
| TLS_RSA_WITH_AES_256_CCM_8 - strong
| TLS_RSA_WITH_AES_256_GCM_SHA384 - strong
| TLS_RSA_WITH_ARIA_128_GCM_SHA256 - strong
| TLS_RSA_WITH_ARIA_256_GCM_SHA384 - strong
| TLS_RSA_WITH_CAMELLIA_128_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256 - strong
| TLS_RSA_WITH_CAMELLIA_256_CBC_SHA - strong
| TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256 - strong
| compressors:
| NULL
|_ least strength: strong
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at http://www.insecure.org/cgi-bin/servicefp-submit.cgi :
SF-Port443-TCP:V=6.40%T=SSL%I=7%D=3/12%Time=65EFFC5F%P=x86_64-redhat-linux
SF:-gnu%r(GetRequest,CC,"HTTP/1\.1\x20404\x20Not\x20Found\r\nServer:\x20op
SF:enresty\r\nDate:\x20Tue,\x2012\x20Mar\x202024\x2006:55:27\x20GMT\r\nCon
SF:tent-Type:\x20text/html;\x20charset=UTF-8\r\nConnection:\x20close\r\nVa
SF:ry:\x20Accept-Encoding\r\nAccess-Control-Allow-Credentials:\x20true\r\n
SF:\r\n")%r(HTTPOptions,CC,"HTTP/1\.1\x20404\x20Not\x20Found\r\nServer:\x2
SF:0openresty\r\nDate:\x20Tue,\x2012\x20Mar\x202024\x2006:55:33\x20GMT\r\n
SF:Content-Type:\x20text/html;\x20charset=UTF-8\r\nConnection:\x20close\r\
SF:nVary:\x20Accept-Encoding\r\nAccess-Control-Allow-Credentials:\x20true\
SF:r\n\r\n")%r(RTSPRequest,9A,"<html>\r\n<head><title>400\x20Bad\x20Reques
SF:t</title></head>\r\n<body>\r\n<center><h1>400\x20Bad\x20Request</h1></c
SF:enter>\r\n<hr><center>openresty</center>\r\n</body>\r\n</html>\r\n")%r(
SF:RPCCheck,12F,"HTTP/1\.1\x20400\x20Bad\x20Request\r\nServer:\x20openrest
SF:y\r\nDate:\x20Tue,\x2012\x20Mar\x202024\x2006:55:33\x20GMT\r\nContent-T
SF:ype:\x20text/html\r\nContent-Length:\x20154\r\nConnection:\x20close\r\n
SF:\r\n<html>\r\n<head><title>400\x20Bad\x20Request</title></head>\r\n<bod
SF:y>\r\n<center><h1>400\x20Bad\x20Request</h1></center>\r\n<hr><center>op
SF:enresty</center>\r\n</body>\r\n</html>\r\n")%r(DNSVersionBindReq,12F,"H
SF:TTP/1\.1\x20400\x20Bad\x20Request\r\nServer:\x20openresty\r\nDate:\x20T
SF:ue,\x2012\x20Mar\x202024\x2006:55:33\x20GMT\r\nContent-Type:\x20text/ht
SF:ml\r\nContent-Length:\x20154\r\nConnection:\x20close\r\n\r\n<html>\r\n<
SF:head><title>400\x20Bad\x20Request</title></head>\r\n<body>\r\n<center><
SF:h1>400\x20Bad\x20Request</h1></center>\r\n<hr><center>openresty</center
SF:>\r\n</body>\r\n</html>\r\n")%r(DNSStatusRequest,12F,"HTTP/1\.1\x20400\
SF:x20Bad\x20Request\r\nServer:\x20openresty\r\nDate:\x20Tue,\x2012\x20Mar
SF:\x202024\x2006:55:33\x20GMT\r\nContent-Type:\x20text/html\r\nContent-Le
SF:ngth:\x20154\r\nConnection:\x20close\r\n\r\n<html>\r\n<head><title>400\
SF:x20Bad\x20Request</title></head>\r\n<body>\r\n<center><h1>400\x20Bad\x2
SF:0Request</h1></center>\r\n<hr><center>openresty</center>\r\n</body>\r\n
SF:</html>\r\n")%r(Help,12F,"HTTP/1\.1\x20400\x20Bad\x20Request\r\nServer:
SF:\x20openresty\r\nDate:\x20Tue,\x2012\x20Mar\x202024\x2006:55:33\x20GMT\
SF:r\nContent-Type:\x20text/html\r\nContent-Length:\x20154\r\nConnection:\
SF:x20close\r\n\r\n<html>\r\n<head><title>400\x20Bad\x20Request</title></h
SF:ead>\r\n<body>\r\n<center><h1>400\x20Bad\x20Request</h1></center>\r\n<h
SF:r><center>openresty</center>\r\n</body>\r\n</html>\r\n"); Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 27.18 seconds
修复建议:
修复建议:
1.打开Nginx配置文件:
sudo nano /etc/nginx/nginx.conf
2.在配置文件中找到SSL配置部分。通常在server块中的location块中配置SSL。您需要确保以下配置中包含了安全的TLS版本和密码套件。
停用不安全的TLS版本:
ssl_protocols TLSv1.2 TLSv1.3;
这将仅启用TLS 1.2和1.3版本,而禁用TLS 1.0和1.1版本。
停用弱密码套件和加密算法:
ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:!DES:!RC4:!MD5:!3DES';
这将配置Nginx使用更安全的密码套件,以及支持前向安全性的ECDHE(椭圆曲线Diffie-Hellman)密钥交换。
3.重新加载Nginx配置以使更改生效:
sudo systemctl reload nginx
修改配置:注意ssl_protocols和ssl_ciphers的值需要加上引号
git:(machangwei5) cat rewrite/2gexxch-ssl
ssl_certificate ssl/gx x x.cn.crt;
ssl_certificate_key ssl/xxx.cn.key; ssl_session_timeout 5m; ssl_protocols 'TLSv1.2';
ssl_ciphers 'Hxxxxxxxxxx5';
ssl_prefer_server_ciphers on;
效果如下
# nmap -sV -p 443 --script ssl-enum-ciphers machangweitest.xxxh.cn Starting Nmap 6.40 ( http://nmap.org ) at 2024-03-13 10:18 CST
Nmap scan report for machangweitest.xxx.cn (10x.x.x.32)
Host is up (0.013s latency).
PORT STATE SERVICE VERSION
443/tcp open ssl/https?
| ssl-enum-ciphers:
|_ SSLv3: No supported ciphers found
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at http://www.insecure.org/cgi-bin/servicefp-submit.cgi :
SF-Port443-TCP:V=6.40%T=SSL%I=7%D=3/13%Time=65F10D1C%P=x86_64-redhat-linux
SF:-gnu%r(GetRequest,CC,"HTTP/1\.1\x20404\x20Not\x20Found\r\nServer:\x20op
SF:enresty\r\nDate:\x20Wed,\x2013\x20Mar\x202024\x2002:19:08\x20GMT\r\nCon
SF:tent-Type:\x20text/html;\x20charset=UTF-8\r\nConnection:\x20close\r\nVa
SF:ry:\x20Accept-Encoding\r\nAccess-Control-Allow-Credentials:\x20true\r\n
SF:\r\n")%r(HTTPOptions,CC,"HTTP/1\.1\x20404\x20Not\x20Found\r\nServer:\x2
SF:0openresty\r\nDate:\x20Wed,\x2013\x20Mar\x202024\x2002:19:13\x20GMT\r\n
SF:Content-Type:\x20text/html;\x20charset=UTF-8\r\nConnection:\x20close\r\
SF:nVary:\x20Accept-Encoding\r\nAccess-Control-Allow-Credentials:\x20true\
SF:r\n\r\n")%r(RTSPRequest,9A,"<html>\r\n<head><title>400\x20Bad\x20Reques
SF:t</title></head>\r\n<body>\r\n<center><h1>400\x20Bad\x20Request</h1></c
SF:enter>\r\n<hr><center>openresty</center>\r\n</body>\r\n</html>\r\n")%r(
SF:RPCCheck,12F,"HTTP/1\.1\x20400\x20Bad\x20Request\r\nServer:\x20openrest
SF:y\r\nDate:\x20Wed,\x2013\x20Mar\x202024\x2002:19:13\x20GMT\r\nContent-T
SF:ype:\x20text/html\r\nContent-Length:\x20154\r\nConnection:\x20close\r\n
SF:\r\n<html>\r\n<head><title>400\x20Bad\x20Request</title></head>\r\n<bod
SF:y>\r\n<center><h1>400\x20Bad\x20Request</h1></center>\r\n<hr><center>op
SF:enresty</center>\r\n</body>\r\n</html>\r\n")%r(DNSVersionBindReq,12F,"H
SF:TTP/1\.1\x20400\x20Bad\x20Request\r\nServer:\x20openresty\r\nDate:\x20W
SF:ed,\x2013\x20Mar\x202024\x2002:19:13\x20GMT\r\nContent-Type:\x20text/ht
SF:ml\r\nContent-Length:\x20154\r\nConnection:\x20close\r\n\r\n<html>\r\n<
SF:head><title>400\x20Bad\x20Request</title></head>\r\n<body>\r\n<center><
SF:h1>400\x20Bad\x20Request</h1></center>\r\n<hr><center>openresty</center
SF:>\r\n</body>\r\n</html>\r\n")%r(DNSStatusRequest,12F,"HTTP/1\.1\x20400\
SF:x20Bad\x20Request\r\nServer:\x20openresty\r\nDate:\x20Wed,\x2013\x20Mar
SF:\x202024\x2002:19:13\x20GMT\r\nContent-Type:\x20text/html\r\nContent-Le
SF:ngth:\x20154\r\nConnection:\x20close\r\n\r\n<html>\r\n<head><title>400\
SF:x20Bad\x20Request</title></head>\r\n<body>\r\n<center><h1>400\x20Bad\x2
SF:0Request</h1></center>\r\n<hr><center>openresty</center>\r\n</body>\r\n
SF:</html>\r\n")%r(Help,12F,"HTTP/1\.1\x20400\x20Bad\x20Request\r\nServer:
SF:\x20openresty\r\nDate:\x20Wed,\x2013\x20Mar\x202024\x2002:19:13\x20GMT\
SF:r\nContent-Type:\x20text/html\r\nContent-Length:\x20154\r\nConnection:\
SF:x20close\r\n\r\n<html>\r\n<head><title>400\x20Bad\x20Request</title></h
SF:ead>\r\n<body>\r\n<center><h1>400\x20Bad\x20Request</h1></center>\r\n<h
SF:r><center>openresty</center>\r\n</body>\r\n</html>\r\n"); Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 19.05 seconds
Segmentation fault (core dumped)
但是上面,还是不行,可以用检查网站测试一下


修改为如下:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:!DES:!RC4:!MD5:!3DES';
再次检查,其他禁用,1.2启用,而1.3是不支持
验证用网站:
https://www.site24x7.com/zhcn/tools/tls-checker.html
https://www.ssleye.com/ssltool/cipher_suites.html


ssl协议存在弱加密算法修复,禁用低版本的TLS的更多相关文章
- 用了 HTTPS 还不安全,问题就出在低版本 TLS 上
HTTPS 加密时代已经来临,近两年,Google.Baidu.Facebook 等互联网巨头,不谋而合地开始大力推行 HTTPS, 2018 年 7 月 25 日,Chrome 68 上线,所有 H ...
- 基于SSL协议的双向认证 - SSL协议 [1]
1 概要说明 在互联网通信方式中,目前用的最广泛的是HTTPS配合SSL和数字证书来保证传输和认证安全了. 2 详细介绍 2.1 HTTPS HTTPS全称:Hypertext Transf ...
- 浅析nodeJS中的Crypto模块,包括hash算法,HMAC算法,加密算法知识,SSL协议
node.js的crypto在0.8版本,这个模块的主要功能是加密解密. node利用 OpenSSL库(https://www.openssl.org/source/)来实现它的加密技术, 这是因为 ...
- 阿里云服务器 通过JavaMail发送邮箱STMP问题( 25端口被禁用 使用SSL协议465端口 )
我们传统使用的比较简单的是 STMP 25端口收发邮件 今天发现刚购买的阿里云服务器不能作为客户端通过STMP 25端口发送邮件 开始在网上有说发现是JDK1.8的原因,然后自己也把JDK1.8换到了 ...
- 阿里云服务器 通过JavaMail发送邮箱STMP问题 25端口被禁用 使用SSL协议465端口
1 问题描述 我们传统使用的比较简单的是 STMP 25端口收发邮件 今天发现刚购买的阿里云服务器不能作为客户端通过STMP 25端口发送邮件 开始在网上有说发现是JDK1.8的原因,然后自己也把JD ...
- ssl协议
在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 1.首先解释一下上面的几个名词: https:在http(超文本传输协 ...
- 【转】SSL协议、SET协议、HTTPS简介
一.SSL协议简介 SSL是Secure Socket Layer的缩写,中文名为安全套接层协议层.使用该协议后,您提交的所有数据会首先加密后,再提交到网易邮箱,从而可以有效防止黑客盗取您的用户名.密 ...
- SSL协议的握手过程
SSL握手的目的 第一,客户端与服务器需要就一组用于保护数据的算法达成一致. 第二,它们需要确立一组由那些算法所使用的加密密钥. 第三,握手还可以选择对客户端进行认证. SSL 握手概述 SSL 握手 ...
- HTTPS(身披SSL协议的HTTP)
参考链接: HTTP 与 HTTPS 的区别 HTTPS科普扫盲帖 HTTPS小结 HTTP 和 HTTPS 区别 HTTP是明文传输未加密,安全性差,HTTPS(HTTP + SSL)数据传输是加密 ...
- SSL协议(HTTPS) 握手、工作流程详解(双向HTTPS流程)
原文地址:http://www.cnblogs.com/jifeng/archive/2010/11/30/1891779.html SSL协议的工作流程: 服务器认证阶段:1)客户端向服务器发送一个 ...
随机推荐
- 深入理解java的泛型
目录 简介 泛型和协变 泛型在使用中会遇到的问题 类型擦除要注意的事项 总结 简介 泛型是JDK 5引入的概念,泛型的引入主要是为了保证java中类型的安全性,有点像C++中的模板. 但是Java为了 ...
- 【直播回顾】OpenHarmony知识赋能五期第六课——子系统相机解读
5月26日晚上19点,知识赋能第五期第六节课 <OpenHarmony标准系统多媒体子系统之相机解读> ,在OpenHarmony开发者成长计划社群内成功举行. 本期课程,由深开鸿资 ...
- Python - 字典4
复制字典 您不能简单地通过输入 dict2 = dict1 来复制一个字典,因为 dict2 只会成为 dict1 的引用,对 dict1 的更改也会自动应用于 dict2. 有多种方法可以复制字典, ...
- 容器开发运维人员的 Linux 操作机配置优化建议
"工欲善其事必先利其器", 作为一个PAAS平台架构师, 容器相关技术(docker, k8s等)是必不可少的. 本文简单介绍下我自己的Linux操作机配置. 提升工作效率, 提高 ...
- CentOS 6.5快速部署HTTP WEB服务器和FTP服务器
CentOS 6.5快速部署HTTP WEB服务器和FTP服务器 时间:2014-03-29 来源:服务器之家 投稿:root 点击:210次 [题记]本文使用CentOS 6.5m ...
- Linux systemd 定时任务
哈喽大家好,我是咸鱼. 说到 Linux 定时任务,大家用得最多的就是 crond 服务,但其实 systemd 也有类似的功能.我们不但可以通过 systemd 来管理服务,还能设置定时任务,那就是 ...
- Scratch3自定义积木块之新增积木块
在Scratch3.0的二次开发中,新功能的研发和扩展离不开积木块的添加,这篇主要讲解Scratch3.0中新增积木块部分 Scratch3.0中对于新增积木块有两种方式: 1. 初始化积木块方式 ...
- JavaScript中的变量提升本质
JavaScript中奇怪的一点是你可以在变量和函数声明之前使用它们.就好像是变量声明和函数声明被提升了代码的顶部一样. sayHi() // Hi there! function sayHi() { ...
- tensorflow的variable、variable_scope和get_variable的用法和区别
在tensorflow中,可以使用tf.Variable来创建一个变量,也可以使用tf.get_variable来创建一个变量,但是在一个模型需要使用其他模型的变量时,tf.get_variable就 ...
- HarmonyOS NEXT应用开发—城市选择案例
介绍 本示例介绍城市选择场景的使用:通过AlphabetIndexer实现首字母快速定位城市的索引条导航. 效果图预览 使用说明 分两个功能 在搜索框中可以根据城市拼音模糊搜索出相近的城市,例如输入& ...