Как безопасно обмениваться файлами из командной строки с помощью ffsend в Linux
Благодаря фонду Mozilla у нас есть бесплатная онлайн-служба обмена файлами под названием Firefox Send, которая позволяет нам легко и безопасно обмениваться файлами через Интернет со сквозным шифрованием. . Хотя обмениваться файлами с помощью службы Firefox Send через веб-браузер очень легко, существует также неофициальный клиент командной строки для тех, кто предпочитает интерфейс командной строки графическому интерфейсу. Встречайте ffsend, полнофункциональный CLI-клиент для Firefox Send, позволяющий безопасно обмениваться файлами из командной строки в Linux.
Используя клиент ffsend, вы можете загружать/загружать файлы и каталоги в/из Firefox Send прямо со своего терминала. Кроме того, можно проверять или удалять общие файлы, просматривать информацию об общих файлах, просматривать историю файлов, архивировать файлы перед загрузкой, изменять пароль общего файла и многое другое! Ffsend имеет встроенный сокращатель URL-адресов и генератор QR-кодов и в настоящее время поддерживает Firefox Send v3 и v2. ffsend — это бесплатный продукт с открытым исходным кодом, написанный на языке программирования Rust.
Установите ffsend в Linux
Прежде чем устанавливать ffsend на свой компьютер Linux, убедитесь, что у вас установлены следующие необходимые компоненты:
- OpenSSL и сертификаты CA,
- xclip или xsel для копирования в буфер обмена.
Они доступны в репозиториях по умолчанию большинства дистрибутивов Linux. Например, вы можете установить их в Debian, Ubuntu и других системах на базе DEB с помощью команды:
sudo apt install openssl ca-certificates xclip xsel
После установки необходимых зависимостей загрузите последнюю версию ffsend со страницы релизов. На момент написания этого руководства последней версией была 0.2.58.
wget https://github.com/timvisee/ffsend/releases/download/v0.2.58/ffsend-v0.2.58-linux-x64-static
Переместите его в свой ПУТЬ `:
sudo mv ffsend-* /usr/local/bin/ffsend
Наконец, сделайте его исполняемым:
sudo chmod +x /usr/local/bin/ffsend
Это официально рекомендуемый способ установки последней версии ffsend.
Если вы используете Arch Linux, установите ffsend из AUR, используя любые помощники AUR, например Yay.
yay -S ffsend-bin
Есть и другие способы установки ffsend. Однако вы можете получить немного устаревшую версию.
Использование привязки:
snap install ffsend
Использование Менеджера пакетов NIX:
nix-channel --update
nix-env --install ffsend
Федора:
sudo dnf install ffsend
Чтобы узнать о других методах установки, посетите официальную страницу GitHub, ссылка на которую находится в конце.
Безопасно делитесь файлами из командной строки с помощью ffsend
При запуске ffsend без каких-либо аргументов вы увидите основной раздел справки.
$ ffsend
ffsend 0.2.58
Usage: ffsend [FLAGS] <SUBCOMMAND> ...
Easily and securely share files from the command line.
A fully featured Firefox Send client.
Missing subcommand. Here are the most used:
ffsend upload <FILE> ...
ffsend download <URL> ...
To show all subcommands, features and other help:
ffsend help [SUBCOMMAND]
Позвольте мне показать вам несколько практических примеров.
Основное использование
Чтобы быстро загрузить файлы в службу Firefox Send без какой-либо безопасности, просто выполните:
ffsend upload video.mp4
Пример вывода:
Upload complete
https://send.firefox.com/download/c1be7dd726089352/#BHZUSp2LY-Aaamv3k0UOmw
Теперь вы можете поделиться этим URL-адресом с кем угодно любым способом (почта или SMS). Получатель может загрузить общий файл либо из своего веб-браузера, либо с помощью клиента ffsend.
Файл можно скачать с помощью ffsend командой:
ffsend download https://send.firefox.com/download/c1be7dd726089352/#BHZUSp2LY-Aaamv3k0UOmw
Как видите, при загрузке файла мы не включили никаких мер безопасности. Таким образом, любой, у кого есть этот URL-адрес, может скачать данные. Давайте посмотрим несколько расширенных команд с параметрами безопасности.
Расширенное использование
Следующая команда загрузит данный файл, защищенный паролем:
Как видите, я установил пароль 123456 для файла video.mp4. Это просто для целей обучения. Используйте любой надежный пароль вместо 123456.
Теперь получателю придется вводить пароль при загрузке файла.
ffsend download https://send.firefox.com/download/ea100bcc75145f9d/#JZMkNn4ypj7HesEnayUo7A
Password:
Download complete
Аналогичным образом вы можете установить другие элементы управления безопасностью, такие как:
- Выберите, когда истечет срок действия вашей ссылки на файл (т. е. после количества загрузок или дней).
- архивируйте файлы во время загрузки.
Взгляните на следующий пример:
ffsend upload video.mp4 --archive --downloads 1 --expiry-time 5m --password 123456
Приведенная выше команда будет;
- заархивируйте входной файл перед загрузкой,
- указать лимит загрузки 1,
- укажите время окончания загрузки 5 минут,
- и установите пароль 123456.
При загрузке получателям будет задан вопрос, хотят ли они извлечь архивный файл или нет.
ffsend download https://send.firefox.com/download/6306f2fe3cfe7e09/#E2tuLr2aZGCg3avQkFj3Ew
Password:
You're downloading an archive, extract it into the selected directory? [Y/n]: y
Download complete Extracting...
Если они решат не извлекать, вы получите tar-файл. Затем вы можете вручную извлечь его, используя любые другие подходящие утилиты.
Скопируйте общие ссылки в буфер обмена
Чтобы скопировать ссылки на файлы в буфер обмена после загрузки, запустите:
ffsend upload --copy video.mp4
Обратите внимание, что для включения этой функции у вас должен быть установлен xclip или xsel.
Открыть общие ссылки в браузере
Если вы хотите автоматически открывать общие ссылки в веб-браузере по умолчанию после загрузки, запустите:
ffsend upload --open video.mp4
Upload complete https://send.firefox.com/download/dd2127439ef80320/#GdBgW8DZy9jwvqsp0dCnVA
Проверьте сведения об удаленных файлах
Чтобы проверить сведения об удаленном файле, запустите:
ffsend info https://send.firefox.com/download/dd2127439ef80320/#GdBgW8DZy9jwvqsp0dCnVA
Пример вывода:
ID: dd2127439ef80320
Downloads: 0 of 1
Expiry: 23h56m (86188s)
Проверьте, существуют ли удаленные файлы
Чтобы проверить, существует ли удаленный файл, запустите:
ffsend exists https://send.firefox.com/download/dd2127439ef80320/#GdBgW8DZy9jwvqsp0dCnVA
Проверьте историю загрузок
Это может быть полезно, если вы хотите узнать, сколько файлов вы загрузили и когда истечет срок их действия.
ffsend history
Пример вывода:
LINK EXPIRE
1 https://send.firefox.com/download/96a12b3d8884819d/#Vn5LRU_PgRKIAsHFoud0-g ~23h51m
2 https://send.firefox.com/download/ea100bcc75145f9d/#JZMkNn4ypj7HesEnayUo7A ~23h21m
3 https://send.firefox.com/download/75027ad5870be002/#JvfR57OHaJ1I6LHPM2tFgQ ~23h19m
4 https://send.firefox.com/download/c1be7dd726089352/#BHZUSp2LY-Aaamv3k0UOmw ~22h11m
Удалить удаленные файлы
Удаленные файлы можно удалить, как показано ниже.
ffsend delete https://send.firefox.com/download/dd2127439ef80320/#GdBgW8DZy9jwvqsp0dCnVA
ffsend псевдонимы
ffsend предлагает псевдонимы для всех подкоманд. Например, вы можете использовать только «u» или «up» для подкоманды «загрузить».
Например, файл можно загрузить с помощью любой из следующих команд:
ffsend upload video.mp4
Или,
ffsend u video.mp4
Или,
ffsend up video.mp4
Вот несколько псевдонимов.
- u или up - загрузить файлы
- d или вниз - скачать файлы
- del или rm — удалить файлы
- р - установить пароль
- e — проверить, существует ли удаленный файл
- i - получить информацию об удаленном файле
Получать помощь
Чтобы просмотреть список доступных флагов, опций и подкоманд вместе с описанием, обратитесь к разделу справки:
$ ffsend --help
ffsend 0.2.58
Tim Visee <3a4fb3964f@sinenomine.email>
Easily and securely share files from the command line.
A fully featured Firefox Send client.
USAGE:
ffsend [FLAGS] [OPTIONS] [SUBCOMMAND]
FLAGS:
-f, --force
Force the action, ignore warnings
-h, --help
Prints help information
-i, --incognito
Don't update local history for actions
-I, --no-interact
Not interactive, do not prompt
-q, --quiet
Produce output suitable for logging and automation
-V, --version
Prints version information
-v, --verbose
Enable verbose information and logging
-y, --yes
Assume yes for prompts
OPTIONS:
-A, --api <VERSION>
Server API version to use, one of:
2, 3: Firefox Send API versions
auto, -: probe server to determine [env: FFSEND_API]
--basic-auth <USER:PASSWORD>
HTTP basic authentication credentials [env: FFSEND_BASIC_AUTH]
-H, --history <FILE>
Use the specified history file [env: FFSEND_HISTORY]
-t, --timeout <SECONDS>
Request timeout (0 to disable) [env: FFSEND_TIMEOUT]
-T, --transfer-timeout <SECONDS>
Transfer timeout (0 to disable) [env: FFSEND_TRANSFER_TIMEOUT]
SUBCOMMANDS:
upload Upload files [aliases: u, up]
download Download files [aliases: d, down]
debug View debug information [aliases: dbg]
delete Delete a shared file [aliases: del, rm]
exists Check whether a remote file exists [aliases: e]
generate Generate assets [aliases: gen]
help Prints this message or the help of the given subcommand(s)
history View file history [aliases: h]
info Fetch info about a shared file [aliases: i]
parameters Change parameters of a shared file [aliases: params]
password Change the password of a shared file [aliases: pass, p]
version Determine the Send server version [aliases: v]
The public Send service that is used as default host is provided by Mozilla.
This application is not affiliated with Mozilla, Firefox or Firefox Send.
Надеюсь это поможет.
Ресурс:
- Репозиторий ffsend на GitHub