Как стать автором
Поиск
Написать публикацию
Обновить
126
191

Пользователь

Отправить сообщение

Поднимаем свой Jabber/XMPP сервер в 2025 году

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров18K

WhatsApp в России депутаты обещают заблокировать уже в очень скором времени. Доверие к Telegram у многих довольно сильно было подорвано после публикации расследования одного издания об особенностях их протокола вкупе с подробностями о том, кто владеет их сетевой инфраструктурой и с кем он связан, да и недавнее появление Telegram в реестре РКН тоже оптимизма в их отношении не добавляет. Max - оставим для сумасшедших и безвыходных, учитывая, кто и зачем его создал. Signal - отличный мессенджер и всем хорош, но в России его тоже периодически пытаются заблокировать.

На фоне всего этого многие начали задумываться о поднятии своего сервера для обмена сообщениями. С самодельными серверами и "не-попсовыми" протоколами всегда встает проблема "а с кем там общаться?", потому что перетащить прям вот вообще всех собеседников и контрагентов на что-то им непривычное практически нереально. Но если речь идет только, например, об инструменте общения внутри семьи, небольшой группы единомышленников или внутри одной компании, то это может быть вполне неплохим вариантом.

В наше время как self-hosted альтернативу популярным мессенджерам часто упоминают Matrix, например, с клиентом Element. На Хабре есть подробные инструкции, например вот эта: https://habr.com/ru/articles/837904/. Я попробовал, и мне не понравилось. Клиенты тормозные, через нестабильный интернет-канал все работает просто отвратительно, а сам сервер просто неповоротливый и укладывает не слишком богатый на процессор и память VPS даже всего с парой клиентов.

И тут мне вспомнилось про XMPP, он же Jabber. Он родом еще из тех времен, когда люди пользовались процессорами на 200-300 мегагерц и подключались к интернету через dial-up модемы - то есть он изначально очень нетребовательный к ресурсам. Между тем, развитие его не замерло на месте, а на сегодняшний день он умеет почти все то что требуется от современного мессенджера: хранение истории, передача файлов, аудио-видео звонки, end-to-end шифрование, и другое.

Читать далее

Localhost-атака: как Meta* и Яндекс следят за пользователями Android через localhost

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров82K

Мы раскрыли новый метод отслеживания, используемый компаниями Meta* и Яндекс, который потенциально затрагивает миллиарды пользователей Android. Мы обнаружили, что нативные приложения Android — включая Facebook, Instagram и несколько приложений Яндекса, таких как Карты и Браузер — незаметно слушают определенные локальные порты в целях отслеживания.

Эти нативные приложения Android получают метаданные браузеров, куки и команды от скриптов Meta* Pixel и Яндекс.Метрики, встроенных на тысячи веб-сайтов. Эти скрипты загружаются в мобильных браузерах пользователей и незаметно связываются с нативными приложениями, работающими на том же устройстве, через локальные сокеты (localhost). Так как нативные приложения программно получают доступ к идентификаторам устройства, таким как рекламный идентификатор Android (AAID), или обрабатывают идентификацию пользователя, как в случае приложений Meta, этот метод позволяет этим организациям связывать сессии мобильного браузера и веб-куки с личностью пользователя, тем самым деанонимизируя посетителей сайтов, на которых размещены их скрипты.

Этот способ передачи идентификаторов из браузера в приложение обходит типичные средства защиты приватности, такие как очистка куки, режим инкогнито и контроль разрешений Android. Более того, он открывает возможность для потенциально вредоносных приложений подслушивать веб-активность пользователей.

Читать далее

Кратко про XHTTP для VLESS: что, зачем и как

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров23K

Просили нас тут рассказать про протокол технологию XHTTP в контексте XRay, VLESS и прочих. Просили — рассказываем!

Для начала немного истории. Классическое использование VLESS и подобных прокси‑протоколов (в том числе с использование XTLS‑Reality) предполагает подключение клиента напрямую к прокси‑серверу, который крутится на каком‑нибудь VPS. Однако во многих странах (и в России тоже) под блокировки (или замедления) начали попадать подсети популярных хостеров целиком, а в других странах цензоры начали отслеживать подключения к «одиночным» адресам с большим объемом трафика. Поэтому еще с давних времен обдумывались и проверялись идеи подключения к прокси‑серверам через CDN (сети доставки контента). Чаще всего для этого использовался websocket‑транспорт, но у этого варианта есть два больших недостатка: у него есть один характерный признак (не буду указывать его тут, чтобы не облегчать работу РКН), а во‑вторых, число CDN, которые поддерживают проксирование вебсокетов, не так уж велико, и хотелось бы иметь возможность проксироваться и через те, что не умеют.

Поэтому сначала в известном проекте Tor для бриджей (мостов) придумали транспорт meek, который позволял передавать данные с помощью многочисленные запросов‑ответов по HTTP, и таким образом позволял подключаться к мостам (прокси) через любые CDN. Чуть позже этот же транспорт реализовали в ненадолго воскресшем из мертвых V2Ray. Но у meek есть два очень существенных недостатка, которые вытекают из его принципа работы: скорость работы очень низкая (по сути дела у нас полудуплексная передача и огромный оверхед на постоянные запросы‑ответы), и из‑за огромного количества GET/POST‑запросов каждую секунду, бесплатные CDN довольно быстро могут нас выгнать на мороз, а платные — выкатить солидный счет.

Читать далее

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

Время на прочтение9 мин
Количество просмотров22K

От переводчика: Эта статья, написанная в 2021 году, хоть и фокусируется на Европе, а конкретно на Нидерландах, на самом деле очень актуальна и по сей день и для других стран, в том числе и для России (за некоторыми исключениями). Она очень хорошо, например, отвечает на классические вопросы к статьям со статистикой зарплат вида "Где вы такие зарплаты находите, никто из моих знакомых столько не получает!" и вполне объясняет, почему большинство работников мало заметили уход международных компаний с российского рынка.

Я работаю нанимающим менеджером в Uber, в Амстердаме, уже более 4 лет. За это время рынок - и зарплаты - для программистов двигались вверх невероятными темпами.

Но интересно, что многие не заметили значимых изменений в зарплате за эти годы. В опросе разработчиков Honeypot Amsterdam за 2019 год говорится, что «самые опытные разработчики зарабатывают в среднем 55 000 евро и более 70 000 евро». В отчете о зарплатах Talent.io за 2021 год зарплата самых опытных разработчиков программного обеспечения в Амстердаме составляет 60 000 евро в год.

Между тем, по моим наблюдениям, средняя общая сумма вознаграждения старших сотрудников Uber почти удвоилась со 110 000 евро в 2015 году до 170 000-230 000 евро в год к 2020 году. И это не только в Uber: в Booking.com общая сумма вознаграждения старших сотрудников выросла на 50% - с €100 000 в 2016 году до €150 000+ в рамках проводимого мной исследования зарплат в ЕС.

Откуда же берется такое несоответствие в наблюдениях?

Читать далее

Информация

В рейтинге
18-й
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Инженер встраиваемых систем
Ведущий