ffsend:在命令行中通過FireFox Send分享文件
Linux 用戶偏愛使用 scp
或 rsync
來進行文件或目錄的復制拷貝。不過在 Linux 上正出現(xiàn)了許多新的可選方式,因為 Linux 是開源的,所以任何人都可以為 Linux 開發(fā)一個安全軟件。
在過去我們已經寫了多篇有關安全分享這個話題的文章,它們分別是 OnionShare、Magic Wormhole、Transfer.sh 和 Dcp – Dat Copy。
今天我們甚至還將繼續(xù)討論這個話題,我們將介紹名為 ffsend
的工具。
ffsend 是什么?
ffsend 是 Firefox Send 服務的一個命令行客戶端,允許用戶通過命令行來傳遞和接收文件或目錄。
它允許我們通過一個安全、私密、加密的鏈接,使用一個簡單的命令來輕易安全地分享文件和目錄。
通過 Firefox 的 Send 服務共享的文件最大大小為 2GB(LCTT 譯注:現(xiàn)在官網上寫的是最大 1GB,登錄后最大 2.5GB)。其他人可以通過這個工具或者網頁瀏覽器來下載這些分享的文件。
所有的文件都是在客戶端加密的,并且秘鑰將不會被共享到遠程主機。另外,你還可以為上傳的文件額外設置一個密碼。
上傳的文件在下載(默認被下載 1 次,最多可被下載 10 次)后或者 24 小時后,就會自動刪除。這將確保你的文件不會一直保留在網絡上。
該工具當前處于 alpha 階段,使用時請自擔風險。而且,當前只有有限的安裝方式可用。
ffsend 的特點:
- 全功能且使用友好的命令行工具
- 可以安全地上傳和下載文件與目錄
- 總是在客戶端加密
- 可用額外的密碼進行保護、密碼生成和可配置下載次數(shù)限制
- 內置的文件或目錄的打包和解壓
- 可以輕松地管理你的歷史分享記錄
- 能夠使用你自己的 Send 主機
- 審查或者刪除共享文件
- 精準的錯誤報告
- 低內存消耗,用于加密或上傳下載
- 無需交互,可以集成在腳本中
如何在 LInux 中安裝 ffsend 呢?
當前除了 Debian 和 Arch Linux 系統(tǒng),其他發(fā)行版還沒有相應的安裝包(LCTT 譯注:這個信息已過時,最新內容請看這里)。然而,我們可以輕易地根據(jù)我們自己的操作系統(tǒng)和架構下載到相應的預編譯二進制文件。
運行下面的命令來為你的操作系統(tǒng)下載 ffsend
最新可用的版本(LCTT 譯注:當前最新版本為 v0.2.58):
$ wget https://github.com/timvisee/ffsend/releases/download/v0.1.2/ffsend-v0.1.2-linux-x64.tar.gz
然后使用下面的命令來解壓 tar 包:
$ tar -xvf ffsend-v0.1.2-linux-x64.tar.gz
接著運行下面的命令來查看你的 PATH
環(huán)境變量:
$ echo $PATH
/home/daygeek/.cargo/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
正如我先前告知的那樣,下面我們要做的就是將這個可執(zhí)行文件放置到 PATH
環(huán)境變量中的某個目錄中:
$ sudo mv ffsend /usr/local/sbin
直接運行 ffsend
可以獲取其基本使用信息:
$ ffsend
ffsend 0.1.2
Usage: ffsend [FLAGS] ...
Easily and securely share files from the command line.
A fully featured Firefox Send client.
Missing subcommand. Here are the most used:
ffsend upload ...
ffsend download ...
To show all subcommands, features and other help:
ffsend help [SUBCOMMAND]
對于使用基于 Arch Linux 系統(tǒng)的用戶可以簡單地借助 AUR 助手來安裝它,因為這個包已經在 AUR 軟件倉庫中了。
$ yay -S ffsend
對于使用 Debian/Ubuntu 系統(tǒng)的用戶,使用 DPKG 命令來安裝 ffsend
。
$ wget https://github.com/timvisee/ffsend/releases/download/v0.1.2/ffsend_0.1.2_amd64.deb
$ sudo dpkg -i ffsend_0.1.2_amd64.deb
如何使用 ffsend
這并不復雜,我們可以簡單地通過下面的語法來發(fā)送文件。
語法:
$ ffsend upload [/Path/to/the/file/name]
在下面的例子中,我們將上傳一個名為 passwd-up1.sh
的文件,一旦你上傳了該文件,你將得到一個唯一的 URL。
$ ffsend upload passwd-up1.sh --copy
Upload complete
Share link: https://send.firefox.com/download/a4062553f4/#yy2_VyPaUMG5HwXZzYRmpQ
在任何遠端的系統(tǒng)上,只需要使用上面那個唯一的 URL 就可以下載上傳的文件了。
語法:
$ ffsend download [Generated URL]
命令的輸出如下:
$ ffsend download https://send.firefox.com/download/a4062553f4/#yy2_VyPaUMG5HwXZzYRmpQ
Download complete
使用下面的語法來對目錄進行上傳:
$ ffsend upload [/Path/to/the/Directory] --copy
在下面的例子中,我們將上傳一個名為 2g
的目錄:
$ ffsend upload /home/daygeek/2g --copy
You've selected a directory, only a single file may be uploaded.
Archive the directory into a single file? [Y/n]: y
Archiving...
Upload complete
Share link: https://send.firefox.com/download/90aa5cfe67/#hrwu6oXZRG2DNh8vOc3BGg
在任意的遠端系統(tǒng)中,只需要利用上面生成的唯一 URL 就可以獲取到剛才上傳的目錄了。
$ ffsend download https://send.firefox.com/download/90aa5cfe67/#hrwu6oXZRG2DNh8vOc3BGg
You're downloading an archive, extract it into the selected directory? [Y/n]: y
Extracting...
Download complete
上面已經通過安全、私密和加密過的鏈接來發(fā)送了文件。然而,如果你想在你的掌控范圍內再添加額外的安全措施,你可以為文件添加密碼。
$ ffsend upload file-copy-rsync.sh --copy --password
Password:
Upload complete
Share link: https://send.firefox.com/download/0742d24515/#P7gcNiwZJ87vF8cumU71zA
當你在遠端系統(tǒng)中嘗試下載該文件時,它將要求你輸入密碼:
$ ffsend download https://send.firefox.com/download/0742d24515/#P7gcNiwZJ87vF8cumU71zA
This file is protected with a password.
Password:
Download complete
另外,你還可以在上傳過程中提供下載次數(shù)限制來限制文件被下載的次數(shù)。
$ ffsend upload file-copy-scp.sh --copy --downloads 10
Upload complete
Share link: https://send.firefox.com/download/23cb923c4e/#LVg6K0CIb7Y9KfJRNZDQGw
然后你可以在任意的遠程系統(tǒng)中使用上面的唯一 URL 來下載該文件:
ffsend download https://send.firefox.com/download/23cb923c4e/#LVg6K0CIb7Y9KfJRNZDQGw
Download complete
假如你想看這個鏈接的更多細節(jié),你可以使用下面的命令來查看它的信息,它將為你展示文件名稱、文件大小、被下載次數(shù)以及過期時間。
語法:
$ ffsend info [Generated URL]
$ ffsend info https://send.firefox.com/download/23cb923c4e/#LVg6K0CIb7Y9KfJRNZDQGw
ID: 23cb923c4e
Name: file-copy-scp.sh
Size: 115 B
MIME: application/x-sh
Downloads: 3 of 10
Expiry: 23h58m (86280s)
此外,你還可以使用下面的命令來查看你的傳輸歷史:
$ ffsend history
# LINK EXPIRY
1 https://send.firefox.com/download/23cb923c4e/#LVg6K0CIb7Y9KfJRNZDQGw 23h57m
2 https://send.firefox.com/download/0742d24515/#P7gcNiwZJ87vF8cumU71zA 23h55m
3 https://send.firefox.com/download/90aa5cfe67/#hrwu6oXZRG2DNh8vOc3BGg 23h52m
4 https://send.firefox.com/download/a4062553f4/#yy2_VyPaUMG5HwXZzYRmpQ 23h46m
5 https://send.firefox.com/download/74ff30e43e/#NYfDOUp_Ai-RKg5g0fCZXw 23h44m
6 https://send.firefox.com/download/69afaab1f9/#5z51_94jtxcUCJNNvf6RcA 23h43m
假如你不想再分享某個鏈接,你可以使用下面的語法來刪除它:
語法:
$ ffsend delete [Generated URL]
$ ffsend delete https://send.firefox.com/download/69afaab1f9/#5z51_94jtxcUCJNNvf6RcA
File deleted
如何在瀏覽器中使用 Send
另外,你還可以通過使用 firefox 瀏覽器打開 https://send.firefox.com/ 來完成相應的分享。
只需要拖拽該文件就可以上傳它:
一旦該文件被下載,它將展示 100% 的下載狀態(tài)。
想查看其他的可能選項,請瀏覽它對應的 man 信息或者幫助頁。