Как перекинуть файлы между сервером и браузером без лишней головной боли

19 Mar, 2026
503
🔱 64
👥 8

Знакомая ситуация: вы сидите в терминале на удаленном сервере, и вам нужно быстро стянуть оттуда лог-файл или какой-нибудь конфиг на свой рабочий ноутбук. Или наоборот — закинуть скрипт на машину коллеги, не настраивая при этом FTP, не воюя с правами доступа в S3 и не копируя гигантские куски текста через буфер обмена.

Обычно в такие моменты мы вспоминаем про scp, rsync или, в худшем случае, заливаем файл на какой-нибудь файлообменник, надеясь, что его никто не перехватит. Но оказывается, есть способ изящнее. Знакомьтесь — e2ecp, инструмент, который превращает передачу файлов между любыми устройствами в минутное дело.

share-screenshot

Что это вообще такое?

e2ecp (End-to-End Encrypted Copy) — это опенсорсная утилита для передачи данных, которая работает по принципу «просто и безопасно». Главная фишка проекта в том, что он объединяет мир CLI и Web. Вы можете отправить файл из терминала Linux и принять его в браузере на iPhone, или перекинуть папку с одного сервера на другой, используя короткое кодовое имя «комнаты».

Самое приятное здесь — приватность. Все данные шифруются на стороне отправителя и расшифровываются только на стороне получателя (End-to-End Encryption). Промежуточный сервер-ретранслятор (relay) видит только зашифрованный поток байтов и понятия не имеет, что именно вы передаете — семейное фото или секретный ключ.

Почему это удобно?

В моей практике часто случается, что нужно передать файл человеку, который «не очень дружит» с консолью. e2ecp решает эту проблему идеально.

1. Гибридность: Терминал ↔ Браузер

Вам не нужно, чтобы на обоих концах стояла одна и та же программа.

  • Отправитель: e2ecp send my_report.pdf
  • Получатель: Просто заходит на e2ecp.com, вводит имя комнаты и скачивает файл. Это работает и в обратную сторону: загрузили файл через веб-интерфейс — забрали его в консоли одной командой.

2. Сквозное шифрование «из коробки»

Инструмент использует связку ECDH P-256 для обмена ключами и AES-GCM для шифрования самих данных. Это золотой стандарт современной криптографии. Даже если кто-то перехватит трафик или взломает сервер-ретранслятор, ваши файлы останутся в безопасности.

3. Личное облачное хранилище

Если зарегистрироваться на сайте, e2ecp превращается в зашифрованное хранилище. Вы можете «запушить» файл со своего сервера в аккаунт:

e2ecp upload secret_data.zip

И потом получить к нему доступ из любого места. При этом пароль от аккаунта используется для вывода ключа шифрования, так что сервер снова остается «ни с чем» в плане доступа к вашим данным.

Как это работает под капотом?

Архитектура проекта довольно интересна. Основная часть написана на Go, а веб-интерфейс — на современном стеке с использованием Node.js (v24+).

Когда вы запускаете передачу, происходит следующее:

  1. Программа подключается к ретранслятору по WebSocket.
  2. Создается виртуальная «комната».
  3. Стороны обмениваются ключами по протоколу Диффи-Хеллмана на эллиптических кривых.
  4. Файл разбивается на чанки, шифруется и летит через WebSocket к получателю.

Кстати, если вы параноик (в хорошем смысле слова) или работаете в закрытом корпоративном контуре, вам не обязательно пользоваться публичным сервером e2ecp.com. Вы можете поднять свой собственный ретранслятор одной командой:

e2ecp serve --port 8080

Практические сценарии использования

Где e2ecp экономит время?

  • Быстрый деплой конфигов: Нужно закинуть .env файл на свежий сервер? e2ecp send .env на локалке, e2ecp receive на сервере. Готово.
  • Обмен между коллегами: Вместо того чтобы мучиться с правами доступа в Google Drive для одного маленького архива, просто создайте временную комнату.
  • Сбор логов: Когда техподдержка просит «скинуть логи», а они весят 500 МБ и не лезут в почту.
  • Backups: Утилиту легко встроить в скрипты бэкапа для автоматической отправки дампов в зашифрованное облако.

Как начать пользоваться?

Установка максимально дружелюбная. Если вы на macOS, поможет Homebrew:

brew install schollz/tap/e2ecp

Для пользователей Linux есть удобный скрипт:

curl https://e2ecp.com | bash

Ну а если вы любите Docker, то и тут всё предусмотрено. В репозитории есть готовые Dockerfile и compose.yml, чтобы развернуть свой инстанс со своей базой данных PostgreSQL для хранения пользовательских профилей.

Итог: стоит ли пробовать?

Если вам надоело использовать Telegram или Slack как «перевалочный пункт» для конфигов и бинарников, e2ecp определенно заслуживает места в вашем тулбоксе. Это легкий, быстрый и, главное, безопасный способ перемещать файлы между мирами CLI и Web.

Проект активно развивается, у него понятный исходный код и отличная тестовая база (включая E2E тесты на Playwright). Попробуйте отправить свой первый файл прямо сейчас через e2ecp.com — это действительно меняет привычки работы с данными.

Удачи в передаче! И помните: шифрования много не бывает.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.