Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Ansible + Grafana Loki: Настраиваем отправку уведомлений в чат после логина на сервер по SSH

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров11K

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

В этой статье мы развёрнем через Terraform несколько серверов в Yandex.Cloud, а затем при помощи Ansible настроим необходимый софт на каждом сервере. У нас будет основной сервер c Loki (система агрегирования логов) и Grafana (инструмент для визуализации данных), на серверах, которые мы хотим отслеживать, будет установлен Promtail (агент для сбора и отправки логов). Мы разберёмся с тем, как отслеживать входы на сервер, а затем в удобном формате отправлять об этом уведомления в чат с помощью вышеуказанных сервисов.

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии26

Как быстро написать API на FastAPI с валидацией и базой данных

Время на прочтение11 мин
Количество просмотров25K

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

В этой статье мы разработаем простой API с помощью самого популярного стека и FastAPI. Рассмотрим важные концепции в работе с этим фреймворком, набросаем базовую структуру проекта и развернем приложение на облачном сервере. Подробности под катом!
Читать дальше →
Всего голосов 45: ↑40 и ↓5+43
Комментарии39

По локоть в легаси: пошагово перезапускаем устаревший портал на PHP

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров12K

PHP — один из самых популярных языков веб-разработки уже около 20 лет, а самому языку скоро стукнет 30. За это время на нем написали огромное количество больших и маленьких проектов. Некоторые сайты, созданные в 90-х, 00-х и 10-х, хранят код еще с тех давних времен. И чем больше времени проходит с начала разработки, тем меньше на рынке специалистов, готовых разбираться в легаси и не самых современных технологиях.

В похожей ситуации оказался портал fishingsib.ru — один из крупнейших в рунете сайтов о рыбалке, который посещают больше 10 000 человек ежедневно. Он создавался в начале 2000-х как форум для рыбаков-любителей и пережил несколько довольно серьезных обновлений кодовой базы. Последнее из них — переезд на CakePHP 2 в 2012 году. На этом фреймворке и PHP 5 сайт жил до 2017 года.

Владелец fishingsib.ru планировал поддерживать и развивать сайт, внедрять новую функциональность, однако столкнулся с техническими проблемами. Любые доработки были очень долгими из-за неудачных архитектурных решений и сильной зависимости от устаревающего и не особенно популярного CakePHP 2. После каждого обновления появлялось множество багов. В то же время не удавалось найти новых разработчиков, потому что большинство специалистов не хотели работать в проекте с неактуальным стеком. Развитие проекта сильно замедлилось и стало понятно, что с технической частью нужно что-то делать.

Читать далее
Всего голосов 57: ↑57 и ↓0+57
Комментарии15

Обзор микроволнового датчика присутствия Hi-Link LD2410

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров20K

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

Мой выбор пал на DIY микроволновый датчик Hi-Link LD2410, расскажу почему.

Читать далее
Всего голосов 38: ↑38 и ↓0+38
Комментарии79

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

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров12K

Привет, Хабр!

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

Читать далее
Всего голосов 32: ↑32 и ↓0+32
Комментарии24

Смотрим шире. Бесплатные инструменты для комплексной работы с уязвимостями

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.2K

«‎Чем можно контролировать уязвимости? Подскажи, плиз», — обратился недавно знакомый. Вроде ничего странного. Но к концу обсуждения я вдруг понял, что человек ждет список инструментов, которые только находят и закрывают уязвимости...

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

Полезные функции DevTools для тестировщиков

Время на прочтение5 мин
Количество просмотров103K

Всем привет! Меня зовут Миша, я работаю на позиции ручного тестировщика, или Manual QA - кому как удобно. В связи с тем, что в моей работе преобладает ручное тестирование -  я часто сталкиваюсь с консолью разработчика в браузере (думаю как и 99.9% web-тестировщиков). 

В интернете огромное количество источников, в которых можно найти информацию про DevTools, как для разработчиков, так и для тестировщиков. Конечно, наполнение таких статей очень сильно разнится в зависимости от ее направленности. Изучив большое количество подобного материала и поняв, что нас (тестировщиков) обделяют информацией, решил залезть в первоисточник для изучения инструментов разработчика в полном объеме. Пройдясь по всем пунктам огромного меню, выписал для себя порядка 20 пунктов, которые были бы интересны (читай полезны) для тестировщиков. Сразу скажу, что в статье я не буду рассказывать, как пользоваться тем или иным инструментом, так как это подробно описано в статьях, которые будут прикреплены к каждому из пунктов. Цель моего повествования - скорее вычленить из огромного списка возможностей DevTools, именно те, которые были бы полезны для QA-специалистов. Не претендую на объективность и полную раскрытость темы, но постараюсь это сделать.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии2

