Search
Write a publication
Pull to refresh
3
0.4

User

Send message

Надеть Telegram на OpenVPN и завернуть это в Docker

Reading time8 min
Views18K

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

Мой старый товарищ OpenVPN ни разу не подвел меня.

Подумав обо всех неудобствах и издержках я решил улучшить имеющийся механизм управления всем VPN-хозяйством.

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

Механизм управления VPN сервисом теперь не требует каких-либо навыков системного администрирования или доступа к Linux-консоли при выполнении рутинных операций. Например, чтобы сделать сертификаты новому пользователю вам достаточно иметь телефон с telegram-клиентом.

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

Полезного чтения

Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 2)

Reading time7 min
Views24K

В прошлой части мы обсудили модули Ansible и прочитали о некоторых важных модулях. Таких, как модуль проверки подключения хоста и целевого узла (модуль ping), модуль, способный извлекать информацию из целевого узла (модуль setup), модуль управления существующим пакетом и установки новых (модули yum, apt, package, pip и npm), а также модуль запуска базовых команд и сценариев на целевых узлах (модули raw, command, shell и script).

В этой части серии мы рассмотрим все модули, связанные с управлением различными файлами и их свойствами.

Поехали…

Читать далее

Создаем кибер-разведку в компании на основе OSINT

Reading time10 min
Views27K

Привет ХАБР. Тема, которой посвящена эта статья с одной стороны важна, ведь в кибер-пространстве «неспокойно». Каждый день приходят новости, что ту или иную компанию взломали хакеры, получили дампы или зашифровали данные. Защищаться от кибер-угроз, выстраивая целую инфраструктуру из всевозможных средств защиты хорошо и нужно, но никогда не стоит забывать о разведке. В кибер-пространстве как в армии. Хорошо, когда на границах вырыты окопы, дежурит артиллерия и ПВО, но без разведки не понятно куда и чем противник будет атаковать. В цифровом мире базовая военная стратегия в целом не отличается. Разведка важна и нужна, чтобы быть готовыми и собирать данные, которые собирают злоумышленники о вас и вашей инфраструктуре. В этой статье разберем вопрос о том как создавалось направление кибер-разведки(OSINT open-source intelligence ) в компании.

С чего зародилась идея создания направления OSINT?

В наше время стал мейнстримом тренд на защиту персональных данных и всякой конфиденциалки в компании. Запрос на поиск источников утечек и их закрытия очевиден. Самое сложное расставить приоритеты или ответить на вопрос: "Что будем собственно искать?" Если открыть внутренние документы любой компании, то сведений, составляющих какую-либо из тайн (персональные, конфиденциальные, коммерческие) большое количество. Важно выбрать те, которые являются самыми важными для контроля и утечки которых реально можем находить и устранять.

Путем расстановки приоритетов и реальных возможностей мы выделили основные направления для OSINT:

Читать далее

Основы автоматизации в Ansible: роли и сценарии

Reading time6 min
Views48K

Ansible — инструмент управления конфигурациями. Задачи, которые решаются с его помощью, часто повторяются у разных людей и команд. Как и в случае программирования, где общий код выделяют в библиотеку, Ansible выделяет повторяющиеся вещи в роли. В статье объясним, в чём основная идея ролей, а также подробно разберём процесс их создания. 

Читать далее

Эксперименты и увлекательные манипуляции с дисковым кэшем Linux

Reading time5 min
Views7.5K

Надеюсь, теперь вы убедились, что Linux не “съел” всю вашу оперативную память. Вот несколько интересных вещей, которые вы можете сделать, чтобы узнать, как работает дисковый кэш.

Читать далее

6 Устойчивость систем автоматического регулирования. Теоремы Ляпунова. Критерий устойчивости Гурвица

Reading time9 min
Views36K

Продолжаем лекции по управлению в технических системах предыдущие части:

1. Введение в теорию автоматического управления.2. Математическое описание систем автоматического управления 2.1 — 2.32.3 — 2.82.9 — 2.13.

