Pull to refresh
9
0.8
Send message

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

Level of difficultyEasy
Reading time5 min
Views5.6K

В статье автор расскажет, почему модуль порошкового пожаротушения «Буран-2,5-2С» посчитали виновником пожара, разберёт, как он устроен, и самостоятельно протестирует модуль на предмет конструктивных недостатков.

Читать далее

Как сделать и настроить собственный VPN

Reading time6 min
Views115K

В этой статье я подробно расскажу как оформить сервер и поднять свой VPN на протоколе VLESS с XTLS-Reality, который выделяется на общем плане тем, что трафик шифруется и маскируется под подключение к популярным сайтам (доменам), тем самым станет тёмной лошадкой для ТСПУ.

Читать далее

Как устроены серийники для Windows, и как восстановить стёршийся COA

Level of difficultyMedium
Reading time9 min
Views26K

Эта история начинается с того, что я попытался переустановить Windows на ноутбуке, доставшемся мне вот с такой наклейкой Certificate of Authenticity (COA): часть символов серийника видны хорошо, остальные – в большей или меньшей степени угадываются; но несколько попыток ввести серийник «на глаз» успехом не увенчались. Пришлось углубляться в вопрос подробнее.

Читать далее

far2l в Ubuntu 24.04 LTS готов для повседневного использования

Level of difficultyEasy
Reading time6 min
Views27K

Несколько дней назад вышло обновление, устраняющее последние шероховатости UX, и мы рады представить вам долгожданный полноценно работающий Far Manager в составе LTS-версии Ubuntu 24.04! В этой статье я расскажу, как получить максимум удовольствия от его использования. Поехали!

sudo apt update

sudo apt install far2l

Читать далее

Использование Annotated в Python

Level of difficultyMedium
Reading time8 min
Views12K

Всем привет. Ранее мы с вами разбирали универсальные типы в python. Продолжая тему подсказок типов, в данной статье, я расскажу о примерах использования Annotated из модуля typing. Если вы слышите о Annotated в первый раз, то для лучшего понимания, стоит ознакомится с PEP 593 – Flexible function and variable annotations.

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

Читать далее

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Views312K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее

«Строка бога» и «лакмусовая бумажка» для ИИ-генераторов изображений

Level of difficultyEasy
Reading time6 min
Views7.8K

Здравствуйте, уважаемые читатели!

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

Кроме того, хотелось бы ввести в обиход промт-инженеров два новых термина.

Читать далее

Микросервис на Python+ FastAPI

Level of difficultyEasy
Reading time19 min
Views26K

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

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

В микросервисной архитектуре приложение разбивается на несколько отдельных служб, которые выполняются в отдельных процессах. Существует другая база данных для разных функций приложения, и службы взаимодействуют друг с другом с использованием HTTP, AMQP или двоичного протокола, такого как TCP, в зависимости от характера каждой службы. Межсервисное взаимодействие также может осуществляться с использованием очередей сообщений, таких как RabbitMQ , Kafka или Redis .

Читать далее

Как стать VPN провайдером за один вечер

Level of difficultyMedium
Reading time13 min
Views165K

Рассказываю о своём опыте использования Xray (с протоколом VLESS-Reality) - одного из лучших решений для преодоления интернет-цензуры на сегодняшний день. Я потратил много времени на то, чтобы разобраться с ним - теперь вам достаточно одного вечера, чтобы поднять свой сервер на несколько десятков пользователей, c xray на борту!

скрипт ex.sh для простой настройки и установки; есть поддержка Docker

легко добавлять пользователей; клиентские конфиги в форме url-ссылок

правильные конфиги: скрытность + удобство

трафик популярных российских сайтов идёт напрямую, a не через сервер

для xray есть приложения под все популярные ОС - делюсь инструкциями

только https, нет udp; торренты через сервер блокируются по возможности

мой проект на гитхабе: easy-xray

Интересны детали? Добро пожаловать под кат

Как я создаю себе колоды Anki для немецких слов

Level of difficultyMedium
Reading time14 min
Views11K

Я захотел продолжить некогда заброшенное изучение немецкого языка. Долгое время на просторах интернета слышал мнение, что карточки Anki – чуть ли не самый лучший способ изучение языка, и решил, собственно, посмотреть что к чему. Рекомендации YouTube привели меня к интересному видео, где автор рассказывает о своем шаблоне карточек с немецкими словами. Автор не желал публиковать свою колоду, и не найдя аналогов среди публичных колод, я принялся делать свое. Конечно же не вручную.

Читать далее

Асинхронный python без головной боли (часть 2)

Reading time9 min
Views68K

Продолжаем вкусно готовить asyncio

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

Выпей меня

Асинхронный python без головной боли (часть 1)

Reading time14 min
Views343K

Почему так сложно понять asyncio?

Асинхронное программирование традиционно относят к темам для "продвинутых". Действительно, у новичков часто возникают сложности с практическим освоением асинхронности.

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку

Асинхронный python без головной боли (часть 3)

Level of difficultyEasy
Reading time10 min
Views24K

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

И снова здравствуйте

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

Level of difficultyMedium
Reading time23 min
Views180K
image

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

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

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

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

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

Xray на Keenetic / Xkeen

Level of difficultyEasy
Reading time9 min
Views164K

Утилиту для поддержки Xray на роутерах Keenetic — Xkeen.
Весь код написан на чистом shell и открыт на GitHub.

Собирает Xray под Ваш Keenetic на Entware.
Доступны GeoIP и GeoSite от AntiFilter, AntiZapret и v2fly.

Автоматически обновляет в указанное время Xray, GeoIP и GeoSite.

Ознакомиться с Xkeen

Cамое простое решение для Kerberos сервера на замену Microsoft AD?

Level of difficultyMedium
Reading time3 min
Views11K

Всем привет!

Вот такой вопрос прозвучал в комментариях к этой статье, спасибо автору, а еще, нам на предприятие пришло вот такое распоряжение:

Читать далее

Самый простой способ ввести Linux в домен

Level of difficultyMedium
Reading time5 min
Views57K

Всем привет!

Термин Microsoft Active Directory Domain Services включает в себя множество технологий, поэтому сразу уточню, в этой статье речь пойдет про использование контроллера домена только для аутентификации пользователей. То есть в финале, нужна возможность любому сотруднику предприятия сесть за любую рабочую станцию Linux, используя свой доменный логин и пароль.

Начиная с Windows 2000 Server для аутентификации пользователей домена используется протокол Kerberos, разработанный еще в 80-х годах прошлого столетия, алгоритм работы которого, ИМХО, являет собой пример отличного инженерного хака, в хорошем (изначальном:) смысле этого слова. В конце статьи есть ссылка на описание его работы, а сейчас надо сказать, что имеется несколько реализаций этого протокола и решение из этой статьи не привязано только к Microsoft Active Directory

Читать далее

Шаблоны статистической обработки данных по ГОСТ в JupyterLab и MS Excel

Reading time2 min
Views7K

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

Делюсь результатом

MPIRE — быстрая альтернатива multiprocessing

Reading time16 min
Views4.9K

MPIRE комбинирует функции, подобные map из multiprocessing.Pool, с преимуществами копирования при записи общих объектов multiprocessing.Process. В пакете также есть простые в работе функции состояния рабочего процесса, информирования о нём и индикатора выполнения. Сокращённым переводом документации делимся к старту курса по Fullstack-разработке на Python.

Читать далее
1

Information

Rating
1,792-nd
Registered
Activity