linux – 如何在openssl中启用EVP功能?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 如何在openssl中启用EVP功能?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1532字,纯文字阅读大概需要3分钟。
内容图文
![linux – 如何在openssl中启用EVP功能?](/upload/InfoBanner/zyjiaocheng/950/8affb6c6ff8046f8a4ac18d7211eb247.jpg)
我正在尝试使用heartbleed补丁(1.0.1g)将我的Web服务器更新到最新的openssl.我从openssl.org抓起了tarball.通常说./configure;使; make install.
不得不说配置共享以使其生成.so文件(默认情况下它只生成.a).更新了/usr/lib64中的链接以指向新的.so –
现在httpd无法运行以下投诉:
/usr/sbin/httpd: symbol lookup error: /usr/lib64/libssl.so.1: undefined symbol: EVP_idea_cbc
nm -g | grep想法说:U EVP_idea_cbc
…所以它知道符号,但符号是未定义的.
Openssl文档说,由于专利(显然在2012年到期),他们默认禁用IDEA.他们详细介绍了如何禁用它,但没有详细说明如何启用它.此外,他们说它默认是禁用的.
Apache httpd需要符号,没有它就不会启动.
我试过说“config shared enable-idea”并且配置脚本很开心,但是在构建之后该符号仍未定义.我将构建输出传送到一个文件中,并且正在编译加密/构思文件.
从EVP_ *开始的每个符号都是未定义的…它们在libssl.a中也是未定义的…所以也许我正在咆哮错误的IDEA树?
所以我的问题变成了 – 如何启用这些EVP_ *符号?
解决方法:
我解决了问题很简单.这些符号在libssl.so(或.a)中确实未定义.它们实际上是在libcrypto.so中定义的.我没有得到新的libcrypto.so因为….
…新的openssl tarball默认在/usr/local/ssl中安装其输出.这是可配置的,但它确实想在/ something / something / ssl中安装所有ssl东西(包括libs).所以你有/ something / something / ssl / lib,/ something / something / ssl / bin等.
所以当我说make install时,它创建了/usr/local/ssl,其中包含了所有好东西.一世
在openssl.so.1.0.0中的/usr/lib64中创建了一个符号链接 – > /usr/local/etc/ssl/lib/openssl.so.1.0.0.但我没有意识到我需要为libcrypto.so做同样的事情,所以仍然有旧的东西.
所以我使用的是新的libssl.so和一个旧的libcrypto.so.坏魔鬼.
内容总结
以上是互联网集市为您收集整理的linux – 如何在openssl中启用EVP功能?全部内容,希望文章能够帮你解决linux – 如何在openssl中启用EVP功能?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。