«Крокодил» для обмена файлами
Ха! Сегодня будем тыкать палкой «Крокодила».
Croc — это кроссплатформенный CLI-тор. С помощью этой штуки можно передавать файлы/каталоги между устройствами. Без айпи, хуйни и лишнего гемора.
ЧИТАТЬ ПЕРВЫМ В ТЕЛЕГРАМ ЧИТАТЬ ПЕРВЫМ В MAX
Работает по принципу «отправь, введи код, получи по ебалу».
Установка под всё:
curl https://getcroc.schollz.com | bash
brew install croc
scoop install croc
choco install croc
winget install schollz.croc
Начнем! Я буду передавать файлы c Linux сервера на свою виндовую машину.
На Linux сервере запускаю:
cd /tmp && echo "Hello BashDays" >> bashdays.txt
croc send bashdays.txt
Получаем:
Sending 'bashdays.txt' (15 B)
Code is: 2811-spray-cabinet
On the other computer run:
(For Windows)
croc 2811-spray-cabinet
(For Linux/macOS)
CROC_SECRET="2811-spray-cabinet" croc
Так, идем на Windows машину и запускаем:
croc 2811-spray-cabinet
То есть берем «секретную строку» и передаем её получателю. Получатель запускает команду выше и видит:
C:\Users\user>croc 2811-spray-cabinet
Accept 'bashdays.txt' (15 B)? (Y/n) Y
Receiving (<-92.52.131.227:10350)
bashdays.txt 100% |████████████████████| (15/15 B, 73 B/s)
А на Linux машине:
Sending (->92.52.131.227:9015)
bashdays.txt 100% |████████████████████| (15/15 B, 41 kB/s)
Вуаля! Проверяем файл на винде, всё прекрасно передалось!
«Крокодил» не требует VPN, SSH, SCP, FTP, использует end-to-end шифрование (AES-256), работает между любыми ОС.
Фича — можно передать каталог, не архивируя его. Ну и как self-host воткнуть, чтобы уж совсем не параноить, как истеричка.
Да, есть прикол, что при получении ты вводишь «секретный код» и он отпечатается в истории команд, это хуйня. Поэтому просто запускаем
crocи оно в интерактиве запросит код, вводишь код и дело в шляпе. В историю команд ничего не попало.А если автокоды тебе в хуй не уперлись, можешь через ключик -code впендюрить свой код доступа. Всё гибко, покури репку и описание, там прям можно на многое повлиять, вплоть до создания своего relay.
Под капотом P2P протокол через relay-сервер — работает даже если устройства за NAT.
На Android кстати тоже порт есть в F-Droid.