Pull to refresh
0
0.4
Send message

Windows 11 24H2 IoT Enterprise LTSC – что за зверь, и чем он хорош?

Level of difficultyEasy
Reading time4 min
Views116K

Месяц назад я писал статью об издании Enterprise G, созданную Microsoft для китайского правительства, в котором много лишнего отключено. Статья вызвала большой интерес, много кому нужна ОС с максимальным функционалом — при вашем желании его использовать, но с возможностью отключить всё (или почти всё) ненужное. У версии Enterprise G основной недостаток в том, что политика продукта, прописанная в цифровой лицензии, запрещает установку любых языковых пакетов, отличных от китайского и английского. То бишь, русского интерфейса легким путем не достичь. Возникает вопрос выбора другого издания.

Сразу на ум приходит версия Enterprise LTSC, как полнофункциональная с длительным циклом обслуживания и поддержки, благо для Windows 11 24H2 она утекла еще в апреле. Но, оказывается, есть и более достойный выбор, о котором мы сейчас с вами и поговорим. Речь идёт об издании IoT Enterprise LTSC. Что это такое? Чем оно лучше, чем Enterprise LTSC? А чем хуже? Как её русифицировать и как активировать? Об это сегодняшний разговор.

Чем же так отличается IoT Enterprise LTSC?

Как настроить воркфлоу: 7 дельных советов от опытного разработчика

Level of difficultyEasy
Reading time6 min
Views8.7K

Я разработчик. Мне удалось так наладить свою ежедневную работу, что последние несколько лет в среднем я успеваю сделать 1–2 запроса pull каждый день. Не то чтобы это наилучший показатель, и необязательно стремиться именно к нему, но он позволяет получить общее представление об эффективности работы.

Сегодня делюсь с вами полезными рекомендациями, как организовать процесс разработки программного обеспечения так, чтобы показатели эффективности и продуктивности выросли.

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

Создание собственного API на Python (FastAPI): структура проекта, SQLAlchemy PostgreSQL, миграции и первые модели таблиц

Level of difficultyMedium
Reading time21 min
Views35K

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

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

Уже на данном этапе код становится громоздким и сложным для понимания. К тому же, хранение данных в JSON‑файлах — это далеко не самый профессиональный подход. «Нормальные ребята» используют SQLAlchemy, причем асинхронно.

Сегодня мы займемся интеграцией асинхронной SQLAlchemy в наше FastAPI‑приложение. Для упрощения навигации и понимания кода я предложу структуру проекта, которую сам использую в каждом FastAPI‑приложении.

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

Читать далее

Не тереби мое API или API-First Security Strategy

Reading time4 min
Views1.7K

В современной цифровой экосистеме API (интерфейсы программирования приложений) играют ключевую роль, обеспечивая связь и взаимодействие между различными компонентами программного обеспечения. Защита API стала приоритетной задачей разработчиков и инженеров, поскольку уязвимости в этих интерфейсах могут привести к серьезным нарушениям безопасности и утечке данных. Методы защиты API включают в себя широкий спектр практик, начиная от использования аутентификации и авторизации до применения шифрования данных и мониторинга трафика. Грамотно построенная система защиты API является неотъемлемой частью современной инфраструктуры, обеспечивая надежность, конфиденциальность и целостность информационных потоков.

Читать далее

Защита бекапов с помощью ChatGPT4 — строим LastHope сервер

Level of difficultyMedium
Reading time6 min
Views2.2K

Ситуация - два Hyper-V сервера, десяток виртуалок, на каждый Hyper-V установлен VBR CE, бекапы хранятся на соседних дисках + раз в неделю каталоги с бекапами синхронизируются со стареньким NetGear NAS.

Казалось бы - что тут может пойти не так??!! Да все! Несмотря на то, что Hyper-V не в домене - сломать его по сети вполне реально, если злоумышленник попадет хотя бы на одну рабочую станцию (или подключится по WiFi). NetGear NAS уже устарел, прошивка содержит известные уязвимости. В общем бекапы не защищены и в случае атаки изнутри - шансы получить проблемы весьма велики.

