闲着没事,升级了下nginx -V,成功升级了,但是发现了个了不起的事情!
nginx version: nginx/1.13.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
built with OpenSSL 1.0.2k 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.0.2k --with-pcre=../pcre-8.40 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=../ngx_cache_purge-2.3
我nginx默认编译的是--with-openssl=../openssl-1.0.2k,但是前几天用命令openssl version -v查看了下我的openssl版本是OpenSSL 1.0.1e-fips 11 Feb 2013,很老的版本了,一直没更新,于是,强迫症让我不得不对openssl做一次升级,升级到nginx编译的版本!
本站环境:oneinstack, centos版本:7,nginx版本:1.13.0
下载openssl
cd oneinstack/src
wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz
tar -zvxf openssl-1.0.2k.tar.gz
cd openssl-1.0.2k
完成上面的步骤了,我们就可以编译新版本的openssl了!
编译openssl
./config
make
make test
make install
编译完成后,再次查看openssl版本,你会发现,依然是老版本
[root@gainetzmizea openssl-1.0.2k]# openssl version -v
OpenSSL 1.0.1e-fips 11 Feb 2013
不要急,下面这个步骤你需要完成!
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
依次完成命令,再次查看版本
[root@gainetzmizea openssl-1.0.2k]# openssl version
OpenSSL 1.0.2k 26 Jan 2017
可以看到openssl完美升级了!
至于新版本编译到nginx中,因为本来nginx编译的就是这个版本,我就不多加赘述,大家自行依葫芦画瓢!
您可以查阅