Обновить
1
0.6
Дмитрий@Sazonov

C++ / Qt

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

XRay (с VLESS/XTLS): проброс портов, реверс-прокси, и псевдо-VPN

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели201K

Я уже написал тут много статей на тему установки и настройки прокси‑серверов XRay с недетектируемыми протоколами Shadowsocks-2022, VLESS (с XTLS), и т. п. И один из очень часто поднимаемых в комментариях вопросов звучит так: можно ли с использованием XRay как‑то организовать проброс портов или получать доступ к внутренностям корпоративной сети? Можно, и сейчас я расскажу как.

Итак, что же можно сделать с помощью реверс‑проксирования?

Можно получать доступ к каким‑либо сервисам на хосте за NAT'ом или строгим фаерволом, и даже более того — можно получать доступ к сервисам на других устройствах в локальной сети, к которой имеет доступ этот самый хост за NAT'ом файерволом.

Можно маршрутизировать весь (или некоторый в зависимости от настроенных правил) трафик на хост за NAT'ом или фаерволом и выпускать его оттуда в Интернет.
Например, вы проживаете за границей, хотите оплачивать счета за ЖКХ вашей недвижимости оставшейся России, но сервис оплаты не пускает вас с забугорных IP и не пускает вас с IP‑адресов даже российских VPS‑хостеров. Тогда можно поставить у кого‑нибудь из друзей или родственников в РФ преднастроенный роутер или одноплатник типа Raspberry Pi, который подключится к вашему прокси‑серверу, а вы, в свою очередь, через прокси‑сервер сможете достучаться до этого роутера/р‑пишки и выйти через него во внешний интернет как обычный пользователь, находящийся в России — и всем ресурсам будет виден IP‑адрес российского домашнего интернет‑провайдера.

Можно выборочно пробрасывать порты, например, все подключения на 80 порт прокси‑сервера будут переадресовываться на 80 (или любой другой) порт «изолированного» хоста или еще куда‑то дальше.

Можно даже в теории соорудить псевдо‑VPN, чтобы подключенные клиенты прокси‑сервера могли достукиваться друг до друга.

Читать далее

YOLO-NAS Pose: прорыв в технологии оценки позы

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели4.7K

Модели YOLO-NAS Pose это последний вклад в область оценки позы. Ранее в этом году Deci получила широкое признание за свою новаторскую базовую модель обнаружения объектов YOLO-NAS. Основываясь на успехе YOLO-NAS, компания представила YOLO-NAS Pose в качестве своего аналога в оценке позы. Эта модель обеспечивает превосходный баланс между задержкой и точностью.

Оценка позы играет решающую роль в компьютерном зрении, охватывая широкий спектр важных задач таких как:

мониторинг движений пациентов в медицинских учреждениях,

анализ результатов спортсменов в спорте,

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

Читать далее

FAQ по Shadowsocks/XRay/XTLS/Reality/Nekobox/etc. для обхода блокировок

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели485K

Эта статья - сборник разных вопросов и ответов на них, которые звучали в комментариях к моим предыдущим статьям (Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-всеBleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто и других из той же серии) и в личных сообщениях.

Читать далее

Протоколы семейства TCP/IP. Теория и практика

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели340K
image

В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур данных, передаваемых по сети, а при рассмотрении сетевого программирования основное внимание уделяют интернет-сокетам.

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

В ходе работы над статьёй я написал небольшое приложение, которое послужит отправной точкой для понимания компьютерных сетей и семейства протоколов TCP/IP. С приложением можно экспериментировать, получая дополнительные знания.

Приложение — простое и понятное и, надеюсь, упростит изучение материалов статьи. Ведь именно радость первой победы даёт мотивацию, достаточную для того, чтобы потратить гораздо больше времени на изучение темы.

В статье изложены наиболее важные с моей точки зрения понятия, которые должен знать любой программист, хоть как-то сталкивающийся с компьютерными сетями. Так что без теоретических сведений не обошлось.
Читать дальше →

