Помогите сети
Три команды. Без панели. VPN не нужен.
Запустите датчики на свободной машине, откройте порты, которые печатает установщик, и вы в сети. Выбирая этот режим, вы даёте согласие присоединиться к сети SuckerPot.
git clone --depth 1 --branch v0.9.0 https://github.com/selfhostr/suckerpot.git cd suckerpot ./scripts/install.sh --participant
Замените v0.9.0 на нужный релиз. SuckerPot создан, чтобы его атаковали: используйте выделенную машину, на которой нет ничего другого, что вам дорого.
Что нужно
Linux-машина и роутер, которым вы управляете.
Только датчики, база данных и сетевой узел, примерно на 2 GiB памяти.
| Машина | Linux VM или сервер, x86_64 или aarch64, с 2 GiB памяти и более и 15 GiB свободного места на диске. |
| Программы | Docker Engine 24+ (рекомендуется 28) с плагином Compose, git, curl и Bash 4+. Ваш пользователь должен запускать docker без sudo. |
| Роутер | Вы можете пробросить порты на эту машину. |
| VPN | Не нужен. |
Откройте порты
Ваша единственная задача после установки.
Установщик заканчивается таблицей портов. Пробросьте каждый порт роутера на эту машину. Никогда не пробрасывайте свой административный SSH-порт и не используйте DMZ роутера: он пробрасывает все порты. Установщик никогда не редактирует ваши настройки SSH.
| Порт роутера | Эта машина | Протокол | Датчик |
|---|---|---|---|
| 22 | 22 | TCP | ssh |
| 23 | 23 | TCP | telnet |
| 80 | 80 | TCP | web |
| 443 | 443 | TCP | web |
Пример того, что печатает установщик. Если порт 22 занят на машине, SSH-датчик использует 2222.
Приватность без VPN
Хаб видит адрес. Он его не хранит.
Без VPN хаб видит ваш домашний адрес, когда подключается машина. Туннельный провайдер перед хабом тоже его видит. Хаб не хранит и не записывает его в журнал, но адрес не скрыт.
- В этом режиме только один сервис имеет выход наружу. Он перенаправляет соединения на хост хаба и больше никуда.
- Служба приёма, которая разбирает данные атакующих, не имеет выхода наружу. Ваши датчики никогда ничего не загружают.
- VPN можно добавить в любой момент:
./scripts/participant.sh vpn /path/to/wireguard.conf.
Оставайтесь под контролем
Проверяйте, обновляйте, выходите в любой момент.
| Команда | Что делает |
|---|---|
| ./scripts/status.sh | Показывает датчики и их порты, ваше положение, последний контакт с хабом и что отправлялось каждый день. |
| ./scripts/participant.sh ports-check | Показывает, достигает ли интернет ваших датчиков. |
| ./scripts/participant.sh firewall | Загружает файрвол хоста (запрашивает sudo) или удаляет его. |
| ./scripts/participant.sh leave | Выводит из сети. Датчики продолжают работать. |
| ./scripts/participant.sh join | Снова показывает согласие и присоединяет. |
| ./scripts/participant.sh vpn FILE | Отправляет всё через ваш VPN. |
| ./scripts/participant.sh auto-update off | Выключает ежедневное расписание обновлений. |
| ./scripts/participant.sh uninstall | Выводит из сети, останавливает стек и удаляет расписание. Печатает команду, которая удаляет данные, и никогда её не запускает. |
Автоматические обновления
Подписанные релизы устанавливаются сами раз в день, минимум через 48 часов после публикации, и только в пределах той же major-версии. Сначала делается дамп базы, а неудачное обновление возвращает предыдущую версию. Если бы канал релизов когда-либо был скомпрометирован, участники с автообновлением пострадали бы: подпись и задержка снижают этот риск, но не устраняют его. Одна команда выключает обновления.
Узлы-верификаторы
Большинство участников никогда не загружают вредоносное ПО. Верификатор это узел по желанию, с VPN и сборщиком, который может загрузить ссылку, о которой сообщили два узла, и описать файл. Ему также нужна роль от оператора хаба.
Переход в полный режим
./scripts/install.sh --full добавляет панель и сохраняет ваши данные и членство. Обратный путь, из полного в участника, не поддерживается. См. Установка.