scp 超时,但 ssh 工作正常。我做错了什么?

scp 超时,但 ssh 工作正常。我做错了什么?

ssh 工作正常,但 scp 根本不起作用。我犯了语法错误吗?

$ scp ~/Downloads/EWBF.tar.gz -P 1312 [email protected]:/tmp/
ssh: connect to host myserver.com port 22: Operation timed out
lost connection
$ ssh -p 1312 [email protected]
[email protected]'s password: 
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-104-generic x86_64)

我的服务器位于另一个城市的家用路由器后面,并设置了 DDNS 和端口转发,从外部端口 1312 和 1313 分别映射到以太网和 wifi 卡的 MAC 地址的端口 22。服务器当前正在使用以太网连接(端口 1312),但以前是通过 wifi 连接的。当 wifi 处于活动状态时,我以前使用 scp 没有任何问题,但已经有一段时间了,我不确定我没有犯某种语法错误。我一直在尝试远程访问路由器的 Web 界面以仔细检查设置,但尚未成功(任何有关这方面的建议也将不胜感激!)

答案1

此参数~/Downloads/EWBF.tar.gz导致scp停止解析选项。-P然后1312将其视为要发送的文件。因此scp尝试连接到默认端口22,如下所示:

ssh: connect to host myserver.com port 22: Operation timed out

选项应位于文件名之前:

scp -P 1312 ~/Downloads/EWBF.tar.gz [email protected]:/tmp/

相关内容