Как выработать интуитивное понимание логарифмов

Уровень сложностиСложный
Время на прочтение14 мин
Охват и читатели56K

Я восхищаюсь способностью некоторых людей вычислять логарифмические функции в голове. Мне логарифмы всегда казались «чёрным ящиком», который невозможно познать. Они являются фундаментальным строительным блоком математики, однако каждый раз, когда я вижу логарифмическое выражение, то сразу хватаюсь за калькулятор, а не решаю его вручную. Последние полгода я уделял время совершенствованию понимания логарифмов и учился вычислять результаты логарифмических уравнений вручную. В статье я расскажу, как я это делал.

Зачем этому учиться?


Для меня способность вычисления логарифмов от руки — крайне нужный навык. Количество концепций, которые мы храним в рабочей памяти, ограничено, поэтому логично будет освоить максимально много концептуальных строительных блоков. Развив в себе хорошее интуитивное понимание логарифмических выражений, вы будете ощущать себя бесконечно увереннее в работе с уравнениями, включающими в себя логарифмы, и сможете справляться с уровнем сложности, который раньше считали немыслимым. А ещё они будут меньше пугать или отвлекать вас, когда встретятся в каком-то другом контексте.
Читать дальше →

Самые распространённые логические ошибки

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели109K

Изучение логических ошибок помогает в развитии критического мышления, необходимого во всех сферах жизни. School of Thought проделала отличную работу, описав 24 наиболее распространенные логические ошибки.

Читать далее

3X-UI: Shadowsocks-2022 & XRay (XTLS) сервер с простой настройкой и приятным интерфейсом

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели739K

В серии предыдущих статей я описывал, почему повсеместно используемые VPN- и прокси-протоколы такие как OpenVPN и L2TP очень уязвимы к выявлению и могут быть легко заблокированы цензорами при желании, обозревал существующие гораздо более надежные протоколы обхода блокировок, клиенты для них, а также описывал настройку сервера двух видов для всего этого.

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

Поэтому сегодня мы поговорим об установке и использовании графической панели 3X-UI для сервера X-Ray с поддержкой всего того, что умеет X-Ray: Shadowsocks-2022, VLESS с XTLS и т.д.

Читать далее

Обход блокировок: настройка сервера XRay для Shadowsocks-2022 и VLESS с XTLS-Vision, Websockets и фейковым веб-сайтом

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

Предыдущие статьи серии:

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria и все-все-все
Программы-клиенты для протоколов недетектируемого обхода блокировок сайтов: V2Ray/XRay, Clash, Sing-Box, и другие

С протоколами разобрались, с клиентами разобрались, теперь наконец-то настало время рассказать о том, как же настроить свой личный прокси-сервер с современными протоколами для обхода блокировок. Мы будем настраивать сервер на базе XRay (который является форком известного V2Ray, и еще я немного упомяну Sing-Box) с протоколами Shadowsocks-2022 и VLESS с транспортом XTLS-Vision и фейковым веб-сайтом для защиты от выявления. И в качестве запасного варианта на том же сервере мы настроим fallback на VLESS+Websockets, чтобы была возможность работать через CDN типа Cloudflare, если вдруг IP-адрес вашего сервера попадет под блокировку. В конце я приведу настройки десктопных и мобильных клиентов для подключения ко всему этому.

Читать далее

Минималистичный YouTube. Расширения для браузера и альтернативные клиенты

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели112K

В эпоху рекламы, консюмеризма и раздутых сайтов приходится принимать специальные меры защиты от лишнего контента, который лезет со всех сторон.

Один из главных «нарушителей» — YouTube. Стоило один раз посмотреть пляжный волейбол на Олимпийских играх — и он уже несколько лет показывает женщин в купальниках на главной странице (пример). Даже неудобно открывать YouTube в присутствии сына…

Непрошеные и неуместные рекомендации видео — общая проблема, на которую часто жалуются. К счастью, их легко заблокировать, как и весь остальной мусор. Можно ходить на серверы YouTube через кастомный фронтенд, через сторонние клиенты или вообще из консоли. Некоторые альтернативные способы просмотра особенно актуальны в свете потенциальной блокировки YouTube на территории РФ.
Читать дальше →

