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

Администрирование

Сначала показывать
Порог рейтинга
Уровень сложности

DevSecOps — Развеивание тайн — Часть 3

Время на прочтение 16 мин
Количество просмотров 347
Мнение
Перевод

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

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

Новости

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

Уровень сложности Средний
Время на прочтение 23 мин
Количество просмотров 2.2K
Туториал
image

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

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

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

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

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

Управляем обновлением AWS Autoscaling Group: гармония Terraform и Ansible

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 560
Туториал

В мире DevOps, где автоматизация играет ключевую роль, управление ресурсами и процессами обновления инфраструктуры в облаке является критически важной задачей. Во многих современных проектах, особенно тех, что развертываются в облачной среде AWS, используется механизм Auto Scaling Groups (ASG) с целью достижения трех основных задач: балансировки нагрузки, повышения надежности сервиса и оптимизации стоимости эксплуатации.

Представьте себе: вы работаете в компании, развертывающей свои приложения на ресурсах Amazon. Ваши приложения важны, поскольку они обслуживают тысячи пользователей ежедневно. Для этого часто используется механизм Auto Scaling Groups (ASG) с целью достижения трех основных задач: балансировки нагрузки, повышения надежности сервиса и оптимизации стоимости эксплуатации.

И чтобы ускорить процесс развертывания и упростить управление конфигурацией, вы используете предварительно подготовленные AMI образы. Эти образы создаются с помощью инструментов типа HashiCorp Packer (или других аналогичных) и содержат все необходимое для того, чтобы ваше приложение стартовало быстро и без сбоев. Для разворачивания самой инфраструктуры вы используете Terraform, который стал стандартом de facto во многих крупных компаниях, управляющих облачными ресурсами и использующими подход IaC (Infrastructure as Code).

К сожалению, ресурсы Terraform (например тот же aws_autoscaling_group) не позволяют отслеживать прогресс и успешность выполнения операции обновления ASG в рамках instance refresh, а могут лишь запустить его. Если какие-то другие части инфраструктуры (например, обновления сертификатов или dns-записей) каким-то образом зависят от состояния и версии запущенных инстансов, то желательно проконтролировать завершение процесса обновления для получения корректного состояния инфраструктуры после завершения работы terraform.

Чтобы решить данную проблему, вводим в игру Ansible...

Ansible...
Рейтинг 0
Комментарии 0

Как в США борются за общественный широкополосный интернет с телеком-монополистами — обсуждаем ситуацию

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

По определению Федеральной комиссии по связи, соединение считают широкополосным от 25 Мбит/с с апстримом от 3 Мбит/с. Стандарт ввели в 2015-м, а в прошлом году попытались повысить планку до 100 и 20 Мбит/с.

Однако инициатива так и осталась на словах — не все провайдеры способны предоставить такие возможности. И если обновить стандарты, широкополосный интернет будет только у 29% американцев, а не у 97%, как сейчас.

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

Истории

Проектирование отказоустойчивости IT-систем

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

❓Как проектировать системы, которые будут толерантными для различного вида отказов и ошибок?

Что такое отказоустойчивость и стабильность?

Под отказоустойчивостью будем понимать свойство системы, которое позволяет максимально сохранять работоспособность при отказе отдельных конкретных компонентов системы либо связанных систем и восстанавливать работоспособность системы при восстановлении отказавших компонентов или связанных систем. Давайте рассмотрим подробнее эти 2 момента:

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

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

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

От Kubernetes в мечтах к Kubernetes в проде. Часть 3. Доставка кода, GitOps, ArgoCD

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

В серии статей по теме DevOps мы вместе с Lead DevOps инженером департамента информационных систем ИТМО Михаилом Рыбкиным рассказываем о проверенных инструментах выстраивания инфраструктуры, которыми с недавнего времени пользуемся сами. В предыдущих статьях мы уже рассмотрели предпосылки перехода на новую инфраструктуру и познакомились с азами Kubernetes, теперь пора перейти к следующему шагу – доставке кода. В рамках этой статьи мы подробно рассмотрим методологию GitOps и ее реализацию на примере ArgoCD.

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

Data-рынок: как российские ЦОДы справляются с нарастающим спросом

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

Традиционно рынок серверов, систем хранения данных и сетевого оборудования в России был представлен зарубежными компаниями — Dell, HP, Cisco и другими. В 2022-2023 гг data-центры взяли активный курс на импортозамещение при поддержке государства и отечественных поставщиков, поэтому приходится менять устоявшиеся годами бизнес-цепочки. При этом цифровизация требует все новых и новых ресурсов. Сегодня мы заглянем на рынок ЦОДов и постараемся понять, какие у него перспективы, и как российские data-центры справляются с огромным спросом. 

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

Как оценивать технический риск ИБ при разработке приложений

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 500
Мнение

