使用root許可權去執行網路服務是比較有風險的(nginx和apache都是有獨立的work使用者,而redis沒有)。redis crackit 漏洞就是利用root使用者的許可權來替換或者增加authorized_keys,來獲取root登入許可權的
使用root切換到redis使用者啟動服務:```useradd -s /sbin/nolog -m redis
sudo -u redis //redis-server
```
因為redis密碼明文儲存在配置檔案中,禁止不相關的使用者訪問改配置檔案是必要的,設定redis配置檔案許可權為600,
執行以下命令修改配置檔案許可權:```chmod
600
```
避免使用熟知的埠,降低被初級掃瞄的風險
編輯檔案redis的配置檔案redis.conf,找到包含port的行,將預設的6379修改為自定義的埠號,然後重啟redis
redis在redis.conf配置檔案中,設定配置項requirepass, 開戶密碼認證。 redis因查詢效率高,auth這種命令每秒能處理9w次以上,簡單的redis的密碼極容易為攻擊者暴破。
開啟redis.conf,找到requirepass所在的地方,修改為指定的密碼,密碼應符合複雜性要求:```1
、長度8位以上
2、包含以下四類字元中的三類字元:
英文大寫字母(a 到 z)
英文小寫字母(a 到 z)
10 個基本數字(0 到 9
)非字母字元(例如 !、$、%、@、^、&等,#除外)
3、避免使用已公開的弱密碼,如:abcd.1234
、admin@123等
```再去掉前面的#號注釋符,然後重啟redis
redis中線上使用keys *命令,也是非常危險的。因此線上的redis必須考慮禁用一些危險的命令,或者盡量避免誰都可以使用這些命令,
redis沒有完整的管理系統,但是也提供了一些方案。
修改 redis.conf 檔案,新增```rename-command flushall ""
rename-command flushdb ""
rename-command config ""
rename-command keys ""
rename-command shutdown ""
rename-command del ""
rename-command eval ""
```然後重啟redis。
重新命名為
""代表禁用命令,如想保留命令,可以重新命名為不可猜測的字串,如:
`rename-command flushall joyapnxrpmcarcr4zdgc`
redis監聽在0.0.0.0,可能導致服務對外或內網橫向移動滲透風險,極易被黑客利用入侵。
在redis的配置檔案redis.conf中配置如下:bind
127.0.0.1或者內網ip,然後重啟redis
redis預設開啟保護模式。要是配置裡沒有指定bind和密碼,開啟該引數後,redis只能本地訪問,拒絕外部訪問。
redis.conf安全設定: # 開啟保護模式 protected-mode yes
mysql安全基線設定
禁用local infile選項會降低攻擊者通過sql注入漏洞器讀取敏感檔案的能力 編輯mysql配置檔案 etc my.cnf,在 mysqld 段落中配置local infile引數為0,並重啟mysql服務 local infile 0 測試資料庫可供所有使用者訪問,並可用於消耗系統資源。刪除...
基線檢查 阿里雲標準 Redis安全基線檢查
描述 因為redis密碼明文儲存在配置檔案中,禁止不相關的使用者訪問改配置檔案是必要的,設定redis配置檔案許可權為600,加固建議 執行以下命令修改配置檔案許可權 chmod 600操作時建議做好記錄或備份 描述避免使用熟知的埠,降低被初級掃瞄的風險 加固建議 編輯檔案redis的配置檔案red...
centos7安全基線設定
加固建議 在 etc login.defs 中將 pass min days 引數設定為7 14之間,建議為7 pass min days 7 需同時執行命令為root使用者設定 chage mindays 7 root 設定ssh空閒超時退出時間,可降低未授權使用者訪問其他使用者ssh會話的風險 ...