轉:Redis使用認證密碼登陸

Redis默認配置是不須要密碼認證的,也就是說只要鏈接的Redis服務器的host和port正確,就能夠鏈接使用。這在安全性上會有必定的問題,因此須要啓用Redis的認證密碼,增長Redis服務器的安全性。html

1. 修改配置文件

Redis的配置文件默認在/etc/redis.conf,找到以下行:linux

#requirepass foobared

去掉前面的註釋,並修改成所須要的密碼:redis

requirepass myPassword (其中myPassword就是要設置的密碼)

2. 重啓Redis

若是Redis已經配置爲service服務,能夠經過如下方式重啓:安全

service redis restart

若是Redis沒有配置爲service服務,能夠經過如下方式重啓:服務器

/usr/local/bin/redis-cli shutdown
/usr/local/bin/redis-server /etc/redis.conf

3. 登陸驗證

設置Redis認證密碼後,客戶端登陸時須要使用-a參數輸入認證密碼,不添加該參數雖然也能夠登陸成功,可是沒有任何操做權限。以下:ui

$ ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.

使用密碼認證登陸,並驗證操做權限:命令行

$ ./redis-cli -h 127.0.0.1 -p 6379 -a myPassword
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "myPassword"

看到相似上面的輸出,說明Reids密碼認證配置成功。rest

除了按上面的方式在登陸時,使用-a參數輸入登陸密碼外。也能夠不指定,在鏈接後進行驗證:code

$ ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth myPassword
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "myPassword"
127.0.0.1:6379> 

4. 在命令行客戶端配置密碼(redis重啓前有效)

前面介紹了經過redis.conf配置密碼,這種配置方式須要從新啓動Redis。也能夠通命令行客戶端配置密碼,這種配置方式不用從新啓動Redis。配置方式以下:server

127.0.0.1:6379> config set requirepass newPassword
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "newPassword"

注意使用命令行客戶端配置密碼,重啓Redis後仍然會使用redis.conf配置文件中的密碼。

 

5. 在Redis集羣中使用認證密碼

若是Redis服務器,使用了集羣。除了在master中配置密碼外,也須要在slave中進行相應配置。在slave的配置文件中找到以下行,去掉註釋並修改與master相同的密碼便可:

# masterauth master-password

 

文章轉自:http://itbilu.com/linux/management/Ey_r7mWR.html

相關文章
相關標籤/搜索