3. ЧАСТОТНЫЕ ХАРАКТЕРИСТИКИ ЗВЕНЬЕВ И СИСТЕМ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ РЕГУЛИРОВАНИЯ. 3.1. Амплитудно-фазовая частотная характеристика: годограф, АФЧХ, ЛАХ, ФЧХ3.2. Типовые звенья систем автоматического управления регулирования. Классификация типовых звеньев. Простейшие типовые звенья3.3. Апериодическое звено 1–го порядка инерционное звено. На примере входной камеры ядерного реактора3.4. Апериодическое звено 2-го порядка3.5. Колебательное звено3.6. Инерционно-дифференцирующее звено3.7. Форсирующее звено.  3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением)3.9. Изодромное звено (изодром)3.10 Минимально-фазовые и не минимально-фазовые звенья3.11 Математическая модель кинетики нейтронов в «точечном» реакторе «нулевой» мощности.

4. Структурные преобразования систем автоматического регулирования.

5. Передаточные функции и уравнения динамики замкнутых систем автоматического регулирования (САР).

Теперь перейдем к устойчивости!

Читать далее

38 лучших CI/CD-инструментов в 2022 году

Reading time36 min
Views51K

Непрерывная интеграция (CI) и непрерывная доставка (CD) или CI/CD стали неотъемлемой частью подхода к разработке программного обеспечения и тестирования DevOps. Этот подход дает разработчикам возможность непрерывного развертывания кода. Кроме того, ошибки выявляются на ранней стадии, что позволяет избежать проблем с интеграцией из-за частой фиксации исходного кода.

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

В этой статье мы рассмотрим 38 лучших CI/CD-инструментов из представленных на рынке и выделим их основные особенности.

Давайте разберемся!

Развертывание Windows UEFI с использованием Foreman

Reading time5 min
Views3.4K

Автор: DevOps Team Leader компании Hostkey Егор Гараджа

В прошлой статье мы рассказали, как нам удалось решить проблему установки Windows и Linux через Foreman в Legacy-режиме (BIOS/MBR). Другой важной задачей стала поддержка инсталляций в режиме EFI. В случае Foreman этот вопрос решается через использование отдельного загрузчика. Для Linux наш выбор пал на Grub2, и реализация загрузки оказалась достаточно тривиальной — нами была создана конфигурация Grub для загрузки initrd и ядра.

В случае с Windows ситуация сложнее. Изначально загрузка Windows осуществлялась через расширение для iPXE. Проблема, однако, в том, что это расширение, как и многие другие (memdisk и т. п.), не поддерживалось официально для EFI-версии загрузчика. Кнечно, можно попытаться решить этот вопрос самостоятельными правками и сборкой нужных модулей, но мы в целом хотели уйти от iPXE, поскольку это не совсем честный pxe-загрузчик, а скорее мини-операционная система со своими драйверами для сетевых карт, что изредка создавало проблемы при инсталляциях.

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

В результате изучения вопроса мы пришли к следующим вариантам решения проблемы:

Читать далее

Мониторинг межсервисного взаимодействия Kubernetes с помощью протокола NetFlow

Reading time7 min
Views8.2K

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

В идеале хотелось бы иметь какую-то карту взаимодействия сервисов в Kubernetes, которая сама автоматически обновляется. Такую карту можно построить с помощью инструментов типа Istio и Cilium. Но иногда можно обойтись и более простыми решениями — например, NetFlow.

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

Конфигурирование BGP на Juniper MX

Reading time8 min
Views11K

Привет, мимо пробегающий читатель!

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

Читать далее

Настраиваем QtCreator для полноценного программирования и отладки микроконтроллеров STM32

Reading time9 min
Views24K

Привет всем.

На данный момент я активно осваиваю разработку ПО для STM32 и хотел бы поделиться моим опытом.

Как известно, для STM32 имеется много сред для разработки, однако часть из них, несмотря на удобность, имеют ограничения по использованию в случае пробной версии. Так, для IAR размер прошивки ограничивается 32 кБ, что весьма немного.

В данной публикации будет рассмотрен способ настройки окружения для полноценной разработки и отладки ПО для микроконтроллеров STM32 в среде QtCreator.

