本指南教您如何使用以下方式轻松安全地在任何设备之间传输文件 管道服务器 从命令行和通过网络浏览器。 你可以 无限传输任何类型的数据 与管道服务器。 它可以是目录、文本文件、音频、视频或任何内容。 此外,您使用的操作系统或设备并不重要。 与管道服务器共享文件非常简单直接。
内容
管道服务器简介
管道服务器是一种免费的网络服务,用于通过 HTTP/HTTPS 在任何设备之间共享任何数据。 数据可以从终端使用 curl
程序或通过 Web UI。 无需注册或注册! 您甚至不需要安装任何额外的软件。 您所需要的只是 curl
命令行程序或现代 Web 浏览器,它们都预装在大多数操作系统中。
管道服务器通过端到端加密安全地传输数据。 它永远不会将您的数据存储在任何中央位置或公共云中。 管道服务器使用对等方法将数据从一台设备中继到另一台设备。
它可以同时在多个设备之间共享数据。 只需从一台设备发送文件并从多台设备接收它。 如果文件或文件夹太大而无法共享,只需将其压缩并发送即可。
开发人员还创建了更多使用管道服务器的应用程序和脚本:
- 文字流聊天
- 通过具有端到端加密的管道服务器共享绘图
- 终端屏幕共享
- 管道 UI – 通过 HTTPS 在设备之间轻松安全地共享数据的 Web 界面
- Piping-ssh-web – 通过 Web 浏览器上的管道服务器通过 HTTPS 进行 SSH
- Piping-vnc-web – 通过管道服务器通过纯 HTTPS 的 VNC
管道服务器主 GitHub 存储库中提供了指向上述应用程序的链接。
从命令行使用管道服务器在任何设备之间传输文件
使用管道服务器在多个设备之间共享文件非常容易! 首先,我们将看到如何使用 curl
程序。
例如,我要共享一个名为的文本文件 ostechnix.txt
从我的 Fedora 系统并在Ubuntu系统中接收它。
在发送节点(即 Fedora 在我的情况下),键入以下命令来共享文件:
$ curl -T ostechnix.txt https://ppng.io/ostechnix
现在转到接收器节点(在我的例子中是 Ubuntu)并使用命令下载文件:
$ curl https://ppng.io/ostechnix > ostechnix.txt
就这么简单。 该文件将下载到当前目录中。
这里, https://ppng.io/ostechnix
是文件上传网址。 您可以在此 URL 的末尾使用不同的秘密路径。 例如,秘密路径可以是 /mymessage
或者 /text123
或任何你想要的。 指定相同路径的发送方和接收方可以传输。 发件人和收件人都可以先开始传输。 第一个等待另一个。
您还可以通过管道传输文本文件的内容,然后共享它。 在发送方节点,运行以下命令,共享一个名为的文本文件 ostechnix.txt
:
$ cat ostechnix.txt | curl -T - https://ppng.io/ostechnix
转到接收器节点并使用命令获取上述文本文件:
$ curl https://ppng.io/ostechnix > ostechnix.txt
只要接收者在他/她中运行上述命令,共享文件就会开始在他们的系统中下载。
这是示例输出。 我已经分享了 oxtechnix.txt
文件从我的 Ubuntu 系统到 Fedora 系统通过终端。
使用管道服务器传输目录
如果要共享目录,只需将其存档或压缩并共享即可。
使用归档目录 tar
并使用管道服务器共享它:
$ tar zfcp - ~/mydirectory | curl -T - https://ppng.io/ostechnix
使用压缩目录 zip
并使用管道服务器共享它:
$ zip -q -r - ~/mydirctory | curl -T - https://ppng.io/ostechnix
分享文字
如前所述,您可以发送任何类型的数据,甚至是短信。 让我们在两个系统之间共享一条短信。
在发送方节点上,键入以下内容:
$ echo "Welcome to OSTechNix" | curl -T - https://ppng.io/ostechnix
在接收节点上,您可以通过键入以下命令来获取此消息:
$ curl https://ppng.io/ostechnix
很容易,不是吗? 在系统之间共享 URL 和剪贴板时,它会派上用场。
如果要将文本消息附加到文件中,只需执行以下操作:
$ curl https://ppng.io/ostechnix > ostechnix.txt
上面的命令会将文本保存在文本文件中,而不是在标准输出中打印。
加密文件
要使用管道服务器加密和发送文件,请运行:
$ cat ostechnix.txt | openssl aes-256-cbc | curl -T - https://ppng.io/ostechnix
要解密并下载文件:
$ curl https://ppng.io/ostechnix | openssl aes-256-cbc -d
使用管道服务器将文件传输到多个接收器
在上述情况下,我们仅将文件共享给一位收件人。 一旦收件人收到,下载链接就会过期,因此您无法从任何其他设备下载相同的文件。
即使有人尝试访问该文件,他们也会收到以下消息:
$ curl https://ppng.io/ostechnix [ERROR] The number of receivers has reached limits.
例如,如果您想将文件传输到多个接收器, 5, 利用 ?n=5
URL 末尾的参数,如下所示:
$ cat ostechnix.txt | curl -T - https://ppng.io/ostechnix?n=5
现在,上面的文件可以被 5 个收件人(或系统中的 5 次)使用以下 URL 访问:
$ curl https://ppng.io/ostechnix?n=5
请注意网址。 您必须提供发件人节点中提到的确切 URL。 文件被所有接收方收到后,链接你会在senders节点看到成功信息:
[INFO] Waiting for 5 receiver(s)... [INFO] A receiver was connected. [INFO] A receiver was connected. [INFO] Start sending to 5 receiver(s)! [INFO] Sent successfully! [INFO] All receiver(s) was/were received successfully.
通过 Web 浏览器使用管道服务器传输文件
如果您不想通过终端接收文件,只需复制下载 URL 并将其粘贴到浏览器的地址栏中即可下载。
从管道服务器 Web UI 传输文件
如前所述,您可以通过终端或类 Unix 操作系统中的 Web 浏览器发送和接收它们。 如果您对命令行选项不满意,或者您正在使用其他操作系统(如 Windows),则可以使用管道服务器的 Web UI 来传输文件。 管道服务器为那些喜欢 GUI 而不是 CLI 的人提供以下两个 Web 界面:
- https://png.io/
- https://piping-ui.org/(带有加密选项的更现代的用户界面)
转到以上任一链接,选择要共享的文件,输入秘密路径,然后单击 发送 按钮。 如果您使用第二个 UI(即piping-ui),则可以选择对文件进行密码保护。 现在将生成文件上传 URL。 您可以使用此 URL 从任何系统下载文件。
要下载文件,只需粘贴您在前面的步骤中复制的 URL 得到 管道服务器 Web 界面中的选项卡。 您可能需要输入密码来解锁和下载文件。
在本地安装管道服务器
目前,管道服务器开发人员维护一些公共服务器来传输文件。 您也可以使用自托管它 码头工人 或使用可移植的可执行文件。
如果您更喜欢使用 Docker,请运行以下命令来运行本地管道服务器实例:
$ docker run -p 8080:8080 nwtgck/piping-server
将您的网络浏览器指向 https://localhost:8080
访问管道服务器的 URL。
如果您更喜欢使用可移植的可执行文件,请从官方发布页面下载其最新版本:
$ wget https://github.com/nwtgck/piping-server-pkg/releases/download/v1.1.0/piping-server-linux
使其可执行:
$ chmod +x piping-server-linux
并使用以下命令运行管道服务器本地实例:
$ ./piping-server-linux
您现在可以从 URL 访问管道服务器 Web UI https://ip-address:8080
.
还有一些方法可以在本地机器上部署管道服务器。 请参阅项目的 GitHub 链接以了解操作方法。
获得帮助
要显示管道服务器帮助部分,请运行:
$ curl https://ppng.io/help
资源:
- 管道服务器 GitHub 存储库
相关阅读:
- 通过 Web 浏览器使用 Snapdrop 在多个设备之间共享文件
- 使用 Warpinator 在 Linux 桌面之间共享文件
- PSiTransfer – 一个简单的开源自托管文件共享解决方案
- 如何使用 simpleHTTPserver 设置基本文件服务器
- 从命令行通过 Internet 共享文件的简单快捷方式
- OnionShare – 安全且匿名地共享任何大小的文件
- AirDroid – 从计算机访问和管理您的 Android 设备
文件共享文件传输Linux开源p2ppeer-to-peerPiping Server