Решение - делаем отдельный хакеро-защищенный NAS на базе Debian Linux 12 + iptables + скрипты от ChatGPT4.

Читать далее

Self Hosted для домашнего сервера

Level of difficultyMedium
Reading time10 min
Views37K

Есть отличный термин self hosted, который очень популярен в англоязычном интернете.
Но он плохо переводится, почти как open source - хотя википедия и пытается дать ужасно звучащий термин "самохостинг"...

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

В общем, self hosted - это когда вы решаете, что какие-то вещи лучше хранить у себя, а не отдавать злым корпорациям - фотографии, почту, умный дом, книги, и так далее.
И собираете под это какой-то сервер, полноценным хозяином которого являетесь только вы.

Эту статью я пишу во многом для нескольких друзей, которые решили приобщиться к этому тренду, и здесь будет обзор моего личного self hosted - про всякие разные штуки, которые показались полезны лично мне, и плотно заняли своё место на моём домашнем сервере.

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

Читать далее

Микросервисы в представлении среднего разработчика, и как всё на самом деле

Level of difficultyMedium
Reading time11 min
Views67K

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

Когда спрашиваю у людей на собесах, или когда в команде решаем, как клепать очередной проект, такое порой слышу, что становится страшновато. Мне кажется, лет через 5 все компании будут обитать в мультивселенной безумия из “микросервисов”, которую они себе радостно построили, уходя от этих ваших страшных “монолитов”.

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

погрузиться в микросервисы

Кратко про классную библиотеку для создания веб-приложений в Python — Tornado

Level of difficultyMedium
Reading time7 min
Views4K

Сегодня мы рассмотрим библиотеку для создания веб-приложений на Python - Tornado.

Tornado был разработан в компании FriendFeed, которая позже была приобретена Facebook в 2009 году. Основная идея создания Tornado заключалась в высокой производительности и масштабируемости при обработке большого числа одновременных соединений. Этого удалось достичь с помощью асинхронности.

Читать далее

Настройка Git сервера с нуля

Level of difficultyEasy
Reading time12 min
Views17K

Любой начинающий DevOps начинает своё знакомство с Git. Этот инструмент стал неотъемлемой частью рабочего процесса разработчиков по всему миру. Во многих курсах и руководствах по DevOps описывается настройка серверов через популярные платформы, такие как GitLab, а иногда и Gitea. Однако мне стало интересно попробовать другой путь — использовать встроенный в Git инструмент GitWeb.

Подробнее

DNS-хостинг для начинающих: разбираемся в многообразии ресурсных записей

Reading time9 min
Views21K

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

Быстро разворачиваем docker, nginx и certbot

Level of difficultyEasy
Reading time2 min
Views3.5K

В нашей команде мы часто сталкиваемся с необходимостью развертывания новых серверов с одинаковой конфигурацией: nginx, docker, docker-compose и certbot. nginx используем для проксирования докера и назначения человеческого DNS. Для того чтобы не повторяться мы, мы разработали набор скриптов...

Читать далее

Краткий справочник по «всем-всем» командам Linux

Level of difficultyMedium
Reading time90 min
Views192K

Периодически меня на начальном курсе просят дать "список всех-всех команд с кратким описанием что делает"... Ну прям "всех-всех". И ведь если искать в интернете "такие" справочники существуют - либо про "20-30 команд, но самых важных", либо с неточностями и устаревшей информацией. Так что предлагаю вашему вниманию свою версию такого "краткого" справочника (на 300, 515, 612, 716, 842, 1005,... 1260 команд) с ссылками на wiki-описание и на cheat.sh-примеры наиболее важных команд.

Справочник по всем-всем командам LINUX

Шпаргалка с командами для Windows, Linux и macOS (Терминал, VirtualEnv и Git)

