怎么讓你的Redis服務(wù)器免受黑客攻擊

最近在客戶提出了軟件運(yùn)行環(huán)境的三個安全問題,Redis未授權(quán)訪問、mysql root賬戶密碼太簡單和ftp服務(wù)器可以anonymous匿名訪問。經(jīng)過仔細(xì)檢查代碼發(fā)現(xiàn)ftp服務(wù)器已經(jīng)限制了匿名訪問,root賬戶密碼也比較好修改,只有Redis未授權(quán)訪問不太清楚是什么意思,一番溝通后才了解客戶想要什么效果。

Redis未授權(quán)訪問

Redis在默認(rèn)情況下會綁定在0:0:0:0:6379這樣的IP端口上,這樣這個端口就會暴露在互聯(lián)網(wǎng)上,沒有開啟認(rèn)證的時候任何用戶都可以訪問Redis服務(wù)器讀取Redis數(shù)據(jù),還可以利用腳本修改Redis數(shù)據(jù),可以利用Redis相關(guān)的方法寫入公鑰進(jìn)而使用對應(yīng)的私鑰訪問目標(biāo)服務(wù)器。

了解了Redis在公網(wǎng)上未授權(quán)訪問的漏洞,其危害也不用多說,很容易被黑客利用攻擊目標(biāo)服務(wù)器。

修復(fù)Redis漏洞

修改綁定的IP端口

默認(rèn)綁定的0:0:0:0:6379,所有計(jì)算機(jī)都可以訪問,我們可以綁定特定的IP,只允許特定的IP訪問,6379是默認(rèn)端口眾所周知,數(shù)字比較小的也比容易試出來,我們可以開放數(shù)字比較大的端口號如10073。我們修改Redis的配置文件redis.conf,Windows版本可能是redis.windows.conf。找到port修改端口號,然后找到bind開頭的文字,去掉注釋符號#,修改綁定IP。如下圖所示:

實(shí)際運(yùn)行環(huán)境中可以需要很多臺電腦訪問Redis服務(wù),因此修改綁定IP可能不是很適用,要看情況設(shè)置。

添加密碼驗(yàn)證

Redis默認(rèn)是沒有密碼的,我們需要添加密碼驗(yàn)證,通過驗(yàn)證才能訪問Redis,在配置文件找到requirepass開頭語句,如下圖所示:

去掉注釋符號#,設(shè)置密碼驗(yàn)證

requirepass 你的密碼

密碼盡量設(shè)置復(fù)雜一點(diǎn),由數(shù)字、字母、特殊符號組成,滿足復(fù)雜性、隨機(jī)性、不可預(yù)測性。

禁止高危命令

Redis還有一些命令設(shè)置也可能帶來隱患,應(yīng)該禁止這些命令,如遠(yuǎn)程修改DB文件地址的命令,我們可以在Redis配置文件redis.windows.conf中添加如下語句:

rename-command FLUSHALL ""

rename-command CONFIG ""

rename-command EVAL ""

此外還有應(yīng)該禁止其他用戶添加新的密鑰等等,還有在服務(wù)器上添加防火墻設(shè)置過濾規(guī)則等,在工作中我們應(yīng)該實(shí)際情況設(shè)置,保證網(wǎng)絡(luò)安全。

想了解更多精彩內(nèi)容,快來關(guān)注程序猿小董
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前陣子買的服務(wù)器,裝了docker和redis,沒設(shè)置密碼,我一直沒用也沒發(fā)現(xiàn)問題,最近用了一下,發(fā)現(xiàn)存入的數(shù)據(jù)定...
    名字是亂打的閱讀 3,692評論 2 7
  • 在Redis的開發(fā)和運(yùn)維過程中,由于對于Redis的某些特性沒有真正合理地使用,會遇到一些棘手的問題,本章將對一些...
    super_pcm閱讀 332評論 0 0
  • 超強(qiáng)、超詳細(xì)Redis入門教程 轉(zhuǎn)載2017年03月04日 16:20:02 16916 轉(zhuǎn)載自: http://...
    邵云濤閱讀 17,633評論 3 313
  • 【本教程目錄】 1.redis是什么2.redis的作者3.誰在使用redis4.學(xué)會安裝redis5.學(xué)會啟動r...
    徐猿猿閱讀 1,920評論 0 35
  • 【redis是什么】 redis是一個開源的、使用C語言編寫的,支持網(wǎng)絡(luò)交互的、可基于內(nèi)存也可持久化的key-va...
    編輯小猿閱讀 184評論 0 0

友情鏈接更多精彩內(nèi)容