Читать далее

Секреты observability. Часть 2: алерты

Reading time8 min
Views16K

image
Фото Ricardo Gomez Angel, Unsplash.com


Используем метрики для отправки уведомлений через Slack


В предыдущей статье мы задеплоили оператор Prometheus с помощью helm-чарта и на примере набора сервисов увидели, как можно собирать метрики через prom-client и экспортеры. Как вы помните, цель observability (наблюдаемости) — узнать статус системы, поэтому нужные люди должны получать уведомления, когда значения метрик выходят за установленные пределы. Для этого надо настроить алерты.

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

Как получить доступ к chatGPT в России

Reading time4 min
Views1.5M

Всем привет! Перед началом статьи сразу скажу:

САМЫЙ ВАЖНЫЙ ДИСКЛЕЙМЕР: естественно, покупая смс на чужой номер вы полностью компрометируете безопасность своего аккаунта. Мало ли кто его потом еще купит для получения доступа. Поэтому, помните, что представленный в данной статье способ получения доступа - это только на "поиграться". Не стоит вводить туда свои реальные почты и использовать это в работе, так как полученный доступ может быть в любой момент взломан/прикрыт.

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

Как и многих вокруг, меня удивила новая технология от Open AI. Попытался зайти и зарегистрироваться через гугл, но...

Читать далее

Сага о том, как я клеил ROS и Docker

Reading time4 min
Views5.7K

Это в общем-то первая статья на хабре, пробная и экспериментальная. Цель статьи изложить процесс создания темплейта под разработку для ROS (Robot Operating System) внутри контейнера и сделать это в шутливой манере.

Дальше бога нет

TDE в Platform V DataGrid: учим систему шифрования менять ключи на лету

Reading time8 min
Views1.5K

Привет, Хабр! Это Никита Амельчев и Павел Переслегин. Мы создаём Platform V DataGrid — распределённую базу данных, которая используется в сервисах Сбера и внешних клиентов. В статье расскажем, как мы усилили базовые функции шифрования TDE в нашем продукте и как решали вопрос совмещения полного шифрования и высокой производительности базы данных.

Читать далее

Двадцать бабушек – уже рубль. Как GraalVM Native Image позволяет экономить джавистам и девопсам деньги на облако

Reading time14 min
Views6.6K

Первая статья в нашем блоге. Я постарался написать хороший текст на основе докладов из Failover Bar и прошлого митапа Альфы, и человеческими словами объяснить, зачем нужен GraalVM.

Мы поговорим об экономии на облаках в мире победившего Кубернетиса, обсудим перформанс современного приложения, и какие ништяки Native Image помогут нам во всём этом.

Mad skills bonus: вы сможете писать на Java приложения для командной строки так, что они не будут тормозить по сравнению со скриптами на Bash. Но вначале небольшая телега вместо вступления.

Читать далее

Создаём стенд для бэкенд-разработки на Bare Metal (и не только). Часть 1

Reading time7 min
Views9.1K

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

В этом выпуске разберём установку Ubuntu, Docker, K8s, Metallb и Traefik.

Читать далее

Как самому за один вечер собрать минимальную ОС Linux из исходного кода

Level of difficultyMedium
Reading time11 min
Views107K
image

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

Ещё больше не даёт покоя мне тот факт, что все ядра операционной системы Linux, которые работают на различных устройствах и серверах, собраны из исходного кода, находящегося в репозитории на сайте kernel.org.

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

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

Kubernetes 1.26: обзор нововведений, включая первый KEP «Фланта»

Reading time18 min
Views8.2K

Этой ночью представят новую версию Kubernetes. Среди значимых улучшений релиза: возможность создавать тома из снапшотов, которые находятся в разных пространствах имен; поддержка OpenAPI v3 для команды kubectl explain; выравнивание ресурсов CPU в NUMA-кластере с учетом расстояния между узлами.

Также в Kubernetes 1.26 появится первая фича «Фланта», которая принята как Kubernetes Enhancement Proposal (KEP), а не просто как pull request.

Читать далее

Information

Rating
2,065-th
Registered
Activity