Pull to refresh
-21
0
Send message

Как открыть портал наружу: самый полный гайд по VPN

Level of difficultyEasy
Reading time19 min
Views66K

Выбор, установка и настройка VPN. Какие VPN заблокированы на территории РФ. Рабочие VPN в России в 2023 году с оплатой криптой. Как ускорить VPN. Как узнать, работает ли шифрование трафика

Читать далее
Total votes 22: ↑16 and ↓6+13
Comments32

Личный домашний VPN на основе Raspberry (Shadowsocks) (для самых маленьких)

Level of difficultyEasy
Reading time7 min
Views44K

Настраиваем свой маленький, домашний и ламповый VPN на основе Shadowsocks (Outline). Нужен Raspberry и настраиваемый wi-fi-роутер. Пошаговая инструкция. Без абонентской платы и аренды VPS.

Прежде всего, небольшой дисклеймер: я ненастоящий сварщик, я просто перелопатил много информации, скомпилировал ее и получил нужный мне результат. Им я и поделюсь со всем миром, где известное правительство пытается блокировать уже частные соединения VPN.

До этого блокировали пока что только коммерческие сервисы VPN. Пока под раздачу попадают протоколы WireGuard и OpenVPN (август 2023) (ссылка на СМИ, выполняющее функции иноагента). Первый очень популярен своей легкостью и быстродействием, быстрой настройкой. К сожалению, у такого трафика на лбу написано «Я — VPN соединение”. Второй протокол уже довольно старый и популярный, но тоже довольно легко обнаруживается РКН. На сегодня РКН только тренируется с блокировками, но похоже, что Shadowsocks пока работает без перебоев. Тем не менее, "эксперты «Роскомсвободы»* также предполагают, что следующим шагом властей может стать блокировка Shadowsocks, нестандартного протокола, созданного для обхода Великого китайского файрволла, и подобных ему инструментов” (ссылка на сайт некоммерческой организации выполняющей функции иностранного агента). Пока до этого протокола еще не добрались, на основе него, а точнее Outline, использующий технологию Shadowsocks, и настроим свой VPN-сервер.

*некоммерческая организация выполняющая функции иностранного агента

Читать далее
Total votes 32: ↑28 and ↓4+35
Comments34

Первые шаги в ML на обучающем хакатоне: обнаружение птиц на фотографиях yolov8s + sahi

Level of difficultyEasy
Reading time4 min
Views3.6K

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

Изучая задачу, я понял, что мне нужно обнаруживать чаек по фотографиям. Для решения задачи я решил использовать yolov8s, потому что он мне показался оптимальнейшим из линейки yolov8 для моего случая. Также, мне как-то рассказывали про sahi (Slicing Aided Hyper Inference), и я решил, что это мой шанс попробовать этот инструмент в качестве улучшения конечного результата.

Итак, у меня был датасет, включающий фотографии, уже разбитые на train, validation, test, запакованные в zip архив. Первым делом, я клонирую репозиторий для yolov8, устанавливаю и импортирую необходимые на первых парах библиотеки и распаковываю то, что нужно распаковать.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments7

Запускаем IDEA и CLion на Android

Level of difficultyMedium
Reading time18 min
Views9.5K

На современных Android телефонах и планшетах стоит отличное железо - многоядерные CPU с несколькими гигабайтами памяти. Этого всего вполне хватит для запуска даже таких тяжеловесных программ как IDEA и CLion. И сейчас я вам расскажу как это сделать.

Читать далее
Total votes 23: ↑23 and ↓0+23
Comments16

Load-Detect для Проверки Качества Пайки

Level of difficultyEasy
Reading time12 min
Views4K

Как вы думаете зачем в микроконтроллерах есть функция pull-up/pull-down, если можно просто воспользоваться установкой логического уровня push-pull?

Вот типичная ситуация. Вам принесли электронную плату с производства. Крайне вероятно, что на PCB есть какие-то аппаратные баги. Обычно это короткие замыкания на GND/VCC или вовсе непропай.

Как выявить и найти эти бракованные пины?

