我正在尝试将文件从安装在 VirtualBox 中的 Ubuntu Server 18.04 传输到本地机器,但无法正常工作。
现有的网络是 NAT,在 VirtualBox 中我已设置端口转发。
*Name* *Protocol* *Host IP* *Host port* *Guest IP* *Guest port*
ssh TCP 2222 22
要连接到我的服务器,我正在使用。但是我无法将文件从 VirtualBox 实例传输到我的本地计算机。ssh [email protected] -p 2222
scp user@remotehost:/file/to/copy /local/destination
不起作用我试过几次了。
我曾尝试过stackoverflow 指南对于基于 NAT 防火墙的机器,但是每当我使用我的凭据运行此命令时,ssh ComputerBUser@ComputerB -R 2222:localhost:22
我Bad port '2222:localhost:22'
都无法做太多事情。
答案1
要连接到我的服务器,我正在使用
ssh [email protected] -p 2222
在 SCP 中,也必须提供端口 - 注意这里的端口选项是大写的-P
,并且此选项必须放在命令的开头:
scp -P 2222 [email protected]:/file/to/copy /local/destination/
在我看来,对于这样的任务来说,rsync
更好、更快、更强大(更多解释):
rsync -e 'ssh -p 2222' --progress user@remotehost:/file/to/copy /local/destination/
总之,我更愿意为虚拟机设置桥接连接,这样它在我的本地网络中就会有自己的 IP 地址
此外,我建议您设置基于 ssh 密钥的身份验证和.ssh/config
文件 - 以下是有关此内容的简短参考列表: