标签: ssl

修复在 RHEL 4 上运行的 Apache 2.0 上的 BEAST 漏洞

我有一个在 RHEL4 上运行 Apache 2.0 的 Web 服务器。此服务器最近未能通过 PCI 扫描。

原因:SSLv3.0/TLSv1.0 协议弱 CBC 模式漏洞 解决方案:此攻击在 2004 年和 TLS 协议的后续修订版中发现,其中包含对此的修复。如果可能,请升级到 TLSv1.1 或 TLSv1.2。如果无法升级到 TLSv1.1 或 TLSv1.2,则禁用 CBC 模式密码将消除该漏洞。在 Apache 中使用以下 SSL 配置可缓解此漏洞: SSLCipherSuite RC4-SHA:HIGH:!ADH 上的 SSLHonorCipherOrder

简单的修复,我想。我将这些行添加到 Apache 配置中,但它不起作用。显然,
“SSLHonorCipherOrder On”仅适用于 Apache 2.2 及更高版本。我尝试升级 Apache,很快就遇到了依赖关系,看来我必须升级整个操作系统才能升级到 Apache 2.2。我们将在几个月后停用此服务器,因此不值得。

解决方案说“如果无法升级到 TLSv1.1 或 TLSv1.2,则禁用 CBC 模式密码将消除该漏洞。”

我将如何在 Apache 2.0 上执行此操作?这甚至可能吗?如果没有,还有其他解决方法吗?

ssl tls apache-2.2

11
推荐指数
2
解决办法
2万
查看次数

10
推荐指数
1
解决办法
3万
查看次数

如何使用命令行 curl 指定 SSL 端口?

我正在尝试在我的一台服务器上测试 SSL 连接。服务器位于 LB 后面,因此它正在侦听端口 8090 上的 SSL 连接。

--resolve在与侦听端口 443 的 LB 通话时,我使用该选项进行测试。

curl --resolve 'myservice.com:443:1.1.1.1' 'https://myservice.com'
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时:

curl --resolve 'myservice.com:8090:2.2.2.2' 'https://myservice.com:8090'
Run Code Online (Sandbox Code Playgroud)

curl 只是忽略端口并使用 443。当然,这会导致 DNS 缓存丢失,我最终使用公共 DNS IP ...

