这是几个月前遇到的问题了,那时候想着要记录下来,但后来忙忘了,这次想起来了,于是记录一下。
之前打靶场的时候需要将netcat-win32-1.12放入虚拟机的/var/www/html下,但是我虚拟机无法上网,也就是说无法直接下载,用u盘传文件的方式也失败了,于是就只能通过主机向虚拟机传输文件的方式了。
通过查阅资料,发现:可以通过命令行把主机的文件传送进kali,在主机CMD命令行输入:scp -r D:\develop\hongri\netcat-win32-1.12 hahahacry@192.168.166.111:/var/www/html
具体来说,-r参数表示递归复制整个目录及其子目录,D:\develop\hongri\netcat-win32-1.12是本地需要拷贝的文件夹路径,hahahacry@192.168.166.111是虚拟机的用户名和IP地址,最后的:/var/www/html表示将文件夹拷贝到虚拟机的/var/www/html目录下。
也就是说将本地文件传输到虚拟机的命令行格式为:scp -r 主机文件地址 虚拟机用户名@虚拟机IP地址:虚拟机文件存储路径。
但是好几次都失败了,然后我发现,需要把kali的用户调到root,把/var/www/html变成可写入,修改之后我再在主机的命令行输入上面的代码就显示成功了。
前期好像还遇到了一点问题,似乎要先把主机和虚拟机的ssh权限打开,时间有点久远了,记不大清。
如果 scp 命令执行失败,通常会提供一些错误信息,大家可以查看错误信息来了解具体失败的原因,有问题的话大家可在评论区交流。