【问题标题】:Laravel Framework: How to make Compatible to TLS 1.2Laravel 框架:如何兼容 TLS 1.2
【发布时间】:2019-01-10 23:23:29
【问题描述】:

我使用 Laravel 框架 5.4 版创建了一个内容管理系统 (CMS) 我们的服务器正在为 TLS 1.0 运行,我们网站的安全检查器在升级后升级到 TLS 1.2,他们说我的 laravel 框架现在不兼容 TLS 1.2。

问题: 如何让我的 laravel 代码兼容 TLS 1.2

谢谢。

【问题讨论】:

    标签: php laravel ssl


    【解决方案1】:

    我不认为 laravel 必须对 TLS 做任何事情。它必须是你的网络服务器(apache 或 nginx)。配置您的网络服务器以支持 TLS 1.2

    对于 apache,你可以看看这个答案

    https://serverfault.com/questions/314858/how-to-enable-tls-1-1-and-1-2-with-openssl-and-apache

    对于 Nginx 你可以看看这个

    https://askubuntu.com/questions/319192/how-to-enable-tls-1-2-in-nginx

    您可能将 Guzzle 与 TSL 1.0 一起使用,请将其配置为支持 1.2。这是链接

    How do we specify TLS/SSL options in Guzzle?

    为了支持 mysql 使用 TLS 1.2 在my.cnf中这样配置它

    [mysqld]
    tls_version=TLSv1.1,TLSv1.2
    

    详情请查看https://dev.mysql.com/doc/refman/5.7/en/encrypted-connection-protocols-ciphers.html

    注意: 在 MySQL 5.7.10 之前,MySQL 仅支持 TLSv1,两者都支持 OpenSSL 和 yaSSL,不存在系统变量或客户端选项 指定允许的 TLS 协议。

    【讨论】:

    • 那么你的 laravel 应用程序受到 TLS 1.2 的保护
    • 是的,但问题是 SSL 和 TLS 1.2 之间存在冲突,发生的情况是我们无法修改网站的内容。像数据库连接一样,它仍然指向旧数据库。连连接字符串都更新为新的。
    • 检查您的Guzzle 客户端是否使用 TLS 1.0,如果是,则强制它使用 TLS 1.2。更新了我的答案检查它。还要检查是否有任何使用 TLS 1.0 的 api,然后也将它们配置为使用 1.2
    • 但我没有在我的应用程序中安装任何 Guzzle 客户端。
    • 你检查过你的 mysql,它是否配置为支持 TLS 1.2。我认为默认它支持 1.0
    猜你喜欢
    • 1970-01-01
    • 2017-12-19
    • 2016-09-13
    • 2017-08-31
    • 2019-09-20
    • 2023-04-10
    • 1970-01-01
    • 2017-07-18
    • 2017-12-04
    相关资源
    最近更新 更多