Вот тут-то нам и помогут подтяжки к питанию/земле на пинах MCU.

Называется эта тема load-detect.

В этом тексте я подробно написал про то, как работает load-detect под капотом.

Читать далее
Total votes 9: ↑6 and ↓3+5
Comments36

Эргономичные клавиатуры здорового человека, которые можно купить в 2023

Level of difficultyEasy
Reading time5 min
Views23K

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

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

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

Читать далее
Total votes 15: ↑13 and ↓2+13
Comments52

Книга «Изучаем vi и Vim. Не просто редакторы. 8-е изд.»

Reading time14 min
Views13K
image Привет, Хаброжители!

Среди текстовых редакторов, используемых программистами, самыми важными является vi и его вариации. В обновленном издании пользователи Unix и Linux изучат основы редактирования текста как в vi, так и в Vim (vi improved), прежде чем перейти к более продвинутым инструментам в каждой из программ. Авторы Арнольд Роббинс и Элберт Ханна описывают основные новейшие версии Vim.

Если вы программист или компьютерный аналитик, либо работаете с веб- или консольными интерфейсами, Vim упростит решение сложных задач. Вы освоите многооконное редактирование, глобальный поиск/замену и прочие мощные инструменты для программистов, а также научитесь писать интерактивные макросы и сценарии, расширяющие возможности программы.
Читать дальше →
Total votes 13: ↑12 and ↓1+14
Comments30

Преобразование табличных данных в Python

Level of difficultyEasy
Reading time5 min
Views5.5K

Предположим: вы полны желания изучить  манящий массив данных. К счастью, для этого достаточно вашего компьютера. Итак, вы открываете блокнот Python или REPL, чтобы начать работать:  какую библиотеку использовать? Естественно, вы можете обратиться к старой доброй Pandas. А как насчет новой модной библиотеки фреймов данных, например Polars или datatable? А ещё, для разнообразия, можно попробовать встроенный SQL с помощью DuckDB.

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

PS: Используйте DuckDB, если вам удобно работать с SQL, Polars или Pandas с поддержкой PyArrow, если вам не нужно какое-то специфическое расширение NumPy, и задействуйте PyArrow в том случае, если вы не против ручной оптимизации.

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments1

Как продлить время автономной работы телефона (VPN+DNS)

Level of difficultyEasy
Reading time3 min
Views12K

Надо было мне разобраться получше с iptables и ansible, а для этого нужна задачка. Задачка была выбрана такая: поднять свой VPN сервер с возможностью резки рекламы и прочего spyware.

Суть происходящего при резке рекламы с помощью DNS сервера состоит в том, что когда клиент спрашивает сервер какой IP адрес сопоставлен имени хоста, то DNS сервер отвечает ему 0.0.0.0 В итоге клиент ходит сам к себе и быстро получает отказ, так что не пользуется для этого модемом связи в случае с телефоном. Что экономит батарейку не просто на процент, а при моем режиме использования телефона время автономной работы выросло с 8-10 часов до 23.5. Специально засекал и был мягко говоря удивлен. Как показала практика 85% запросов от телефона это spyware.

Ansible был выбран потому, что для настройки всего даже на настраиваемый сервер заходить не надо, просто нужен доступ по ssh к нему. После настройки конфиги для подключения к VPN будут лежать в папке с плейбуком. Да и сам запуск это одна команда. Не люблю я запоминать, что я там пять лет назад настроил и Ansible для того что бы этого не делать идеален, не говоря уже о прочих его достоинствах. Запустил у себя на ноуте плейбук, он все тебе на сервере настроил, потом отсканил QR код на телефоне, работает.

В качестве DNS сервера с возможностью резать телеметрию и прочую гадость был выбран Pi-hole DNS. Просто потому, что он очень не требователен к ресурсам и мне хватает на амазоне t3.nano ноды, которую мне дали бесплатно на год. При этом я видел на DigitalOcean готовый дрополет Pi-hole VPN, но он прибит к этому провадйеру, а мой плейбук я пробовал уже на двух разных и он просто пашет, плюс там видно все, что он делает. Плюс ко всему при установке он закачивает более 5млн бан записей в DNS что бы не искать их потом.

