传输层安全协议(Transport Layer Security,TLS):TLS标准由互联网工程任务组(IETF)TLS工作组制定和维护。TLS在TCP/IP协议栈上运行,用于保护web流量(使用HTTPS)、文件传输、电子邮件传输和许多其他应用程序。
最为熟悉的TLS使用场景是用于保护通过超文本传输协议(HTTP)传输的web流量。在HTTPS中,建立SSL/TLS连接(通常在TCP端口443上,与不安全网站的端口80不同),然后HTTP数据通过安全连接传输。
TLS还可用于保护电子邮件传输协议(IMAP和POP,用于客户端从邮件服务器下载邮件,SMTP用于发送邮件),以及文件传输(FTP)。
TLS目前有多个版本,其中TLSv1.0存在漏洞,且已经不再被认可。我们需要在应用中禁用。在漏扫中一般被标示为:TLSVersion1.0ProtocolDetection
Windows服务器禁用TLSv1.0,可以通过注册表完成。方法:复制下面注册表代码,保存到TXT文件中,并修改该TXT文件后缀为.reg。双击该注册表文件执行。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000
Nginx禁用TLSv1.0就比较简单了,修改Nginx配置即可:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2
更改为:
ssl_protocols TLSv1.2
Apache 同理:
SSLProtocol all -SSLv2 -SSLv3 -TLSv1
不论apache,还是nginx,修改配置后哦都要重启服务。
nginx:
sudo systemctl restart nginx
apache:
sudo systemctl restart apache2
当前TLS是广泛使用的安全通信协议,安全性在整个互联网界的共同努力下,逐步提升,可以保证用户数据和隐私的安全。但是由于其历史、兼容性、实现以及部署等原因,在实际使用过程中产生了一些安全的问题,但是很快就会被打上补丁。因此,只要能够及时打上TLS的补丁,升级支持最新版的协议,禁用旧的版本,就能够有效地保护数据隐私和通信安全。