Кодогенератор Waffle++ для C++

Время на прочтение17 мин
Охват и читатели10K

Кодогенератор это программа, которая на основе исходного кода или какого-нибудь файла настроек генерирует вспомогательный код, который потом компилируется вместе с исходным кодом. Это нужно, чтобы не писать boilerplate-код, а также для получения дополнительных возможностей языка.

Я делаю расширяемый кодогенератор для C++, в котором можно реализовать много полезного. Примеры модулей: перевод значений enum в строку и обратно, перевод структуры в JSON и обратно, декларативный веб-сервер, система слотов и сигналов, свой динамический полиморфизм, генератор кода для тестов...

В этом обзоре будет showcase, сравнение с другими кодогенераторами, как работают модули, как сделать свой модуль, и как подключить кодогенератор в свои проекты.

Читать далее

Как создать эвристический алгоритм онлайн-мастеринга и получить предупреждение от RIAA

Уровень сложностиСредний
Время на прочтение24 мин
Охват и читатели19K

Добрый день, меня зовут Сергей. В своей статье я бы хотел осветить тему аудио мастеринга, а именно: автоматизированного онлайн-мастеринга музыки.

Я расскажу о своём пути от продюсера психоделического транса до мейнтейнера самой популярной open source библиотеки автоматизированного референсного мастеринга на Python, получившей предупреждение от американской ассоциации звукозаписывающих компаний RIAA.

Читать далее

Коллекционирую лучшие C++ практики

Время на прочтение3 мин
Охват и читатели24K

Коллекционирую лучшие C++ практики


Что-то наши публикации всё больше о плохом, чем о хорошем. Здесь баг, тут код с запахом, это антипаттерн, вот так писать не надо. Помогите увидеть светлую сторону программирования на С++. Оставляйте комментарии.

Читать дальше →

Защищайся! Простые и не очень правила настройки безопасности для VPS/VDS на Linux

Время на прочтение12 мин
Охват и читатели48K

Все, что смотрит в бесконечную даль Интернета, находится в той или иной степени под угрозой атаки вездесущими ботами, хакерами, школьниками и прочими темными сущностями глобальной сети. Это не в последнюю очередь касается мощностей арендных серверов (выделенных или VPS/VDS). Провайдер может обеспечивать базовый функционал защиты от атак на свою инфраструктуру, но то, что юзер творит со своей машиной, провайдера абсолютно не касается. Разве что за доп. плату он может добавить некоторые настройки к VPS, мониторить и фильтровать трафик, поступающий с определенной интенсивностью. Поэтому хочешь не хочешь, а приходится задуматься об обеспечении безопасности своего сервиса вот этими вот маленькими ручками, желательно с минимальными временными и материальными издержками.

Под катом рассмотрим несколько простых настроек, которые сведут к минимуму угрозу для вашего VPS, а в конце статьи рассмотрим пару более сложных, но эффективных техник защиты. Примеры команд приведены для ОС Ubuntu.

Поехали!

Наглядное руководство по SSH-туннелям

Время на прочтение8 мин
Охват и читатели288K

Прим. переводчика: автор статьи рассматривает практические сценарии и примеры организации SSH-туннелей. А для лучшего понимания того, как это работает, графически показывает потоки трафика.

Туннели SSH — это зашифрованные TCP-соединения между клиентами и серверами SSH. Трафик входит с одной стороны туннеля и прозрачно выходит с другой. Изначально этот термин относился к туннелям на виртуальных сетевых интерфейсах TUN/TAP, однако сейчас так обычно называют проброс портов SSH.

Читать далее

Пойми меня, если сможешь. Или как донести мысль заказчику (понятно и с первого раза)

Время на прочтение9 мин
Охват и читатели9.8K