Читать далее
Total votes 19: ↑14 and ↓5+14
Comments63

Обход блокировок на OpenWRT с помощью Sing-box (vless, vmess, trojan, ss2022) и баз GeoIP, Geosite

Level of difficultyEasy
Reading time12 min
Views44K

В данном гайде будем устанавливать пакет sing-box на OpenWRT на примере стабильной 22.03.5 и 23.05.0. Рекомендуется роутер минимум с 128 МБ RAM (256 предпочтительно) и памятью более 16 Мб, так же будет описан способ установки sing-box в оперативную память (подходит для устройств с малым количеством ПЗУ <16 Мб)

Sing-Box — это бесплатная прокси-платформа с открытым исходным кодом, которая позволяет пользователям обходить интернет-цензуру и получать доступ к заблокированным веб-сайтам. Это альтернатива v2ray-core и xray-core. Его можно использовать с различными клиентами таких платформах, как Windows, macOS, Linux, Android и iOS.

Помимо поддержки протоколов Shadowsocks (в т.ч. 2022), Trojan, Vless, Vmess и Socks, он также поддерживает ShadowTLS, Hysteria и NaiveProxy.

Руководство будет включать:

1. Установку из репозитория

2. Настройку sing-box для shadowsocks, vless, vmess, trojan и обход блокировок с помощью SagerNet GeoIP, Geosite

3. Настройку обхода блокировок с помощью GeoIP, Geosite от L11R

4. Установку sing-box в оперативную память и настройку автозапуска

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments15

Как воспитать в своей семье юного инженера и не разориться?

Level of difficultyEasy
Reading time8 min
Views20K

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

Короче, слушайте
Total votes 52: ↑50 and ↓2+60
Comments32

Пора улучшать согласование

Level of difficultyMedium
Reading time8 min
Views12K


Я работаю в фирме, которая разрабатывает устройства для умных домов на частотах 869, 915 МГц. Это маломощные устройства с антеннами из провода, PCB-антеннами и внешними штыревыми антеннами. Для работы в квартире антенна должна быть всенаправленной. Заранее не известно, где будет расположено устройство и как сориентировано. Некоторые ключевые устройства мы относили к сторонним специалистам для настройки антенны, потом использовали эти согласования в других устройствах. Какое-то время этого хватало. У нас большой парк устройств, плюс одни и те же устройства работают в разных корпусах. Это требует настройки антенны для каждого типа продукта. Обращаться каждый раз к специалистам слишком дорого, поэтому несколько лет пытаемся научиться делать сами. Далее расскажу о процессе настройки антенны для одного из наших устройств с антенной из провода (ground plane).
Читать дальше →
Total votes 55: ↑54 and ↓1+73
Comments14

Полное руководство по эффективному обучению

Reading time9 min
Views17K

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

Читать далее
Total votes 17: ↑9 and ↓8+5
Comments12

Простая разработка IoT приложений на C# для Raspberry Pi и других одноплатников, на Linux

Reading time10 min
Views13K


