針對(duì)OpenSSL安全漏洞調(diào)整Nginx服務(wù)器的方法
1. 概述
當(dāng)前爆出了Openssl漏洞,會(huì)泄露隱私信息,涉及的機(jī)器較多,環(huán)境迥異,導(dǎo)致修復(fù)方案都有所不同。不少服務(wù)器使用的Nginx,是靜態(tài)編譯 opensssl,直接將openssl編譯到nginx里面去了,這就意味著,單純升級(jí)openssl是沒(méi)有任何效果,Nginx不會(huì)加載外部的 openssl動(dòng)態(tài)鏈接庫(kù)的,必須將nginx重新編譯才可以根治。
2. 識(shí)別Nginx是否是靜態(tài)編譯的
以下三種方法都可以確認(rèn)Nginx是否靜態(tài)編譯Openssl。
2.1 查看Nginx編譯參數(shù)
輸入以下指令,查看Nginx的編譯參數(shù):
# ./sbin/nginx -V
如果編譯參數(shù)中含有--with-openssl=...,則表明Nginx是靜態(tài)編譯Openssl,如下所示:
nginx version: nginx/1.4.1 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) TLS SNI support enabled configure arguments: --prefix=/opt/app/nginx --with-http_ssl_module --with-openssl=/opt/app/openssl-1.0.1e --add-module=/opt/app/ngx_cache_purge-2.1
2.2 查看Nginx的依賴(lài)庫(kù)
為進(jìn)一步確認(rèn),可以查看一下程序的依賴(lài)庫(kù),輸入以下指令:
# ldd `which nginx` | grep ssl
顯示
libssl.so.10 => /usr/lib/libssl.so.10 (0xb76c6000)
注意:如果輸出中不包含libssl.so的文件(),就說(shuō)明是靜態(tài)編譯的Openssl的
再輸入命令以確定openssl以確定庫(kù)所屬的openssl版本,但是不會(huì)太詳細(xì),比如本應(yīng)該是1.0.1e.5.7,但是卻只輸出1.0.1e:
# strings /usr/lib/libssl.so.10 | grep "^OpenSSL " OpenSSL 1.0.1e-fips 11 Feb 2013
2.3 查看Nginx打開(kāi)的文件
也可以通過(guò)查看Nginx打開(kāi)的文件來(lái)查看是否靜態(tài)編譯,輸入以下指令:
# ps aux | grep nginx # lsof -p 111111<這里換成Nginx的進(jìn)程PID> | grep ssl
如果沒(méi)有打開(kāi)Openssl的庫(kù)文件,就說(shuō)明是靜態(tài)編譯Openssl的,如下圖所:
3. 重新編譯Nginx
在互聯(lián)網(wǎng)公司里,很少有統(tǒng)一的Nginx版本,都是各部門(mén)根據(jù)自己的業(yè)務(wù)需求選擇相應(yīng)的插件,然后自己編譯的,所以在編譯的時(shí)候一定要注意插件這塊,不 要忘記編譯某些插件,盡量保持Nginx特性不變,下面的方法可以給大家參考一下,但是一定要經(jīng)過(guò)測(cè)試才可以上線啊。
相關(guān)文章
nginx+apache+mysql+php+memcached+squid搭建集群web環(huán)境
當(dāng)前,LAMP開(kāi)發(fā)模式是WEB開(kāi)發(fā)的首選,如何搭建一個(gè)高效、可靠、穩(wěn)定的WEB服務(wù)器一直是個(gè)熱門(mén)主題,本文就是這個(gè)主題的一次嘗試。2011-03-03nginx帶寬限制?limit_rate?limit_rate_after指令
這篇文章主要為大家介紹了nginx帶寬限制?limit_rate?limit_rate_after指令詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因
一般在訪問(wèn)某些網(wǎng)站或者我們?cè)谧霰镜販y(cè)試的時(shí)候,服務(wù)器突然返回502?Bad?Gateway?Nginx,這種問(wèn)題相信大家也遇到不少了,下面這篇文章主要給大家介紹了關(guān)于Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08Linux下安裝MongoDB的實(shí)現(xiàn)步驟
這篇文章主要介紹了Linux下安裝MongoDB的實(shí)現(xiàn)步驟的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家輕松安裝,需要的朋友可以參考下2017-10-10Nginx rewrite跳轉(zhuǎn)應(yīng)用場(chǎng)景詳解
這篇文章主要介紹了Nginx rewrite跳轉(zhuǎn)應(yīng)用場(chǎng)景詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Nginx虛擬主機(jī)的搭建的實(shí)現(xiàn)步驟
本文主要介紹了Nginx虛擬主機(jī)的搭建的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01nginx的keepalive相關(guān)參數(shù)使用源碼解讀
這篇文章主要為大家介紹了nginx的keepalive相關(guān)參數(shù)使用源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12詳解Nginx http資源請(qǐng)求限制(三種方法)
這篇文章主要介紹了Nginx http資源請(qǐng)求限制,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05