Всем привет! С вами снова Антон Башарин, технический директор Swordfish Security. В предыдущих статьях мы рассказывали об обработке обнаруженных при сканировании уязвимостей – о дедубликации, автоматических правилах, приоритизации и других функциях инструмента класса ASOC, которые позволяют облегчить работу инженеру ИБ. А также о Shift-Left подходе к безопасности в разработке приложений. Сегодня мы хотим затронуть не менее важную тему в управлении ИБ. Поговорим об отслеживании технического риска информационной безопасности и его оценке для портфеля приложений. В этом мне поможет наш аналитик данных, Анастасия Арсеньева. В статье расскажем о различных метриках для оценки риска, об их сходствах и различиях, — и покажем это на дашборде, разработанном нами для модуля визуализации метрик DevSecOps в рамках развития платформы AppSec.Hub.

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

Кроме настроек по умолчанию: оцениваем безопасность Kubernetes и облачных сред

Время на прочтение 21 мин
Количество просмотров 922
Перевод


Команда VK Cloud перевела конспект конференции InfoQ Live со специалистами мирового класса. В этот раз на ней говорили о безопасности в Kubernetes и облачных средах. Спикеры обсудили распространенные ошибки и передовые методы обеспечения безопасности кластеров Kubernetes, поговорили о том, как начать новичкам, и об инструментах, упрощающих жизнь.
Читать дальше →
Всего голосов 14: ↑12 и ↓2 +10
Комментарии 0

Построение сетевой архитектуры на базе криптошлюза S-Terra c инициализацией IPsec на сертификатах

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

Описание продукта

Программно-аппаратный комплекс «С-Терра Шлюз» выполняет функции межсетевого экрана, средства криптографической защиты информации и маршрутизатора. С-Терра Шлюз обеспечивает создание виртуальных защищенных сетей (VPN), защиту транзитного трафика между различными узлами сети, защиту трафика самого шлюза безопасности, а также stateless фильтрацию IP-трафика и stateful фильтрацию для протоколов TCP и FTP

Состав макета

Макет создан на базе физических устройств:

⦁ Коммутатор Cisco Catalyst 2960
⦁ 2 Криптошлюза S-Terra
⦁ 2 АРМа Пользователей

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

Loose uRPF – зачем он нужен?

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 374
Перевод

Несмотря на то, что два режима unicast Reverse Path Forwarding (uRPF) довольно известны, не только лишь все знают причину, по которой эти два режима существуют. В этой статье я постараюсь построить мостик между loose uRPF и одним из типовых сценариев его применения.

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

Интегрируем Clickhouse в Zabbix

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

В прошлом материале мы рассказали, с какой проблемой столкнулись, и проанализировали четыре СУБД в поиске рабочего решения. Мы оценили преимущества и недостатки каждого отобранного варианта и остановились на ClickHouse. Несмотря на то, что готовой интеграции этой БД с Zabbix не существует, CH отлично подходил как решение под наши инженерные задачи.

БД в Zabbix

Прежде чем мы перейдем к рассказу о реализации, расскажем о специфике работы БД в Zabbix. Вся ее логика вынесена в отдельную библиотеку — zbxhistory. Она используется сервером и прокси для сохранения данных мониторинга. В классе history описывается интерфейс, который имплементируется каждой реализацией подключения к хранилищу данных.

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

Проектируем узлы печатной платы с учетом особенностей монтажа при массовом производстве. Подход DFA

Время на прочтение 18 мин
Количество просмотров 4.4K
Туториал

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

Подход, на который мы будем опираться, называется DFA — Design for Assembly (проектирование для сборки). Набор методов DFA гарантирует возможность сборки компонентов на плате, когда она поступит на монтажный участок, и позволяет отправлять плату в тираж без страха потерять деньги и время.

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

Ближайшие события

Битва пет-проектов
Дата 25 сентября – 30 ноября
Место Онлайн
PG Boot Camp Russia 2023
Дата 5 октября
Время 10:00 – 17:00
Место Москва Онлайн
Joker
Дата 9 – 14 октября
Время 16:00 – 19:30
Место Санкт-Петербург Онлайн
Открытый урок «Kafka Streams»
Дата 16 октября
Время 10:00
Место Онлайн
Питч-сессия pravo (tech) impulse
Дата 19 октября
Время 15:45 – 17:30
Место Москва
Russia Risk Conference 2023 — 19-я конференция по риск-менеджменту
Дата 25 – 26 октября
Время 10:00 – 19:00
Место Москва Онлайн
Онлайн IT HR-конференция HR42
Дата 17 – 18 ноября
Время 10:00 – 14:00
Место Онлайн
HighLoad++ 2023
Дата 27 – 28 ноября
Время 9:00 – 20:00
Место Москва Онлайн

P2P-форум с нуля | от NAT hole punching до автономной и полностью децентрализованной сети

Уровень сложности Средний
Время на прочтение 32 мин
Количество просмотров 3.6K
Туториал

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

У NAT есть киллер-фича — он представляет собой идеальный фаервол: атаки извне не могут использовать порты локальных устройств напрямую, следовательно, это решает проблему атак на сетевую уязвимость ОС.

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

