Pull to refresh
17
1
Кашлак Андрей @andreymal

User

Send message

Тогда в вашем примере тем более нет смысла

Так вся эта статья посвящена этому самому примеру — rclone

Поздравляю, вы не только сломали синхронизацию свойств каталогов и опции вроде --delay-updates или --delete-after, но и убили производительность постоянными переподключениями SSH-соединений (а ещё такая команда всё равно не работает, потому что parallel не умеет читать из stdin)

Слепое следование идеологиям ни к чему хорошему не приводит

Без танцев с бубном — это JMAP. Вопрос к клиентам, какого чёрта они за ~6 лет существования стандарта так толком и не делают его поддержку

На фоне вышеупомянутых недостатков чувствую необходимость пропиарить Stalwart

Основные компоненты

Антивируса нет (хотя вроде ничего не мешает прикрутить тот же ClamAV), но всё остальное перечисленное в наличии

Антиспам имеется, по набору реализованных правил напоминает rspamd

Админ-панель имеется (зачем-то на WebAssembly, но тем не менее)

Минимальные системные требования

Прямо сейчас кушает всего 50МБ памяти на моём личном сервере (но это без антивируса, да)

Получение сертификата

В Stalwart тоже имеется

Настройка DNS

Админ-панель заботливо вывалит сразу все рекомендуемые DNS-записи (SPF, DMARC, TLSA и много чего ещё) в настройках домена после его создания

Генерация DKIM-ключа

Админ-панель автоматически создаёт DKIM-ключи в момент создания домена (и среди DNS-записей они тоже будут)

WebMail

Этого пока нет, но можно тот же Roundcube сбоку воткнуть, если сильно надо

Можно было собрать сервер «по кускам» из разных компонентов

За исключением вышеупомянутых Roundcube и антивируса, Stalwart — это ровно один бинарник, в котором есть всё сразу

Бесплатная версия идет с "For personal use only" флагом

Stalwart есть в версиях AGPL и Enterprise, и, если платные фичи не нужны, можно использовать AGPL-версию без ограничений

На днях ещё появилась поддержка CardDAV и CalDAV, что позволяет использовать Thunderbird на полную катушку

В Pro-версииь и выше достаточно при установке выбрать "для работы или учёбы"

Нет такого

Нажимаю где? После выбора региона и раскладки сразу идёт окно «Давайте подключим вас к сети»

Рад, что у вас и условного друга такая же нога и не болит

Вы, простите, дома сервер приложений решили ставить?

Ну, мой провайдер прям так и пишет в описании тарифов «подходит для администраторов сайтов и серверов»

вполне себе раньше ставили игровые сервера дома

Именно что раньше, а потом многие провайдеры потихоньку повключали NATы и с этим стало грустно

Я даже близко ничего похожего не слышал.

Значит товарищ майор успешно справляется с поставленной перед ним задачей 🙃

Предположу, что это не так важно, особенно с учётом того, что стабильная версия 1 уже есть и фундаментальные принципы вряд ли поменяются в обозримом будущем (из существенных изменений разве что async/await и Pin, но про это можно отдельно почитать в какой-нибудь книжке про асинхронщину)

От создателей языка это в первую очередь «The Rust Programming Language» (это название книги) и «The Rustonomicon» — вообще они предназначены для обучения написанию программ на Rust, но ответы на некоторые вопросы «почему» в них тоже имеются

Не просто устроился.

После, например, провайдерского MITM на jabber.ru мой внутренний параноик предпочитает на всякий случай предполагать, что возможно всё

Тогда не знаю что вы делаете не так

Ладно, вы все вынудили меня снова раздолбать мою сеть и повторить эксперимент

Лабораторное оборудование:

длинк с IP-адресом 1.2.3.1 и DHCP-сервером в роли провайдера
кинетик с «внешним» IP-адресом 1.2.3.4 и внутренним IP-адресом 192.168.0.1/24 в роли бытового роутера
  • компьютер с IP-адресом 192.168.0.168 в роли «лампочки»

  • гипотетический пользователь этих бытового роутера и «лампочки», который в сетях ничего не понимает

  • я в роли злого людя, который устроился на работу к провайдеру специально чтобы хакать лампочки

Никакие порты не проброшены, никакие дополнительные маршруты не добавлены (на скриншоте выше кинетик сам сгенерировал маршруты для своей работы)

Итак, поехали: я в качестве злого людя, хочу найти лампочку и подключиться к ней. Процесс поиска IP-адреса опустим, предположим, что я узнал или узнаю перебором, что это именно 192.168.0.168

Так как я провайдер и имею доступ к своему собственному длинку, я могу творить тёмные дела прямо на нём. Захожу на длинк и пробую подключиться к лампочке:

Ой, Network is unreachable

Ну в общем-то логично, откуда длинку знать, куда отправлять пакеты с локальными IP-адресами

Но я же провайдер и имею полный контроль над длинком!

Не проблема — добавляю маршрут для локальных IP-адресов

Пробую ещё раз:

Опаньки

Ошибка исчезла — длинк успешно отправил пакет, но кинетик его дропнул, потому что межсетевой экран делает своё тёмное дело

В захвате трафика на кинетике можно увидеть, что он успешно получает пакеты, но дальше они дропаются межсетевым экраном

Здесь выяснилось, что выключить межсетевой экран на кинетике нельзя ¯\_(ツ)_/¯

Так что вместо выключения смоделирую немного другую ситуацию:

Пользователь пытался запустить майнкрафт-сервер и своими кривыми руками надобавлял разрешающих правил в роутер

Напомню, что мы проверяем ваше утверждение «как его пакет пролезет сквозь роутер до лампочки, если у меня никакие порты не проброшены?», поэтому в рамках данного эксперимента такое устранение влияния межсетевого экрана тоже корректно

Никакие порты НЕ проброшены

(UPnP кстати тоже не установлен)

Ну, что, ещё одна попытка?

ААААААААААА

Без межсетевого экрана кинетик успешно отроутил пакет из внешней сети во внутреннюю

Скриншот из Wireshark, запущенного на «лампочке», это подтверждает

Удаляем разрешающее правило из межсетевого экрана кинетика — пакеты перестают появляться в Wireshark на «лампочке»

Таким образом, по итогам этого эксперимента в очередной раз повторю — NAT ЭТО НЕ ЗАЩИТА, защищает именно межсетевой экран, без него пакеты до лампочки прекрасно пролезают через роутер

Какой один клик?

Что такое «без дополнительных настроек»? Если под этой фразой вы имеете в виду отключение фаервола — поздравляю, вы только что сами опровергли свой самый первый комментарий

Вы не забыли отключить фаервол?

Ибо src таких пакетов - в домашней сети.

Почему? Не вижу технических причин, которые помешали бы провайдеру прописать в src свой собственный адрес — роутеры именно для того и существуют, чтобы роутить такие адреса туда-сюда между разными сетями

Вышеупомянутую проверку на практике я делал как раз на кинетике и убеждался, что включение фаерволла начинает дропать пакеты, так что буду считать, что всё ок

Всё так, поэтому я не доверяю не только своей локальной сети, но даже локалхосту (всё, для чего нашлась техническая возможность закрыть и/или зашифровать, у меня закрыто и/или зашифровано, впрочем, я пока ещё не продумал защиту от штук вроде BadUSB или DMA-атак)

1
23 ...

Information

Rating
1,900-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity