发送文件最简单的方法是什么?

发送文件最简单的方法是什么?

发送文件最简单的方法是什么:

  • 在 Ubuntu 机器上,
  • 对于本地网络之外的另一个 Ubuntu 用户(如果也对其他人更好),
  • 通过加密文件传输,
  • 仅使用免费和开源软件,
  • 最好不要依赖第三方,比如必须上传文件的云应用,
  • 最好不要泄露您的 IP 地址,并且不要以任何方式使您的机器更容易受到文件接收者的攻击。

如何快速设置?

答案1

您的要求 #5(无第三方/云存储)和 #6(无 IP/主机名披露)相互冲突:要将文件传输到远程计算机,您要么直接连接,要么不连接。如果您这样做,远程端将拥有您的 IP 地址(仅因为 TCP/IP 的工作方式);如果您不这样做,那么根据假设,您正在依靠第三方进行传输,并且他们必须存储您的数据。

话虽如此,但对您的请求还是有一些近似的。

F*EX:使用基于网络的第三方转账

外汇服务器正是为此而诞生的。从fex封装描述

F*EX(Frams 的快速文件交换)是一种服务,可用于让互联网上任何地方的用户快速、方便地交换非常大的文件。

发送者将文件上传到 F*EX 服务器,收件人会自动收到一封带有下载 URL 的通知电子邮件。

F*EX的主要特点:

  • 文件传输几乎不受文件大小限制
  • 发件人和收件人只需要一个电子邮件程序和一个网络浏览器(任何类型均可;无需安装任何软件) [...]
  • 免维护:除创建新的 F*EX 账户外,无需任何管理
  • 多个收件人只需要一份存储副本
  • F*EX 使用 HTTP,不需要防火墙隧道
  • 为命令行用户提供的 shell 客户端:fexsendfexget. (fex 实用程序包裹)

据我所知,F*EX 本身不进行加密,但您可以使用 GPG 加密要发送的文件。

F*EX 服务器完全开源,因此您只需在您信任的服务器上安装并运行它。

FEX主页详细解释了 FEX 与其他文件传输服务和协议进行比较。

sendfile:跨 UNIX 计算机的异步文件传输

发送文件命令已经存在大约 10 年了:你在发送端和接收端安装它和附带的守护程序,然后传输就像输入一样简单:

sendfile a.file user@otherhost

此外,sendfile可以使用 GPG 自动加密文件(查找-pe-ps选项)。

然而,由于这建立了直接联系:

  • 接收计算机必须在某个时刻启动并运行,
  • 它必须能够接受sendfile端口上的连接,这意味着它应该可以通过公共 IP 访问
  • 它可以记录发件人的 IP 地址

发送文件 是由 F*EX 的同一作者编写的(见上文),他们解释了为什么选择在sendfile 主页

自己动手:使用nc

仅使用 网猫

接收在另一侧,你运行:

nc -l 9999 > myfile

此后,发送在另一侧,你运行:

nc otherhost 9999 < myfile

与往常一样,您应该在发送之前使用 GPG 加密文件(或者,如果您熟悉 shell,也可以使用管道即时加密)。您可以9999用任何其他有效端口号替换 (例如,一次进行多次传输)。

缺点:

  • 协调:您必须按照正确的顺序在两端发出两个命令,因此发送者和接收者必须同时在线,并且他们必须通过聊天或电话线等方式进行协调。
  • 它必须能够接受 9999 端口上的连接,这意味着它应该可以通过公共 IP 访问
  • 接收端可以记录你的 IP 地址

相关内容