В данной статье описан общий процесс сборки RPM-пакета из исходников на примере интерпретатора Python.
Сетевик/DevOps
Удаленно следим за состоянием газового котла
Из рекламы молока всем известно, как хорошо иметь домик в деревне. Вариаций мемов на эту тему огромное количество, но суть одна — необходимо много работать. Например, в промышленных масштабах выращивать помидоры, крутить компот из яблок и окучивать малину. Мне, молодому поколению, такая постановка задачи непонятна. Зачем выращивать, когда продается готовое? Из аргументации можно услышать: «А зачем переплачивать?». Так что трагикомических воспоминаний о сенокосе или очистке полей картошки от майского жука и организации её орошения предостаточно. Поэтому мой домик в деревне, сокращенно дача, является образцом рационального пользования, поведения, неприемлемого в былые времена.
Неотъемлемой частью дачи является система отопления. Конечно, существуют дачи, которые на зиму «консервируются», но в моем случае газовый котел и все коммуникации есть. Современные котлы оборудованы электронной управляющей платой. Изучив документацию на котел Lemax Primve обнаруживаем, что к плате подключаются несколько термисторов, датчик протока, реле давления воды, электрод ионизации, электрод розжига, в общем все, что нужно для его правильного функционирования. Старые чугунные котлы имели в своем распоряжении только горелку и биметаллическую пластину с газовым клапаном. Если пламя тухло по тем или иным причинам, нужно было свернуть старую газету, зажечь её кончик и внести в область горелки. С современными котлами такую процедуру проделывать категорически не рекомендуется. Лучше посмотреть код ошибки на экране или вызвать мастера.
Python лёгкий. Go простой. Простой != лёгкий
Python и Go отличаются по свойствам, и поэтому могут дополнять друг друга.
Существует распространённое заблуждение, будто простой и лёгкий — это одно и то же. В конце концов, если некий инструмент легко использовать, то и его внутреннее устройство должно быть просто понять, разве не так? И обратное тоже верно, да? На самом деле, всё как раз наоборот. В то время, как по духу оба понятия указывают на одно и то же (итог со стороны кажется лёгким), на практике такая поверхностная лёгкость достигается огромной подкапотной сложностью.
Простой и удобный шаблон для bash-скриптов выполняемых по расписанию
Хочу поделиться с сообществом простым и полезным шаблоном скрипта-обёртки на bash для запуска заданий по cron (а сейчас и systemd timers), который моя команда повсеместно использует много лет.
Сначала пара слов о том зачем это нужно, какие проблемы решает. С самого начала моей работы системным администратором linux, я обнаружил, что cron не очень удобный планировщик задач. При этом практически безальтернативный. Чем больше становился мой парк серверов и виртуальных машин, тем больше я получал абсолютно бесполезных почтовых сообщений "From: Cron Daemon". Задание завершилось с ошибкой - cron напишет об этом. Задание выполнено успешно, но напечатало что-нибудь в STDOUT/STDERR - cron всё равно напишет об этом. При этом даже нельзя отформатировать тему почтового сообщения для удобной автосортировки. Сначала были годы борьбы с использованием разных вариаций из > /dev/null
, 2> /dev/null
, > /dev/null 2>&1
, | mail -E -s '<Subject>' root@
.
Эффективность на максимум: Микрооптимизации в Golang
Привет, Хабр!
Каждая миллисекунда имеет значение, микрооптимизация это must have, особенно на языке Go.
Казалось бы, современные пекарни настолько мощные, что могут простить нам небольшую неэффективность. Однако, когда дело доходит до масштабируемых систем и высоконагруженных приложений, каждая лишняя аллокация памяти и каждый неоптимальный цикл могут привести к значительному снижению производительности. Микрооптимизации позволяют добиться максимальной эффективности и производительности.
Как получить первый опыт работы: 11 платформ для IT-волонтерства
Периодически публикую, как найти первую работу в аналитике данных. И в этом посте один из вариантов, но не только для аналитиков данных, но и для разработчиков, маркетологов, дизайнеров, менеджеров и др вакансий в IT и digital.
Что ты такое, dhclient?
Сетевой стек Linux не прост даже на первый взгляд: приложение — в юзерспейсе, а всё, что после сокета, — в ядре операционки. И там тысяча реализаций TCP. Любое взаимодействие с сетью — системный вызов с переключением контекста в ядре.
Чтобы лишний раз не дёргать ядро прерываниями, придумали DMA — Direct Memory Access. И это дало жизнь классу софта с режимом работы kernel bypass: например при DPDK (Intel Data Plane Development Kit). Потом был BPF. А за ним — eBPF.
Но даже помимо хаков работы с ядром есть такие штуки, как sk_buff, в которой хранятся метаданные всех миллионов протоколов. Есть NAPI (New API), которая призвана уменьшить число прерываний. Есть 100500 вариантов разных tables.
И копать можно безгранично далеко. Но сегодня мы всё же поговорим о вещах более приземлённых и повседневных, которые лишь приоткрывают вход в эту разветвлённую сеть кроличьих нор. Мы разберём одну любопытную задачку, на примере которой ужаснёмся тому, как сложно может быть реализован такой простой протокол, как DHCP.
Пентесты: готовим рабочее окружение для атаки
Веб-пентест — это специализированная процедура, в ходе которой специалисты по кибербезопасности активно ищут и эксплуатируют уязвимости веб-системы. Цель такой симулированной атаки — выявить слабые звенья системы безопасности, которые могут стать целью для настоящих атак.
Этот процесс аналогичен ситуации, когда банк нанимает эксперта для тестирования устойчивости своих систем. Задача эксперта — обойти системы безопасности и получить доступ к данным. Если ему это удаётся, банк получает ценную информацию, как эти системы усовершенствовать.
Авторы курса «Специалист по информационной безопасности» собрали рекомендации о том, как подготовить рабочее окружение для веб-пентеста.
I2C датчик INA219 + Python + Repka Pi: измеряем ток, напряжение и мощность во встраиваемых системах управления
Когда вы создаете проект промышленной установки, робота, дистанционно управляемой модели ровера или аналогичный проект с микрокомпьютером, встает задача контроля состояния систем электропитания. Вам нужно проверять напряжение на аккумуляторах, потребляемый ток и мощность. Не исключено, что в проекте есть не одна, а несколько цепей, где нужно обеспечить подобный контроль.
Результаты контроля можно передавать, например, на пульт управления или использовать как‑то еще. Когда заряд аккумуляторов подходит к концу, можно отключить какие‑нибудь устройства с целью экономии энергии или инициировать зарядку аккумуляторов вашего устройства. Если в устройстве есть сервоприводы, можно контролировать потребляемую ими мощность, а при перегрузке отключать все сервоприводы или некоторые из них.
В этой статье мы расскажем об использовании для контроля напряжения, тока и мощности недорогого модуля GY-219 с интерфейсом I2C и чипом INA219. Вы сможете подключить его практически к любому микрокомпьютеру, где есть такой интерфейс.
В статье будет описано подключение GY-219 к отечественному микрокомпьютеру Repka PI, однако все будет работать и с Raspberry Pi. В интернете вы найдете руководства, как подключить GY-219 к любому другому микрокомпьютеру или микроконтроллеру с интерфейсом I2C.
Двухтрубные системы отопления тупикового и попутного типа. Мнимая магия «петли Тихельмана»
Двухтрубные системы отопления тупикового и попутного типа. В чём разница и что об этом говорят современные строительные нормы.
Ранее в одной из статей я уже рассказывал об однотрубных системах отопления.
Теперь настала очередь рассмотреть особенности проектирования и эксплуатации двухтрубных систем, которые крайне популярны у частных домовладельцев в ИЖС.
Так же двухтрубные вертикально-стояковые системы отопления пытаются применять и в многоквартирных домах.
Далее мы рассмотрим гидравлический расчёт систем для одного этажа частного дома с периметром в те же 50м для дом 10х15м по внутренним стенам (150м.кв на этаж).
А позже попытаемся применить те же подходы для максимальной высоты 50м в стояковой системе высотного дома.
Тупиковая система
Тупиковой схемой системы отопления называют такую схему, где трубы подачи и обратки выходят из одной начально точки, а сами трубы идут параллельно друг другу.
NumPy: шпаргалка для начинающих
What's up guys!
В этой статье мы поговорим про NumPy. Это статья-шпаргалка для начинающих пользователей NumPy, надеюсь она будет вам полезна.
Протоколы семейства TCP/IP. Теория и практика
В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур данных, передаваемых по сети, а при рассмотрении сетевого программирования основное внимание уделяют интернет-сокетам.
Но при изучении и исследовании хочется большего, например, поэкспериментировать с пакетами сетевых протоколов. Многие сетевые протоколы реализованы в ядре операционной системы, и что-либо изменить может оказаться сложной задачей, так как это требует навыков в написании драйверов для операционной системы. Но использование специализированных библиотек позволяет работать с протоколами на низком уровне из пространства пользователя.
В ходе работы над статьёй я написал небольшое приложение, которое послужит отправной точкой для понимания компьютерных сетей и семейства протоколов TCP/IP. С приложением можно экспериментировать, получая дополнительные знания.
Приложение — простое и понятное и, надеюсь, упростит изучение материалов статьи. Ведь именно радость первой победы даёт мотивацию, достаточную для того, чтобы потратить гораздо больше времени на изучение темы.
В статье изложены наиболее важные с моей точки зрения понятия, которые должен знать любой программист, хоть как-то сталкивающийся с компьютерными сетями. Так что без теоретических сведений не обошлось.
Как взломать IOT-устройство за 60 минут?
Всем привет! Меня зовут Артём Семенов, я занимаюсь пентестами в компании RTM Group.
В эпоху быстро развивающегося Интернета вещей (IoT) критически важные сетевые устройства могут оказаться под угрозой у различных категорий пользователей и индустрий: финансовой, нефтегазовой, транспортной и т.д. Так, например, нестабильность и различные уязвимости IoT-устройств могут открыть возможности киберпреступникам для совершения атак, компрометации системы платежей, получения доступ к чувствительной финансовой информации клиентов. В нефтегазовой сфере эксплуатация проблем безопасности IoT может обернуться серьезными проблемами безопасности и катастрофическими последствиями. Нарушители могут вмешаться в процессы производства, вызвать аварии или даже создать потенциально опасные ситуации, нанося ущерб компаниям и создавая угрозы для окружающей среды и для жизни людей.
Именно поэтому проведение тестирование на проникновение IoT является особенно важным для заказчиков из финансовой, нефтяной, транспортной отраслей, из здравоохранения и госсектора, - с его помощью возможно выявить и решить различные проблемы безопасности информационных систем. В данной статье мы разберем такой пентест от начала и до конца: от подготовительного этапа, где устанавливаются параметры тестового окружения, до конечной стадии, где уязвимости активно эксплуатируются для оценки степени риска и последствий их возможного использования.
Почему сервер не просто «большой макбук». Часть 1
Топология памяти
Очень часто вижу подход к серверам и вычислительной инфраструктуре на кухонном уровне даже от вроде бы профессиональных людей с высочайшими ЗП в полмиллиона и выше.
Сервер - это просто большой макбук, а СХД просто большой диск.
Итак, давайте разбираться. И начнем со страшной темы - топология памяти.
Объяснять буду реально на желудях и шишках, поэтому сразу просьба к крутым суперпрофи - не надо пытаться меня уличить, это не для вас написано.
Есть процессор, который исполняет команды, и канал доступа к памяти, которая требуется для этих команд. Канал характеризуется двумя показателями: задержка доступа (через сколько наносекунд придет ответ), ширина канала (сколько гигабайт в секунду).
Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто
В серии предыдущих статей я описывал, почему повсеместно используемые VPN- и прокси-протоколы такие как Wireguard и L2TP очень уязвимы к выявлению и могут быть легко заблокированы цензорами при желании, обозревал существующие гораздо более надежные протоколы обхода блокировок, клиенты для них, а также описывал настройку сервера для всего этого.
Но кое о чем мы не поговорили. Во второй статье я вскользь упомянул самую передовую и недетектируемую технологию обхода блокировок под названием XTLS-Reality, и пришло время рассказать о ней поподробнее, а именно - как настроить клиент и сервер для нее.
Кроме того, что этот протокол еще более устойчив к выявлению, приятным фактом будет и то, что настройка сервера XTLS-Reality гораздо проще, чем описанные ранее варианты - после предыдущих статей я получил довольно много комментариев типа "А что так сложно, нужен домен, нужны сертификаты, и куча всего" - теперь все будет гораздо проще.
Паяльные станции с феном для новичка: 5 доступных в 2023 году вариантов
Без паяльной станции работать с современной электроникой, будь то ноутбук, десктопный ПК или смартфон, вряд ли получится. Лучше всего сразу покупать станцию с паяльным феном — он всё равно понадобится, одним паяльником не обойтись.
Профессионалы и так знают, что выбрать, у них уже есть собственные предпочтения. Ну а эту статью мы написали для новичков — в ней указано несколько паяльных станций, которые хорошо себя показывают в работе.
PXE деплой ESXI-Foreman
Рассказываем как PXE-деплой ESXi-Foreman может упростить вашу работу с виртуализацией и сэкономить время и усилия при установке и настройке серверов ESXi.
Сегодня в большинстве компаний широко применяется виртуализация в инфраструктуре, что позволяет размещать различные сервисы компании и эффективно использовать ресурсы физических серверов. В связи с этим мы приняли решение внедрить виртуализацию VMware ESXi. При выборе метода установки мы рассмотрели два варианта: Legacy и UEFI.
Что не так с OpenAPI?
Как мы боролись с документированием API на наших проектах, и как мы немного сошли с ума
У вас на проекте порядок с документацией на API? Скорее всего нет. И в нашей компании порядка не было.
Не будем рассказывать, к каким печальным последствиям приводит ошибочная, устаревшая или вовсе отсутствующая API-документация. Почему же на большинстве проектов не удаётся решить такой, казалось бы, несложный вопрос?
Странный мир путей файлов в Windows
Пути файловых систем в Windows страннее, чем можно подумать. В любой производной от Unix системе пути на удивление просты: если нечто начинается с
/
, то это путь. Но всё совершенно иначе в Windows, которая имеет озадачивающее разнообразие схем составления пути.Когда я реализовал функцию автозавершения пути в Fileside 1.7, мне нужно было изучить этот вопрос внимательнее, чтобы ничего не упустить. В этой статье я расскажу о своих находках.
Стоит заметить, что статья ограничивается только тем типом путей, который видит пользователь приложений Windows (обусловленный Win32 API). Под этим слоем есть ещё больше любопытного, в основном касающегося тех, кто пишет драйверы оборудования и тому подобное.
Как обеспечить защиту периметра сети после ухода с рынка иностранных производителей
Риски отключения функций защиты в связи с отзывом лицензии производителем или блокировкой подключений с IP-адресов РФ существенно возросли, поэтому вопрос о замене иностранного оборудования на российское становится все более актуальным.
В этой статье мы рассмотрим, как изменить инфраструктуру информационной безопасности, чтобы максимально использовать сильные стороны оборудования иностранного производства, избежав при этом потенциальных рисков при его эксплуатации.
Информация
- В рейтинге
- 2 344-й
- Откуда
- Баку, Азербайджан, Азербайджан
- Дата рождения
- Зарегистрирован
- Активность