Reading time3 min
Views24K

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

В ней вы найдете основные команды для работы в терминале Windows, Linux и macOS. Также описаны базовые команды по работе с VirtualEnv и Git.

Смотреть команды

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

Level of difficultyMedium
Reading time8 min
Views12K

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

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

Читать далее

Ускорение роутера в Django в 51 раз

Level of difficultyMedium
Reading time6 min
Views15K

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

Читать далее

Введение в gRPC: Основы, применение, плюсы и минусы. Часть I

Level of difficultyEasy
Reading time4 min
Views29K

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

Читать далее

Об извлечении кода в Python

Reading time6 min
Views6.5K
Я начал изучать Python в 2009 году, столкнувшись с очень нетривиальной и, кстати, необычной задачей на этом языке. Тогда я разрабатывал приложение для ПК, где графический пользовательский интерфейс создавался на PyQT, а основным языком в программе был Python.

Чтобы скрыть код, я встроил интерпретатор Python в самостоятельный исполняемый файл Windows. Это можно сделать при помощи множества инструментов (напр., pyinstaller, pyexe), все они функционально похожи. Они компилируют в байт-код ваши скрипты, написанные на Python, а далее, связывая их с интерпретатором, укладывают в исполняемый файл. Если компилировать скрипты, понижая их до байт-кода, то злоумышленникам становится сложнее добраться до вашего исходного кода и взломать ваше приложение. Байт-код приходится извлекать из исполняемого файла и декомпилировать. Кроме того, таким способом можно выполнять обфускацию кода, и в результате код становится гораздо сложнее понимать.
Читать дальше →

Удобный CI/CD доступен каждому

Level of difficultyMedium
Reading time13 min
Views16K

Привет, Хабр! Недавно я выступал на Moscow Python Conf, где делился нашим опытом создания и использования CI/CD пайплайнов. В данной статье я расскажу об этих пайплайнах, раскрою их особенности и покажу, как они помогают нам быстро доставлять код и поддерживать высокий показатель Time To Market. Надеюсь, что наш опыт будет полезен и вам.

Читать далее

Дешифрование паролей для доступа к потерянным Биткоин Кошелькам с помощью метода Gauss-Jacobi

Reading time14 min
Views8.4K

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

Метод Gauss-Jacobi является итеративным численным методом для решения систем линейных уравнений. Он широко используется в различных областях, таких как криптография, криптоанализ, инженерия и вычислительная математика. Сеть Биткоин использует криптографические алгоритмы, такие как хэш-функции SHA-256, алгоритм подписи ECDSA, эллиптические кривые secp256k1, для создания публичных и приватных ключей, которые представляют собой точки на эллиптической кривой. Приватный ключ – это секретная числовая величина, которая используется для генерации публичного ключа, а публичный ключ – это точка на кривой, полученная путем вычисления с приватным ключом. Таким образом, эллиптические кривые secp256k1 лежат в основе криптографических механизмов, которые обеспечивают безопасности транзакций и защиты от различных атак. Современные технологии которые развивают предварительно обученную модель Bitcoin ChatGPT находят эффективные способы решение сложных криптографических задач, лежащих в основе алгоритмов, используемых в Биткоине.

Читать далее

Безопасность первична: сетевое взаимодействие и привилегии контейнеров в Docker

Reading time8 min
Views8.1K

Привет, Хабр! Меня зовут Эллада, я специалист по информационной безопасности в Selectel. Продолжаю рассказывать о безопасности в Docker. В новой статье поговорим о сетевом взаимодействии контейнеров, правильном управлении привилегиями и ограничении потребления системных ресурсов.

Поделюсь, почему не стоит использовать bridge docker0 и network namespace хоста, чего не стоит делать при монтировании каталогов и многими другими советами. Придерживайтесь наших рекомендаций и сделайте работу с Docker еще более защищенной!
Читать дальше →

Information

Rating
2,136-th
Registered
Activity