Ещё один текст о том, как правильно общаться с заказчиком, чтобы он лучше вас понимал. На лавры Ильяхова не претендуем, в лёгкий язык без стоп-слов не получилось (сложна!). Постарались собрать краткий гайд «гигиенического минимума коммуникаций» для проджектов и всех, кому предстоит общение с заказчиком.

Читать далее

Как ускорить работу в командной оболочке Bash

Время на прочтение4 мин
Охват и читатели27K

Любому начинающему разработчику необходимо научиться пользоваться командной строкой. При этом для выполнения в ней команд требуется оболочка. В статье речь пойдёт об оболочке Bash, которая популярна в UNIX-подобных системах и в большинстве дистрибутивов Linux используется штатно.
Читать дальше →

Как изучить SQL за ночь или шпаргалка для системного аналитика

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели220K

Помните, как вы были студентами, и готовились к экзаменам по ночам?

Предлагаю вашему вниманию простую шпаргалку по SQL с теорией и практикой, которой вы сможете воспользоваться в любое время.

Изучите теорию на примерах и закрепите на 13 практических задачах по SQL.

Читать далее

Как позвонить всем вокруг

Время на прочтение11 мин
Охват и читатели69K

Мы в Postuf большие поклонники франшизы Watch Dogs - приключенческой видеоигры, в которой главный герой в лице Эйдена Пирса, имея доступ к вымышленной системе ctOS, способен проворачивать со своего смартфона разные хакерские трюки. Однажды нам стало интересно, возможно ли в реальной жизни повторить трюк звонка на телефоны находящихся рядом людей.

Оказалось, возможно

IT-словарик для не-айтишников

Время на прочтение11 мин
Охват и читатели64K

Приходилось ли вам объяснять IT-понятия людям из других сфер? Это хитрая задача: при объяснении одного IT-термина нельзя пользоваться другими, потому что они тоже будут непонятными. Представим, что ваш знакомый захотел «войти в айти», впервые открыл Хабр и офигел — как объяснить такому человеку хотя бы основные слова?

Мне захотелось описать популярные понятия неформальным языком — так, чтобы доходчиво объяснить главное, а не запутывать нюансами. Для этого местами пришлось пойти на упрощения. Но думаю, новичкам не требуется знать «правильнее писать Linux или GNU/Linux». Для начала понять бы, что в разговорах айтишников слово «перформанс» — это не про современное искусство.

Конечно, большинству хабравчан уже не требуется читать такой текст. Смысл публикации в том, чтобы ссылку можно было кидать неайтишным знакомым. А ещё хабрачитатели могут помочь дополнениями в комментариях: у меня описана лишь часть важных понятий, и мои описания наверняка несовершенны, так что совместными усилиями можно сделать всё полезнее.

Читать далее

Проект arataga: реальный пример использования SObjectizer и RESTinio для работы с большим количеством HTTP-соединений

Время на прочтение17 мин
Охват и читатели2.2K

В последние 4.5 года я много рассказывал на Хабре про такие OpenSource проекты, как SObjectizer и RESTinio. Но вот об использовании SObjectizer и/или RESTinio в реальных проектах пока еще ни разу не удавалось поговорить (была лишь одна статья от стороннего автора).

Причина простая: мы не можем обсуждать те проекты, в которых мы сами применяли SObjectizer/RESTinio, ибо NDA. Равно как и не можем рассказывать о тех чужих проектах, о которых узнали в частном общении. Так что с наглядными примерами использования SObjectizer/RESTinio в реальной жизни всегда была напряженка.

Дабы как-то улучшить ситуацию пару лет назад мы даже сделали небольшой демо-проект Shrimp и опубликовали здесь серию статей о нем (раз, два, три). Но все-таки это было не более чем демонстрация.

К счастью или к несчастью, но далеко не самый удачный 2020-й год предоставил нам возможность показать как же выглядит реальный проект, в разработке которого SObjectizer и RESTinio активно используются. И в данной статье я попробую рассказать о том, как и для чего SObjectizer и RESTinio применяются в arataga, исходники которого можно найти на GitHub.

Читать далее

Информация

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