Многие привыкли легко и просто программировать микроконтроллеры на платформе Arduino или nanoFramework (используется C#). Но как обстоит с разработкой IoT приложений на C# .NET для одноплатных компьютеров под Linux? В ответ услышите что нужно все устанавливать из командной строки, да и еще хорошо разбираться в Linux, там не так просто как с Arduino. Для настройки удаленной отладки необходимо выполнить множество различных действий, вручную настроить конфигурацию запуска, генерировать ключи доступа для пользователя, от имени которого будет запускать отладка, и т. д. Но теперь, благодаря расширению .NET FastIoT для Visual Studio Code, это не требуется делать. Черновую работу по установке необходимых пакетов и конфигурированию проекта для удаленной отладки сделает за вас расширение. Теперь вы можете полностью сфокусироваться на своем коде, не отвлекаясь на лишние задачи.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments7

Сам себе Linux смартфон: Как я выкинул Android и написал свою прошивку с нуля

Level of difficultyMedium
Reading time17 min
Views77K
image

К огромному сожалению, старые смартфоны всё чаще и чаще находят своё пристанище в мусорном баке. К прошлым, надежным «друзьям» действует исключительно потребительское отношение — чуть устарел и сразу выкинули, словно это ненужный мусор. И ведь люди даже не хотят попытаться придумать какое-либо применение гаджетам прошлых лет! Отчасти, это вина корпораций — Google намеренно тормозит и добивает довольно шустрые девайсы. Отчасти — вина программистов, которые преследуют исключительно бизнес-задачи и не думают об оптимизации приложений совсем. В один день я почувствовал себя Тайлером Дёрденом от мира IT и решил бросить вызов проприетарщине: написать свою прошивку для уже существующего смартфона с нуля. А дабы задачка была ещё интереснее, я выбрал очень распространенную и дешевую модель из 2012 года — Fly IQ245 (цена на барахолках — 200-300 рублей). Кроме того, у этого телефона есть сразу несколько внешних шин, к которым можно подключить компьютер или микроконтроллер, что даёт возможность использовать его в качестве ультрадешевого одноплатника для DIY-проектов. Получилось ли у меня реализовать свои хотелки? Читайте в статье!
Читать дальше →
Total votes 204: ↑202 and ↓2+246
Comments138

Как завернуть трафик Wireguard через shadowsocks на роутере

Level of difficultyEasy
Reading time2 min
Views42K

Так как есть риск блокировки Wireguard протокола, то рассказываю, как сделать, что бы трафик туннеля шел через shadowsocks.

Пример будет для сервера на Ubuntu 22.04 и роутера кинетик, с установленным на нем Entware. Предполагается, что WG уже поднят и настроен. А так же на роутер установлен Entware.

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments17

Как мы учились обходить блокировки VPN в Китае, чтобы быть готовыми к РКН

Reading time7 min
Views99K

В понедельник 7 августа пользователи VPN-сервисов из России заметили проблемы с подключением к серверам. По собранной в соцсетях и Телеграме информации, ограничения затронули наиболее распространенные VPN-протоколы OpenVPN,  L2TP, PPTP и WireGuard. На сбои в работе VPN-сервисов жаловались клиенты мобильных операторов — Мегафон, МТС, Билайн, Tele2, Yota, Тинькофф Мобайл. 

В этот же день на Xeovo обвалилось огромное количество тикетов, но к вечеру, когда инеформация о новой волне блокировок VPN ещё продолжала расходиться по рунету, и СМИ ещё собирали статистику, которую мы здесь приводим, мы уже закрыли большую часть из них и соединение наших клиентов было восстановлено. Как нам это удалось? Дело в том, что весь последний год мы посвятили борьбе с Великим Китайским файерволлом, а именно — с блокировками VPN в Китае.

Читать далее
Total votes 122: ↑119 and ↓3+153
Comments114

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

Level of difficultyEasy
Reading time11 min
Views491K

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

Но кое о чем мы не поговорили. Во второй статье я вскользь упомянул самую передовую и недетектируемую технологию обхода блокировок под названием XTLS-Reality, и пришло время рассказать о ней поподробнее, а именно - как настроить клиент и сервер для нее.

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

Читать далее
Total votes 37: ↑37 and ↓0+37
Comments310

IronZen: как мы решили боль тысяч тревожных людей, разработав собственное мобильное приложение

Level of difficultyEasy
Reading time5 min
Views5.9K

Кейс о том, как компания друзей с опытом в IT и digital на досуге начала разрабатывать приложения, и в первом же проекте закрыла острую проблему людей с повышенной тревожностью и ОКР, дав старт собственной кузнице аппок.

Читать далее
Total votes 18: ↑14 and ↓4+13
Comments36

Information

Rating
Does not participate
Registered
Activity

Specialization

Fullstack Developer
Middle
C#
.NET Core
ASP.Net
Docker
Git
Linux
Python
English
SQL