修改NGINX版本名稱偽裝任意WEB SERVER

2022-07-28 02:03:11 字數 1629 閱讀 3567

無論是作為web伺服器或其他型別程式的反向**伺服器,nginx("engine x")都有著高效能且輕量級的優勢。其特點是占有記憶體少,併發能力強,事實上nginx的併發能力確實在同型別的網頁伺服器中表現較好。這也使得nginx在如今不管是存放在高配獨立伺服器上的大型的門戶,還是存放在迷你64m記憶體vps上的小型的個人部落格,nginx都在被廣泛使用著。

今天我們來說說,如何修改nginx其內部預設名稱。這對安全或者裝逼都是非常實用的。

我們都知道一般nginx有哪些內部名稱展示,如有通過http response

header中的server、錯誤頁的footer、fpm-fastcgi等。

一般來說修改3個位置,乙個是nginx.h、另乙個是ngx_http_header_filter_module.c、還有乙個ngx_http_special_response.c。

現在web server使用廣泛,針對它的攻擊也越來越多,nginx這玩意出道時間也並不長,雖然國內很多門戶**都用它,小記憶體vps使用者也愛它,但是我可不想哪天它爆出了個驚天bug,上次80sec公布的nginx相關php fpm漏洞就是警示哦,倘若偽裝了我的nginx伺服器,攻擊者就不知道我使用的是何種web server,也就無從下手了。

修改src/core/nginx.h(nginx內部名稱的)

#define nginx_version      "1.8.0"

#define nginx_ver "nginx/" nginx_version

nginx_version是版本號,nginx_ver是名稱

修改src/http/ngx_http_header_filter_module.c(http responseheader

修改src/http/ngx_http_special_response.c(修改錯誤頁的底部footer)

為什麼不修改安裝後的nginx config下的fastcgi.conf呢?

因為現在外部已經是無法了解我們的伺服器名稱,已經達到我們的目的了。

而且我們常用的一些程式,可能會對你的前端(反向**伺服器)做判斷,畢竟nginx不同於apache,無法動態規則。

特別是wordpress的快取外掛程式,大多會通過判斷你是否nginx,如果是的話,提醒你新增一些規則語句。

這時fastcgi.conf就起作用的,其中的

fastcgi_param server_software

nginx/$nginx_version;可以使得php與nginx內部之間的互相了解。

所以我的建議,還是不修改fastcgi.conf,當然你非要改,也可以的。

debian 版本名稱

debian 一直維護著至少三個發行版 穩定版 stable 測試版 testing 和 不穩定版 unstable 穩定版 stable 穩定版包含了 debian 官方最近一次發行的軟體包。作為 debian 的正式發行版本,它是我們優先推薦給使用者您選用的版本。當前 debian 的穩定版版本...

Android各版本名稱

最初的測試版本叫astro 阿童木 1.0叫bender 發條機械人 後面都用甜點命名了。1.5 cupcake 紙杯蛋糕 1.6 donut 甜甜圈 2.1 eclair 鬆餅 2.2 froyo 凍酸奶 2.3 gingerbread 薑餅 3.0 honeycomb 蜂巢 4.0 ice cr...

eclipse版本名稱由來

今天在網上查了下eclipse版本名稱的由來,發現轉來轉去的那些文章有些問題。如 文章基本上有兩問題,乙個是eclipse 3.1的版本代號為io,這個是沒有的事。還有就是3.1 3.4是根據這四顆衛星距離木星從近到遠的順序。這不對。還有說是發現時間排序,這個也不對。事實上,eclipse的版本代號...