加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

Nginx的前向保密(CentOS6)

发布时间:2020-12-13 21:08:32 所属栏目:Nginx 来源:网络整理
导读:我正在尝试使用nginx webserver在CentOS中启用前向保密. 我试过的 我已经阅读了一些教程,看起来我们应该有nginx,openssl最新版本来启用它.所以我从源代码安装了最新的openssl. sudo wget http://www.openssl.org/source/openssl-1.0.1e.tar.gzsudo tar -xvzf

我正在尝试使用nginx webserver在CentOS中启用前向保密.

我试过的
我已经阅读了一些教程,看起来我们应该有nginx,openssl最新版本来启用它.所以我从源代码安装了最新的openssl.

sudo wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
sudo tar  -xvzf openssl-1.0.1e.tar.gz
cd openssl-1.0.1e
sudo ./config --prefix=/usr/local
sudo make 
sudo make install

现在OpenSSL支持Eliptic Curve密码(ECDHE).我用openssl s_server测试了这个.它运作良好.

接下来,我用最新的替换了Nginx.

sudo wget  http://nginx.org/packages/centos/6/x86_64/RPMS/nginx-1.4.2-1.el6.ngx.x86_64.rpm
sudo rpm -e nginx
sudo rpm -ivh  nginx-1.4.2-1.el6.ngx.x86_64.rpm

并配置Nginx,如此链接中所述

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA256:EECDH+aRSA+RC4:EDH+aRSA:EECDH:RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS;

http://baudehlo.wordpress.com/2013/06/24/setting-up-perfect-forward-secrecy-for-nginx-or-stud/

但现在Nginx不支持ECDHE密码.它支持DHE密码.我尝试在nginx中启用ECDHE密码仍然无法正常工作.我正在使用最新的网络浏览器(chrome 29并支持此密码)

我错过了什么吗?或者与CentOS或Nginx有问题?我读过ECC专利与CentOS有关的地方,这是否会引起问题?

你是对的,由于专利问题,RedHat(以及因此在CentOS的)openssl中的ECC被禁用;有关详细信息,请参阅(例如)this bugzilla entry.请注意,任何人打开一个新的跟踪器以进行评估时,它都会被关闭作为这个跟踪器的副本,因此不要被跟踪器的年龄所迷惑,认为这是一个失效的问题(旁注:尽管大多数bugzilla都是坏消息,我确实喜欢RH的评论’请注意:“Ubuntu这样做”从来都不是一个可行的法律论据.“).

你已经正确地认为,绕过这将意味着编译你自己的openssl,这很好.但是,这样做之后,你不能简单地安装打包的二进制文件,并期望它们神奇地拿起你的新库,因为它们不会.

您需要重新编译openssl,例如–prefix = /usr/local / openssl-custom,然后将其安装到新位置,然后从源代码编译nginx,注意告诉它编译并链接新库(我不能给你一个标准的咒语,因为它因包而异,但是-with-ssl = /usr/local / openssl-custom有时可能是正确的选择).

如果你需要任何其他工具来使用nginx,而且其中任何一个都有openssl依赖(现在,那些没有?),你也可能需要编译它们.

请让我以此劝阻你.这是很多工作;编译是最不重要的,然后你必须保持在你构建的软件包的所有新版本之上,并在它们发生变化时重建它们.我不知道为什么你决定需要Forward Secrecy,但是我强烈怀疑你会因为启用补丁而导致自己出现更多的安全问题.

另请注意上面链接的bugzilla条目中的注释43和90;如果通过Forward Secrecy,你的意思是完全向前保密(PFS),那么启用PFS似乎不需要ECC.或者等到it looks like we’re getting ECC as of RHEL6.5 (C6.5).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读