上面我們安裝好redis服務之後,接着我們來看基本配置。
redis配置文件的默認位置/etc/redis.conf:
egrep -v"(^#|^$)" /etc/redis.conf
進入redis命令行:
redis-cli
其中,6379是偵聽端口。
查看所有配置:configget *
查看某個配置:configget loglevel
修改某個配置:configset loglevel warning
注意:上面完成後,默認只會修改內存中的配置,如果redis服務重啓後,會重新讀取配置文件把上面修改的配置覆蓋掉:
要想回寫到配置文件中,可以使用rewrite:
默認情況下,redis只會偵聽本機的環回地址,所以默認只能是本地客戶端能夠連接redis服務,從同一網絡內的其他客戶端連接超時:
我們編輯配置文件,改成全0地址:
bind0.0.0.0
編輯後,重啓redis服務,內網其他客戶端以及公網就都可以訪問了:
公網:
做一些基本的安全加固配置:
對一些危險命令進行禁用(在/etc/redis.conf文件中添加):
rename-commandFLUSHALL ""
rename-commandFLUSHDB ""
rename-commandCONFIG ""
rename-commandKEYS ""
rename-commandEVAL ""
當然也可以給這些危險的命令重命名:
啓用passwd驗證:
啓用後,我們驗證一下上面的配置:
首先直接進入本地的redis-cli,使用 config命令修改一下loglevel:
可以看到,由於前面的設置,config命令已經無法識別了,我們用前面定義的命令再試一下:
又因爲我們前面設置了requirepass,所以默認使用redis-cli的時候沒有提供認證的pass導致沒有權限。
可以用下面的命令在進入rediscli的時候提供passwd:
redis-cli-h <host name/remote IP> -a <passwd>
也可以進入redis-cli之後使用auth命令進行認證:
auth<passwd>