上面我們安裝好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>