* Added myservice.com:8090:2.2.2.2 to DNS cache
* About to connect() to myservice.com port 443 (#0)
*   Trying 3.3.3.3...
* Connected to myservice.com (3.3.3.3) port 443 (#0)
Run Code Online (Sandbox Code Playgroud)

如何强制 curl 使用端口 8090 进行 SSL 连接?

谢谢。

ssl port curl

10
推荐指数
2
解决办法
7万
查看次数

使用 Nginx 和 SNI

到目前为止,我还没有将 SNI 与 nginx 一起使用。但是由于 IP 地址池已被填满并且商业 XP 支持即将停止(最终)我正在考虑将一些站点转换为 SNI。

我知道 SNI 可能带来的一般限制和陷阱(XP 问题,非常旧的浏览器)。但除此之外还有什么我应该注意的吗?

像 - 使用 SNI 时与 nginx 相关的陷阱 - 最近(值得注意!)浏览器的问题/错误

ssl nginx sni

10
推荐指数
2
解决办法
8774
查看次数

何时应该在 nginx ssl 设置中使用 ssl_session_cache 参数

ssl_session_cache当我使用 https 时,在 nginx.conf 中设置有什么好处?见这里

ssl nginx

10
推荐指数
1
解决办法
8898
查看次数

网络服务器随机服务于不同的虚拟主机

我们已经在 Ubuntu Trusty 上运行了 nginx。它通过 https 为多个网站提供服务,运行在一个 IP 地址上。

随机地,虽然它似乎与工作负载略有关系,但有时单个请求会出现在错误的虚拟主机上。这导致请求lustrum.thalia.nu被服务,thalia.nu反之亦然。当用户突然进入不同的网站时,这会产生令人讨厌的错误页面。当您按下 时F5,用户将再次到达原始目标。

它似乎与浏览器或操作系统无关。已确认在 Firefox(Linux、Windows、Mac)、Edge(Windows)和 Chrome(Linux、Windows、Android)和 Safari(iOS)上发生。

当系统处于负载状态时,该问题似乎更频繁地发生,这表明存在某种竞争条件。

lustrum.thalia.nu

server {
        server_name lustrum.thalia.nu;

        listen 443 ssl;

        ssl on;
        ssl_certificate /etc/nginx/certs/lustrum.thalia.nu.crt;
        ssl_certificate_key /etc/nginx/certs/lustrum.thalia.nu.key;

        add_header Strict-Transport-Security "max-age=63072000; preload";

        root /var/www/thalia-lustrum/public_html;

        location / {
                index index.php;
                try_files $uri $uri/ /index.php?$args;
        }

        # Add trailing slash to */wp-admin requests.
        rewrite /wp-admin$ $scheme://$host$uri/ permanent;

        # Pass all .php files onto a php-fpm/php-fcgi server.
        location ~ [^/]\.php(/|$) {
                include         /etc/nginx/fastcgi_params;

                fastcgi_split_path_info ^(.+?\.php)(/.*)$; …
Run Code Online (Sandbox Code Playgroud)

ssl nginx virtualhost php-fpm tls

10
推荐指数
1
解决办法
350
查看次数

Postfix 和 Dovecot 是否支持 OCSP 装订?

由于我想在我的 SSL 证书中设置“必须装订”属性,我正在做一些研究,以确定我的所有服务是否都支持 OCSP 装订。到目前为止,我发现 Apache 可以使用 SSLLabs.com 进行确认。

但除此之外,我无法确认我的其他两个服务(SMTP 和 IMAP)是否也支持 OCSP 装订。现在我的问题是,Postfix 和 Dovecot 是否也支持它?

PS:我知道证书在邮件传输方面似乎并不重要,但我想避免任何可能的问题,如果我添加属性并且客户端可能因此拒绝工作,而其他人可能从中受益。

ssl postfix dovecot ocsp

10
推荐指数
1
解决办法
3547
查看次数

让我们加密:仅从证书中删除一个主机名

我有以下证书:

# certbot certificates
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Found the following certs:
 Certificate Name: domain.example
  Domains: domain.example imap.domain.example mail.domain.example pop.domain.example smtp.domain.example www.domain.example
  Expiry Date: 2019-09-09 03:34:20+00:00 (VALID: 62 days)
  Certificate Path: /etc/letsencrypt/live/domain.example/fullchain.pem
  Private Key Path: /etc/letsencrypt/live/domain.example/privkey.pem
Run Code Online (Sandbox Code Playgroud)

现在我想做的是从证书中删除domain.example和,因为 Web 服务器已移动到另一个实例。www.domain.example事实上,DNS 条目已更改意味着,如果domain.examplewww.domain.example仍然是证书的一部分,则续订过程将会失败,因为 DNS 条目现在指向另一个 IP。

如何从 Let's Encrypt 证书中删除某些主机名,而不删除证书并创建新证书?

ssl ssl-certificate lets-encrypt

10
推荐指数
2
解决办法
1万
查看次数

如何在我自己的服务器上设置加密 SNI?

我有运行多个虚拟主机的 Web 服务器,我想让窃听者不知道客户端正在访问哪个虚拟主机。已经有一个 TLS 扩展可以解决这个问题:加密 SNI。我看到 Cloudflare 在其服务器上支持它,并且 Firefox 有一个设置可以在客户端上启用它。但是,我找不到有关如何在我自己的服务器上启用此功能的任何文档。我该怎么做呢?(我不依赖于任何特定的服务器堆栈,除了“将其置于 Cloudflare 之后”之外,我将接受任何工作设置/架构。)

ssl virtualhost

10
推荐指数
1
解决办法
8856
查看次数

Google Chrome 认为 A+ 评级仍然不安全

我在DigitalOcean上配置我的服务器,虽然我从 ssllabs 获得了 A+ 评级,

https://www.ssllabs.com/ssltest/analyze.html?d=zandu.biz

当我连接到我的网站https://www.zandu.bizhttps://zandu.biz 时,我在 Chrome 中收到不安全通知。

我该如何解决这个问题?

ssl apache-2.4 lets-encrypt

10
推荐指数
1
解决办法
5421
查看次数