有时我必须使用具有 telnet 连接但没有ftp 或 ssh(使用 scp)的远程主机,也没有 netcat。也没有 gcc(例如编译 netcat)。
有人知道如何使用 telnet 连接(使用某种 hack)传输文件吗?
(我知道这对于这样的事情不是很合适的协议。)
有时我必须使用具有 telnet 连接但没有ftp 或 ssh(使用 scp)的远程主机,也没有 netcat。也没有 gcc(例如编译 netcat)。
有人知道如何使用 telnet 连接(使用某种 hack)传输文件吗?
(我知道这对于这样的事情不是很合适的协议。)
您使用的是 Windows 还是 Linux (*NIX)?良好的旧 BBS 文件传输类型在 telnet 下完美运行。您需要考虑程序并编译它们。请参阅zmodem和xmodem。
您应该能够使用Kermit通过 telnet 传输文件,您可以使用C-Kermit作为 telnet 客户端来执行此操作。但它仅适用于基于 Unix/Linux 的系统。
客户端应用程序支持通过
kermit
telnet 协议进行连接,AFAICR 支持xmodem
和zmodem
,以及它自己的文件传输协议。据我所知,自从我这样做以来已经有很多年了:
如果您在远端只有一个简单的 Unix 系统,您可以使用(gzip 和)uuencode 进行编码,然后复制/粘贴到 uudecode(和 gunzip)中。
如果你没有 uudecode,但有一个 shell,你可以使用shar来组成你的第一个传输数据块。
如果策略允许您安装可执行文件,您可以使用这些简单的上传方法作为引导程序来安装 kermit/zmodem 远程、wget、curl 或 nc。
我知道你说没有netcat,但是你试过交叉编译吗?
Busybox 还包括一个 netcat 客户端,我在许多 ARM 和 MIPS 嵌入式系统上都使用过它。
你可以使用卷曲
“curl 是一个命令行工具,用于传输带有 URL 语法的文件,支持 FTP、FTPS、HTTP、HTTPS、SCP、SFTP、TFTP、TELNET、DICT、FILE 和 LDAP。curl 支持 SSL 证书、HTTP POST、HTTP PUT、FTP 上传、基于 HTTP 表单的上传、代理、cookie、用户+密码身份验证(基本、摘要、NTLM、协商、kerberos...)、文件传输恢复、代理隧道和其他有用技巧的总线负载。”