Бородатый обманщик. Методика TARPIT в защите и нападении

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров3.9K

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

Добро пожаловать под кат если вас интересует:

  Как затруднить атакующему фазу разведки?

  Отчего nmap может серьезно тормозить?

  Откуда берутся хосты с тысячами открытых портов?

  Как выявлять tarpit хосты и что с ними делать если вы занимаетесь аудитом ИБ.

  Что это вообще такое этот ваш tarpit? )

 

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Самодельные портативные игровые консоли и ESPboy

Уровень сложностиПростой
Время на прочтение22 мин
Количество просмотров19K

С некоторых пор в среде самодельщиков обрёл популярность новый формат — портативные игровые устройства на основе недорогих микроконтроллеров и OLED или TFT-экранчиков, подражающие популярным портативным игровым системам прошлого, таким как Game Boy компании Nintendo 1989 года.

Если техническая сторона проста и понятна, то вопросы мотивации создателей этих самоделок, зачем вообще они нужны, и что с ними можно делать конечному пользователю (а таковые стабильно находятся), остаются открытыми. Попробуем разобраться. Изложу общую историю и поделюсь личным опытом использования одного из таких устройств.
Читать дальше →
Всего голосов 60: ↑59 и ↓1+79
Комментарии6

Нестандартные варианты использования Raspberry Pi

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров19K


Raspberry Pi — это универсальный компьютер, который можно использовать как угодно. Есть тысячи вариантов, где его применить. Поэтому не совсем понятно: что считать стандартным, а что — нестандартным вариантом использования? Например, управление станками или умный дом — вполне логичное применение «малинки», тем более что Home Assistant отлично работает на RPi OS. Блокировка рекламы/соцсетей из домашней сети на общем файрволе Pi-Hole или простейший piVPN — тоже очевидная и общепринятая практика.

Но есть гораздо более странные примеры.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+54
Комментарии43

Электросамокат из гироскутера или «каша из топора»

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров14K

В летние дни на пике востребованности городская мобильность. Особенно это касается подростков с большим количеством высвободившегося в каникулы времени. Свобода перемещения стирает расстояния между разлученными друзьями. Одним из решений является прокат самоката, но точки проката и требования по парковке часто делают использование метода нецелесообразным. В период своего очередного отпуска, устав от "безделья", было принято волевое решение потратить досуг на рост мобильности в семье. Последние пару лет валялся гироскутер по заверению домочадцев "сломанный". Так сошлись звезды и показали направление...

Скорее развлекательное чем техническое
Всего голосов 41: ↑41 и ↓0+41
Комментарии46

Прифронтовая разведка методами OSINT

Время на прочтение3 мин
Количество просмотров29K

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

Читать далее
Всего голосов 48: ↑37 и ↓11+34
Комментарии79

Как мониторить золотые сигналы SRE

Время на прочтение6 мин
Количество просмотров8.3K

Принципы Site Reliability Engineering (SRE) в последнее время очень популярны, отчасти благодаря знаменитой книге о SRE в Google, где говорится о золотых сигналах, за которыми нужно следить, чтобы наши системы работали быстро и безотказно в любых масштабах.

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

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии0

Удалённая сборка Android проектов на сервере прямо из Android Studio

Время на прочтение42 мин
Количество просмотров6.6K

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

Бывает довольно обидно, когда в работу поступает задача, решение которой очевидно, фикс проблемы делается за пару минут, но чтобы проверить что всё исправлено нужно переключать ветки, пересобирать проект, потом переключаться обратно и пересобирать исходную ветку. Это может занимать очень много времени. Или бывает так, что находясь “в потоке” нужно что-то быстро проверить, но увидеть вступили ли изменения в силу можно только пересобрав и перезапустив проект, а если что-то пойдёт не по плану, или по каким-то причинам кэш сборки не отработает и проект будет собираться почти "на холодную"? Подобные, казалось бы, мелочи могут занимать огромное количество времени в течение дня, отвлекают, мешают сосредоточиться и продуктивно использовать рабочее время. Особенно много времени тратится если рабочий компьютер далеко не самый производительный, или если вы пользуетесь ноутбуком, не ориентированным на выполнение тяжёлых сборок. 

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

Интересующихся приглашаю под кат.

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии6

Как мы себя обманываем, только бы продолжать пользоваться Golang

Время на прочтение21 мин
Количество просмотров77K