Разнообразные сервисы работают на серверах, т. е. имеют некую ноду, которая имеет белый адрес в интернете (находится не за NAT). Все пользователи же подключаются к этому единому серверу. В таком случае проблема «невидимости» пользователей отпадает. Однако чисто серверное взаимодействие ограничивает скорость участников, так ещё и не отказоустойчиво. Если сервер упадёт, то все клиенты отправятся за ним (считаем, что это одноклеточный сервис не на всяких там kubernetes).

Как вы уже могли были догадаться, даже в реалиях, когда практически все устройства находятся за NATами, P2P реален. Когда вы являетесь участником bittorrent-раздачи, трансфер больших данных осуществляется напрямую. Как это работает? Поиск ответа на этот вопрос завёл меня в глубокие дебри, разгребая которые я написал оверлейную p2p-сеть, где трекерами являются сами её участники. Интересно? Тогда добро пожаловать под кат.
Читать дальше →
Всего голосов 52: ↑52 и ↓0 +52
Комментарии 19

Поднимаем сотовую сеть NMT-450 в домашних условиях

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 7.5K
Туториал
Приветствую всех!

30 мая 2017 года в Котласе, что в Архангельской области, была отключена последняя в мире базовая станция NMT-450. Вместе с этим навсегда ушёл в историю не только этот стандарт, но и аналоговая сотовая связь общего пользования в принципе.

И вот, шесть с лишним лет спустя мне стало интересно: а реально ли попробовать оживить такую сеть, увидеть в работе раритетные телефоны и попробовать с них позвонить?



Итак, в сегодняшней статье разберёмся, как в домашних условиях запустить базовую станцию NMT-450. Узнаем, как работают такие сети и как сделать так, чтобы оно точно заработало.
Читать дальше →
Всего голосов 54: ↑54 и ↓0 +54
Комментарии 46

Автоскейлинг контроллеров Ingress в Kubernetes

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 761
Туториал
Перевод

В этом переводе рассказываем о том, как настроить автомасштабирование контроллера Ingress с использованием Prometheus, KEDA и Locust для генерации трафика.

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

Мониторинг и логирование 1С систем

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

Практически в каждой организации присутствуют информационные системы, реализованные на платформе 1С.

Описание основных инструментов, их ограничений и способ нивелирования.

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

ClickHouse. DWH. Развиваем сетевую франшизу по разведению кроликов в колоночном Data Vault

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

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

Но вы. Вы - другое дело. Посмотрев на все это богатство вы сразу поняли, что перед вами открываются новые горизонты. Как например - открытие маркетплейса для торговли мясом или живыми животными. Вы можете интегрировать рынок сбыта в свою модель и сделать еще много и много чего. А что для этого нужно? Правильно, для этого нужна аналитика. Мощная и точная.

Приступить к разведению
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 6

Манюня, мой сакральный мультитул из 2000-х

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

Мне очень понравилась работа команды, создавшей Flipper Zero. Став обладателем этого устройства, в процессе эксплуатации я пришёл к выводу, что оно очень полезно, но, на мой взгляд, недостаточно удобно в эксплуатации ввиду наличия только джойстика для управления этим устройством. Да, можно подключить отдельную плату расширения с нужным количеством кнопок для быстрого набора цифровых данных, но… Очень захотелось, чтобы на одном устройстве было всё максимально удобно для использования, и чтобы это максимальное удобство не занимало много места. Так как я - человек, детство которого прошло во времена Советского Союза, я стал свидетелем вхождения в наш обиход первых мобильных телефонов, тех самых легендарных Motorolа, SonyEricsson, Nokia, и мне очень захотелось создать нечто похожее по функционалу на Flipper Zero, но в то же время напоминающее те самые первые мобильники… Ностальгия, так сказать…

Программированием микропроцессоров я занимаюсь с начала 2000-х годов, со времен своего студенчества, и именно тогда у меня родилась интересная идея – а почему бы не попробовать сделать свой, особенный, телефон, с моим «сердцем» внутри - взять за основу один из тех самых легендарных телефонов и расположить всё то, что я хочу, в нём!

 Бороздя просторы Интернета и воскрешая в памяти все эти сейчас уже ставшие легендами первые мобильники, я неоднократно наталкивался на хохмы про телефон Nokia 3310. Как-то на выходных, разобрав пару-тройку полок в своём гараже, я отыскал ЕГО, телефон, который когда-то, в году эдак 2002-ом, а может, и в 2003-м, был самой настоящей гордостью студента!

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

Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам

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

Рассказываем, как работать с CI/CD, о шагах при настройке сервера и о полезных командах, которые помогут в работе.

Привет! Меня зовут Николай, я Backend-разработчик в РЕЛЭКС.

В статье ты найдешь полезный теоретический материал, сравнение инструментов CI/CD и подробный гайд по сборке и развертыванию через Docker на удаленный сервер с помощью Gitlab CI/CD — на примере Spring Boot приложения.

Читать далее
Всего голосов 13: ↑11 и ↓2 +9
Комментарии 3