您的位置:首页 > 运维架构

OpenSSL漏洞升级修复

2014-04-13 13:18 381 查看
最近OpenSSL的漏洞让人都不敢登陆网银、淘宝这些网站了。

于是我也倒360 OpenSSL“心血”漏洞检查

检测我自己的微信后台开发网站,看看有没有漏洞,还真有。所以就得解决了,先是谷歌了一下,看看别人怎么修复的。

这里 http://blog.csdn.net/dcwnb1/article/details/23444807 写得很好。如下,是他的方法:

先进行支撑包的安装:

yum install -y zlib

openssl升级步骤:

0. 首先通过 #openssl version –a 查看系统中存在的OpenSSL版本号

下载最新版本的openssl源码包

# wget ftp://ftp.openssl.org/source/openssl-1.0.1g.tar.gz
2. 安装openssl

1. tar xzvf openssl-1.0.1g.tar.gz

2. cd openssl-1.0.1g

3. ./config shared zlib

4. make 在这里我系统没有GCC ,需要安装GCC,然后又没有安装 zlib-devel,又需要安装这个,其他的都一样

5. make install

6. mv /usr/bin/openssl /usr/bin/openssl.OFF

7. mv /usr/include/openssl /usr/include/openssl.OFF

8. ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

9. ln -s /usr/local/ssl/include/openssl /usr/include/openssl

配置库文件搜索路径

10. echo “/usr/local/ssl/lib” >> /etc/ld.so.conf

11. ldconfig -v

但是我在第4步的时候,出现问题了,提示如下:

make[1]: gcc:命令未找到
make[1]: *** [cryptlib.o] 错误 127
make[1]: Leaving directory `/root/openssl-1.0.1g/crypto'
make: *** [build_crypto] 错误 1

于是就安装gcc 两个命令
1.[root@server openssl-1.0.1g]# yum
-y install gcc
2.[root@server
openssl-1.0.1g]# yum -y install gcc-c++
3.[root@server
openssl-1.0.1g]# yum install make

安装完gcc ,接着继续 第4步 make ,但是又报错了,错误如下 ,只贴一部分。

c_zlib.c:25:18: 错误:zlib.h:没有那个文件或目录
c_zlib.c:133: 错误:expected specifier-qualifier-list before ‘z_stream’
c_zlib.c: 在函数‘zlib_stateful_init’中:
c_zlib.c:148: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:149: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:150: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:150: 错误:‘Z_NULL’未声明(在此函数内第一次使用)
c_zlib.c:150: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
c_zlib.c:150: 错误:所在的函数内也只报告一次。)
c_zlib.c:151: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:152: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:153: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:154: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:155: 警告:隐式声明函数‘inflateInit_’
c_zlib.c:155: 错误:‘struct zlib_state’没有名为‘istream’的成员
c_zlib.c:156: 错误:‘ZLIB_VERSION’未声明(在此函数内第一次使用)
c_zlib.c:156: 错误:‘z_stream’未声明(在此函数内第一次使用)
c_zlib.c:157: 错误:‘Z_OK’未声明(在此函数内第一次使用)
c_zlib.c:160: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:161: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:162: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:163: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:164: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:165: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:166: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:167: 警告:隐式声明函数‘deflateInit_’
c_zlib.c:167: 错误:‘struct zlib_state’没有名为‘ostream’的成员
c_zlib.c:167: 错误:‘Z_DEFAULT_COMPRESSION’未声明(在此函数内第一次使用)
c_zlib.c: 在函数‘zlib_stateful_finish’中:

这个是因为zlib-devel 没有安装的原因。然后又安装zlib-devel

[root@server openssl-1.0.1g]# yum install zlib-devel

安装完成后,接着执行第4步,make 然后就 能正常,接着继续执行其他步奏就OK了。

最后 使用 命令 查看版本,升级成功。但是360检测还是有漏洞,不知道为什么会这样。
[root@server ~]# openssl version
OpenSSL 1.0.1g 7 Apr 2014
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: