Redis安全規(guī)范—-check list.
1.信任的內(nèi)網(wǎng)運(yùn)行,盡量避免有公網(wǎng)訪問
在/etc/redis/redis.conf中配置如下: bind 127.0.0.1
2.綁定redis監(jiān)聽的網(wǎng)絡(luò)接口
如果服務(wù)器有多個(gè)IP,可限定redis server監(jiān)聽的IP,通過redis配置項(xiàng)bind,可同時(shí)綁定多個(gè)IP
3.設(shè)置防火墻
如果需要其他機(jī)器訪問,或者設(shè)置了slave模式,那就記得加上相應(yīng)的防火墻設(shè)置,命令如下:
iptables -A INPUT -s x.x.x.x -p tcp --dport 6379 -j ACCEPT
4.禁止root用戶啟動(dòng)redis
設(shè)置一個(gè)單獨(dú)的redis賬戶很有必要,redis crackit就利用到了root用戶的特性來重置authorized_keys。首先創(chuàng)建一個(gè)redis賬戶,然后通過該賬戶啟動(dòng)。
setsid sudo -u redis /usr/bin/redis-server /etc/redis/redis.conf
啟動(dòng)之后應(yīng)該如下:
root@kali:~# ps -elf|grep redis 1 S redis 14720 1 0 80 0 - 8979 - 08:40 ? 00:00:00 /usr/bin/redis-server /etc/redis/redis.conf` `
5.限制redis文件目錄訪問權(quán)限
設(shè)置redis的主目錄權(quán)限為700,如果redis配置文件獨(dú)立于redis主目錄,權(quán)限修過為600,因?yàn)閞edis密碼明文存儲(chǔ)在配置文件中.
6.避免使用熟知的端口,降低被初級(jí)掃描的風(fēng)險(xiǎn)
在/etc/redis/redis.conf中配置如下
找到port 6379這行,把6379改為8888
7.開啟redis密碼認(rèn)證,并設(shè)置高復(fù)雜度密碼
redis在redis.conf配置文件中,設(shè)置配置項(xiàng)requirepass, 開戶密碼認(rèn)證。
redis因查詢效率高,auth這種命令每秒能處理10w次以上,簡(jiǎn)單的redis的密碼極容易為***者暴破。
root@kali:~# redis-cli -h 192.168.10.2 redis 192.168.10.2:6379> keys * (error) ERR operation not permitted redis 192.168.10.2:6379> auth @nsF0cus!@# OK
root@kali:~# echo -e "xxlegend"|sha256sum b59869cac63a67e7ee97e6923a75811ff58bd4936ed3be3480b46145d43ae335`
8.禁用或者重命名危險(xiǎn)命令
這個(gè)漏洞就利用config/save兩個(gè)命令完成*** 。 因redis無用戶權(quán)限限制,建議危險(xiǎn)的命令,使用rename配置項(xiàng)進(jìn)行禁用或重命名,這樣外部不了解重命名規(guī)則***者,就不能執(zhí)行這類命令。涉及到的命令:
FLUSHDB, FLUSHALL, KEYS, PEXPIRE, DEL, CONFIG, SHUTDOWN, BGREWRITEAOF, BGSAVE, SAVE, SPOP, SREM, RENAME, DEBUG, EVAL`
以下示例:redis.config文件禁用FLUSHDB、FLUSHALL兩個(gè)命令;重命名CONFIG、SHUTDOWN命令,添加一個(gè)特殊的后綴。 這樣redis啟動(dòng)后,只能運(yùn)行CONFIG_b9fc8327c4dee7命令,不能執(zhí)行CONFIG命令。
rename-command CONFIG CONFIG_b9fc8327c4dee7 rename-command SHUTDOWN SHUTDOWN_b9fc8327c4dee7 rename-command FLUSHDB “” rename-command FLUSHALL “”
上述配置將config,flushdb,flushall設(shè)置為了空,即禁用該命令,我們也可以命名為一些***者難以猜測(cè),我們自己卻容易記住的的名字。保存之后,執(zhí)行/etc/init.d/redis-server restart 重啟生效。
9.禁止redis中存儲(chǔ)敏感的明文數(shù)據(jù)
Redis設(shè)計(jì)旨在提供高性能的KV服務(wù),至少目前在權(quán)限訪問控制和數(shù)據(jù)持久化方面比較弱化。所以禁止在Redis中存儲(chǔ)或緩存敏感的明文數(shù)據(jù)
10.安全監(jiān)控
建立蜜罐網(wǎng)絡(luò),有***嘗試時(shí),可及時(shí)發(fā)現(xiàn)
監(jiān)控redis安全狀態(tài),cmdstat_auth cmdstat_flushdb/flushall監(jiān)控報(bào)警
題外話:
redis cluster不支持密碼問題
redis 原生cluster模式最新3.2版本都不支持開啟密碼認(rèn)證,導(dǎo)致內(nèi)網(wǎng)使用只能無密碼,只能通過前面其他安全設(shè)置來保證內(nèi)網(wǎng)redis cluster的安全性
針對(duì)之前redis版本,默認(rèn)無bind和密碼設(shè)置存在很大安全風(fēng)險(xiǎn),redis 3.2版本提出新特性protected mode,如果redis在啟動(dòng)時(shí),未開啟bind和密碼設(shè)置,只能通過本地回環(huán)地址本地訪問,如果嘗試遠(yuǎn)程訪問redis,會(huì)提示一下信息:
DENIED Redis is running protected mode because protected mode is enabled,
no bind address was specified, no authentication password is requested to clients.
In this mode connections are only accepted from the loopback interface.
當(dāng)然也可直接執(zhí)行CONFIG SET protected mode no關(guān)閉保護(hù)模式
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
文章標(biāo)題:Redis安全規(guī)范----checklist-創(chuàng)新互聯(lián)
文章源于:http://www.chinadenli.net/article16/dgigdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、品牌網(wǎng)站制作、網(wǎng)站制作、網(wǎng)站維護(hù)、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容