За два года с тех пор, как я опубликовал статью I want off Mr Golang's Wild Ride, она вновь и вновь всплывала на Reddit, Lobste.rs, на HackerNews и в других местах.

Всякий раз дискуссия выходит к одним и тем же ответам:

Go!
Всего голосов 124: ↑116 и ↓8+143
Комментарии369

Мощный модуль для типизации Vuex

Время на прочтение5 мин
Количество просмотров21K
Мотивом для написания данной статьи послужила другая статья на тему типизации Vue и, соответственно, Vuex. К моему удивлению я не обнаружил там упоминания модуля, который, по моему мнению, является лучшим в своем роде «типизатором» Vuex. Поиск по Хабру, да и вообще по Рунету (на самом деле и в англоязычных источниках не просто сходу найти какие-либо упоминания), увы, не дал никаких результатов. Данная статья не является подробным разбором и многостраничным мануалом по использованию и настройке, но скорее способом поделиться с вами, уважаемые Vue-ниндзя, инструментом, который отлично справляется со своей задачей.
Встречайте:
Всего голосов 20: ↑19 и ↓1+18
Комментарии20

По-настоящему яркий, надёжный и безопасный источник света для растений

Время на прочтение15 мин
Количество просмотров30K

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

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

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

Читать далее
Всего голосов 47: ↑47 и ↓0+47
Комментарии51

journald вместо syslog

Время на прочтение7 мин
Количество просмотров29K

Использование journald как замена syslog'у для приложений с большим числом логов.Давным-давно, когда были дебаты о том, стоит ли принимать в качестве init-системы systemd (с одной стороны удобно, с другой стороны, довольно токсичный автор...), вместе с systemd приехал и journald. В целом, он ощущался как аппендикс к systemd, и вместе с ForwardToSyslog, он мирно жил на серверах. Дефолтная конфигурация в целом устраивала, а всё нужное можно было по-старинке накрутить в syslog'е.

В одном из проектов у нас образовалась потребность в обработке большого числа логов, и мы решили попробовать journald вместо (r)syslog(d|-ng). Оказалось, что:

journald решает все наши проблемы

документации по нему подозрительно мало (особенно, в сравнении с systemd)

при том, что его поведение более-менее разумно, интуиция о том, как он работает, практически отсутствует и её надо набирать.

Read more
Всего голосов 40: ↑38 и ↓2+50
Комментарии45

USB-микрофоны для стримов, творчества и записи подкастов — пять наиболее доступных моделей

Время на прочтение4 мин
Количество просмотров16K

Продолжаем цикл материалов с обзорами составляющих домашней студии. Ранее мы поговорили о «мониторных» наушниках, колонках для мультимедиа и акустике для работы со звуком. После этого остановились на наушниках со встроенными микрофонами [раз, два].

Сегодня начнем разбираться с универсальными конденсаторными USB-микрофонами. Если говорить простыми словами, они позволяют захватывать намного больше деталей в высоком качестве, по сравнению с динамическими моделями данного ценового сегмента. Однако в квартире или частном доме это преимущество быстро превращается в недостаток, если микрофон записывает не только голос или инструменты, но и отражения от стен, плюс — посторонние звуки из других комнат. Для минимизации подобных эффектов разработчики выбирают определенную диаграмму направленности — пространство, где микрофон оказывается наиболее чувствительным к звуку. Например, исходя из расположения спикера, музыканта или стримера. В данном сегменте наибольшее распространение получила кардиоида, поэтому все микрофоны в этой подборке имеют кардиоидную диаграмму направленности.

Читать далее
Всего голосов 4: ↑3 и ↓1+4
Комментарии35

Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками

Время на прочтение13 мин
Количество просмотров51K

Моя самоделка


image

Перед изготовлением своей клавиатуры я наметил следующие цели:

  1. Максимально возможный тактильный комфорт.
  2. Добиться того, чтобы совершенно не было необходимости смотреть на клавиатуру при работе, чтобы она никоим образом не отвлекала внимание на себя, чтобы даже смотреть на нее было бессмысленно. Именно поэтому на моих колпачках нет надписей.
  3. Клавиатура — это мой рабочий инструмент, сосредотачиваемся на ее функционале и удобстве. Внешний вид совершенно неважен. Кто не может жить без RGB подсветки и внешней броской красоты – нам с вами не по пути, эта статья совсем про другое. В этой статье я вас научу как недорого и просто сделать себе удобный и функциональный инструмент для работы.
  4. Удобство перевозки. Сделать компактное и удобное для переноски устройство.
Всего голосов 79: ↑79 и ↓0+79
Комментарии75
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность