По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Windows включает в себя надежный (в целом 🙄), но простой в использовании, брандмауэр с расширенными возможностями. А с помощью PowerShell 7 можно легко настроить его из командной строки. В этой статье описываются общие команды, используемые в межсетевом экране Windows, а также возможные способы их использования. Модуль NetSecurity хорошо задокументирован. Учтите, что эта статья относится только к операционной системе Windows. Для других операционных систем существуют другие инструменты командной строки, которые могут использоваться для выполнения тех же задач, такие как UFW или IPTables в Linux. Вызов модуля NetSecurity Предустановленный в системе модуль NetSecurity обладает всем необходимым функционалом для управления правилами межсетевого экрана Windows. Чтобы задействовать данный модуль, достаточно импортировать его показанным ниже способом (конечно же команду запускаем в PowerShell): Import-Module -Name 'NetSecurity' Вывод списка правил Командлет Get-NetFirewallRule выводит список настроенных правил. В системе большое количество предварительно настроенных правил, но для примера мы выбрали первые 10: Get-NetFirewallRule | Select-Object DisplayName, Enabled, Direction, Action -First 10 По умолчанию, командлет выводит все параметры, но на примере выше мы выбрали всего четыре из них (они, собственно, перечислены в команде). А получить все параметры можно командой: Get-NetFirewallRule | Select-Object * -First 1 Создание нового правила Создать новое правило позволяет команда New-NetFirewallRule. Основные параметры, которые нужно передать команде следующие: DisplayName - название правила; Direction - Направление трафика, которое нужно блокировать. Может быть либо входящим (Inbound), либо Исходящим (Outbound); Action - Действие правила. Правило может быть либо Разрешающим (Allow), либо Запрещающим (Block). $Params = @{ "DisplayName" = 'Block WINS' "Direction" = 'Inbound' "Action" = 'Block' "RemoteAddress" = 'WINS' } New-NetFirewallRule @Params Если не указан параметр Name, система сгенерирует случайный GUID. DisplayName может быть читабельным, но сам Name будет сгенерирован случайным образом. Изменение существующего правила Что если нужно изменить какой-то параметр правила, не удаляя и пересоздавая его? Для этого нужно задействовать командлет Set-NetFirewallRule. $Params = @{ "DisplayName" = 'Block WINS' "Action" = 'Allow' } Set-NetFirewallRule @Params Данная команда также позволяет вносить изменения в несколько правил сразу. Это можно сделать, передав команде одно из трех параметров правила: Name - Параметр по умолчанию. Если команде переданы несколько параметров Name в виде строки или же через пайплайн (|), изменения коснутся каждого из правил; DisplayName - так же, как и в случае с параметром Name, команде можно передать нескольких правил, чтобы изменить их; DisplayGroup или Group - Если несколько правил сгруппированы, то команде можно передать название этой группы и внести изменения во все члены указанной группы. Удаление правила И, наконец, мы хотим удалить правило, которое больше не нужно. Для этого запускаем командлет Remove-NetFirewallRule. Также при удалении часто рекомендуется использовать параметр WhatIf, который позволяет убедиться в том, что будет удалено нужное правило. Remove-NetFirewallRule -DisplayName "Block WINS" Следует отметить, что данный командлет позволяет удалять несколько правил сразу. На примере ниже мы удаляем все отключенные правила, которые содержит групповая политика firewall_gpo в домене ad.local.test. Remove-NetFirewallRule -Enabled 'False' -PolicyStore 'ad.local.test\firewall_gpo' Запущенный сам по себе командлет Remove-NetFirewallRule достаточно полезный, но в то же время опасный, так как удаляет все локально созданные правила. Если есть доменная групповая политика, определяющая правила межсетевого экрана, данная команда удалит все локальные правила, конфликтующие с правилами групповой политики. Дополнительные возможности Модуль NetSecurity включает в себя множество других команд, которые мы не затронули в данной статье. Поэтому ниже приводим список и возможности данных команд. Copy-NetFirewallRule - данная команда копирует существующее правило и все связанные с ними фильтры в то же или другое хранилище политик; Disable-NetFirewallRule - отключает ранее созданное правило. Отключенное правило не удаляется из базы, но уже никак не влияет на трафик. Если запустить эту команду без параметров, то она отключит все активные правила на целевой машине. Поэтому если не указано конкретное правило или группа правил, рекомендуется всегда запускать данную команду с параметром WhatIf; Enable-NetFirewallRule - в противовес предыдущей команде, данный командлет включает все отключенные правила. Если не указано конкретное правило, то данную команду также рекомендуется запускать с параметром WhatIf; Get-NetFirewallProfile - эта команда отображает параметры, настроенные для указанного профиля, например, профилей Domain, Private или Public; Get-NetFirewallSettings - глобальные параметры брандмауэра можно получить с помощью команды Get-NetFirewallSettings. Это такие параметры, как параметры сертификатов, организация очередей пакетов или списки авторизации; Rename-NetFirewallRule - данная команда позволяет переименовать существующее правило. Это полезно, если правило было создано без указания имени, таким образом получив случайный GUID в качестве название, и предпочтительно назначить читабельное название; Set-NetFirewallProfile - для установки определенных параметров отдельных профилей можно использовать команду Set-NetFirewallProfile. Это позволяет каждому профилю иметь различные настройки; Set-NetFirewallSettings - позволяет настроить поведение межсетевого экрана независимо от используемого профиля сети; Show-NetFirewallRule - эта вспомогательная команда отображает правила брандмауэра и связанные с ними объекты в виде отформатированного списка. Данный модуль также включает расширенные возможности для управления IPSec. Указанные выше команды управляют стандартными настройками межсетевого экрана Windows. Заключение Существует множество команд для управления межсетевым экраном Windows. В этой статье рассматриваются только некоторые из них, наиболее важные команды для быстрого вывода списка, создания, изменения и удаления правил брандмауэра. Но с помощью модуля NetSecurity можно сделать настройки и посложнее.
img
Пайплайн CI/CD – это основа разработки программного обеспечения и один из основных компонентов конвейера DevOps. Процесс непрерывной интеграции/доставки (или развертывания) определяет ряд шагов, которые специалисты по программному обеспечению должны выполнить для создания новых программ. Несмотря на то, что CI/CD повышает эффективность производства, этот процесс пренебрегает безопасностью. Базы данных, проприетарный код, учетные данные, ключи, учетные цифровые идентификационные данные и пароли, используемые в производственных и тестовых средах, также являются угрозой для безопасности. Данная статья рассказывает о безопасности CI/CD, проблемах и рекомендациях по обеспечению безопасности производственного конвейера программного обеспечения. Что такое безопасность CI/CD? Безопасность CI/CD – это определенные шаги по защите конвейера автоматизированного производства программного обеспечения. И хотя общая безопасность производства программного обеспечения важна, линия доставки обновлений и устранений ошибок в программном обеспечении также должна быть надежной. Пайплайн (или конвейер) CI/CD – это поток автоматической интеграции и доставки (или развертывания) приложений. Метод реализует обновления и исправления ошибок в соответствии с потребностями клиентов. Как итог, основное внимание уделяется полной автоматизации доставки программного обеспечения для непрерывного производства. Однако в конвейере CI/CD упускается из виду его безопасность. Путем использования автоматизации тестирования и постоянного мониторинга администраторы безопасности должны проводить оценку уязвимостей на различных этапах разработки программного обеспечения. Общие проблемы безопасности в конвейере CI/CD Существует множество проблем безопасности, которые следует учитывать при защите конвейера CI/CD: Серьезной проблемой является соблюдение требований к данным в непроизводственной среде. Чем больше людей работает над одним проектом, тем больше появляется возможных точек нарушения безопасности. Необходимо выработать четко определенные правила контроля доступа и политики паролей для всех пользователей. В случае компрометации должен существовать заранее подготовленный план реагирования на различные инциденты. Автоматизация и оркестровка занимают немалую часть программного обеспечения и для них требуются множество единичных фрагментов программного кода. Быстро меняющаяся среда с постоянными обновлениями оставляет большой простор для различного рода инцидентов и непреднамеренных компрометаций. Лучшей политикой безопасности здесь будет встраивание безопасности непосредственно в конвейер. Рекомендации по обеспечению безопасности конвейера CI/CD Наилучшие методы обеспечения безопасности CI/CD зависят от инфраструктуры DevOps. Ниже приведены десять основных руководств по защите конвейера при работе в среде CI/CD. 1. Моделирование угроз безопасности Проведите исследование в области потенциальных угроз безопасности. Определите точки, где необходимо обеспечить дополнительные уровни безопасности, попробуйте смоделировать эти угрозы и разработайте упражнения для повышения уровня информированности о потенциальных проблемах безопасности. Большинство угроз безопасности находятся в точках стыковки. Все, что подключается к конвейеру, должно регулярно исправляться и обновляться. Блокируйте любые устройства, не соответствующие требованиям безопасности. 2. Проверка безопасности до фиксации Проводите проверки безопасности до фиксации кода в системе контроля версий. Большинство IDE предоставляют подключаемые модули безопасности и предупреждают об уязвимостях кода по мере его ввода. Проводите независимую оценку работ неопытных разработчиков перед отправкой кода в Git. Используйте небольшие фрагменты программного кода и список контрольных вопросов, чтобы убедиться в том, что код соответствует всем протоколам и стандартам безопасности. Помимо этого, избегайте копирования и публикации ключей API, токенов и других конфиденциальных данных. 3. Проверяйте зафиксированный код После фиксации кода проверьте его еще раз, чтобы убедиться в том, что все в порядке. Используйте инструменты статистического анализа кода, чтобы получить отчет об ошибках. Инструменты анализа не требуют, чтобы приложение было запущено, а многие их них вместе с отчетом предоставляют полезные советы. Отправьте отчеты о сканировании кода в службу безопасности, чтобы узнать, требуется ли какая-либо доработка. Используйте системы отслеживания ошибок и регистрируйте результаты, чтобы вы могли убедиться, что все ошибки исправлены. Кроме того, проанализируйте историю Git на предмет подозрительных действий. 4. Защитите свой Git Git – это приоритетная цель для хакеров. Убедитесь в том, что разработчики осведомлены о том, как использовать Git, и постоянно информируются о действиях компании. Используйте файл .gitignore, чтобы исключить случайную фиксацию стандартных и сгенерированных кэшированных файлов. Имейте локально сохраненную и защищенную резервную копию 5. Проверяйте наличие уязвимостей в библиотеках с открытым исходным кодом Библиотеки с открытым исходным кодом – это важный компонент при создании приложений. Однако программное обеспечение сторонних разработчиков может быть подвержено изменениям кода, что может косвенно повлиять на безопасность вашего приложения. Обязательно анализируйте и сканируйте пакеты с открытым исходным кодом на наличие известных проблем безопасности. Используйте инструменты анализа композиции программного обеспечения для анализа стороннего программного обеспечения, компонентов или файлов. И в конце пометьте все выявленные проблемы, чтобы сохранить качество кода на максимальном уровне. 6. Автоматизируйте обеспечение безопасности с помощью IaC Инфраструктура, представленная как код (IaC) обеспечивает согласованные условия разработки и тестирования. В отличие от ручной настройки среды инструменты IaC, такие как Ansible, Terraform или Puppet, помогают автоматически обеспечивать безопасность инфраструктуры. Дополнительное преимущество заключается в том, что IaC безупречно работает в цепочке инструментов DevOps. Постоянное тестирование конфигураций многократного применения и обеспечение исполнения установленных процедур гарантируют отличные производственные результаты и высокое качество программного обеспечения. 7. Мониторинг приложения после развертывания После развертывания приложения постоянно сканируйте его и контролируйте с целью предотвратить любые угрозы. Мониторинг помогает отслеживать и устранять подозрительную активность на основе предоставляемых данных. Используйте такие инструменты, как Grafana или Kibana, для создания интерактивных визуальных информационных панелей, чтобы получать уведомления о любых подозрительных действиях. 8. Распределите задачи и создайте ролевую модель доступа Наделение пользователей правами доступа может замедлить и даже помешать процессу тестирования. Тем не менее, установление и применение ролевой модели доступа для выполнения только основных задач имеет решающее значение с точки зрения безопасности. Когда дело доходит до Git, определите роли доступа для каждого репозитория и установите двухфакторную аутентификацию для каждого зафиксированного участка кода. Попробуйте применить систему разделения задач, чтобы обеспечить безопасность конвейера, сохраняя при этом непрерывную доставку. 9. Храните персональные данные в безопасности Защитите все персональные данные, которые обеспечивают доступ к программному обеспечению и службам, такие как токены API, пароли, ключи SSH, ключи шифрования и т.д. Ненадежная защита персональных данных может дать возможность хакерам «нанести удар», что может привести к утечке данных и краже интеллектуальной собственности. Поэтому используйте платформу управления ключами защиты для безопасного и автоматизированного доступа к ключам. Программное обеспечение обеспечивает использование учетных цифровых идентификационных данных только при явном запросе. Для управления несколькими сложными паролями используйте соответствующее программное обеспечение для управления паролями. 10. Наводите порядок В среде CI/CD все процессы и задачи протекают быстро и без надлежащей очистки. Обязательно закрывайте все временные ресурсы, такие как виртуальные машины, контейнеры или процессы. Помимо этого, обеспечьте надлежащую безопасность в целом и удалите лишние утилиты и инструменты. Заключение Безопасность конвейера CI/CD – это процесс, который меняется от системы к системе. В данной статье была представлена процедура обеспечения безопасности конвейера CI/CD.
img
Kubernetes - это система с открытым исходным кодом, созданная для оркестровки, масштабирования и развертывания контейнерных приложений. Если вы хоть раз работали с Kubernetes, то знаете, насколько он полезен для управления контейнерами. Вы также знаете, что контейнеры не всегда работают должным образом. Если появляется сообщение об ошибке, вам нужен быстрый и простой способ решить проблему. Из этого туториала Вы узнаете, как перезапустить поды в Kubernetes. Под (Pod) – наименьшая запускаемая единица в ноде. Это группа контейнеров, которые должны работать вместе. Перезапуск подов Kubernetes Допустим, один из подов в вашем контейнере сообщает об ошибке. В зависимости от политики перезапуска Kubernetes может попытаться автоматически перезапустить под, чтобы он снова заработал. Однако это не всегда решает проблему. Если Kubernetes не может решить проблему самостоятельно, и вы не можете найти источник ошибки, перезапуск пода вручную - это самый быстрый способ вернуть приложение в рабочее состояние. Быстрое решение - вручную перезапустить затронутые поды. Это может сэкономить ваше время, особенно если ваше приложение работает и вы не хотите выключать службу. Вот три простых способа сделать это. Метод 1: Rolling Restart Начиная с обновления 1.15, Kubernetes позволяет выполнять непрерывный перезапуск развертывания. В качестве нового дополнения к Kubernetes это самый быстрый метод перезапуска. kubectl rollout restart deployment [deployment_name] Вышеупомянутая команда выполняет пошаговое завершение работы и перезапускает каждый контейнер в вашем развертывании. Ваше приложение по-прежнему будет доступно, поскольку большинство контейнеров все еще будут работать. Метод 2: Использование переменных среды Другой способ - установить или изменить переменную среды, чтобы поды перезагружались и синхронизировались с внесенными вами изменениями. Например, вы можете изменить дату развертывания контейнера: kubectl set env deployment [deployment_name] DEPLOY_DATE="$(date)" В приведенном выше примере набор команд env настраивает изменение переменных среды, развертывание [deployment_name] выбирает ваше развертывание, а DEPLOY_DATE="$(date) изменяет дату развертывания. Метод 3. Масштабирование количества реплик Наконец, вы можете использовать команду масштабирования, чтобы изменить количество реплик неисправного пода. Установка этого количества на ноль по существу отключает под: kubectl scale deployment [deployment_name] --replicas=0 Чтобы перезапустить под, используйте ту же команду, чтобы установить количество реплик на любое значение больше нуля: kubectl scale deployment [deployment_name] --replicas=1 Когда вы устанавливаете количество реплик равным нулю, Kubernetes уничтожает реплики, которые ему больше не нужны. Как только вы установите число больше нуля, Kubernetes создаст новые реплики. Новые реплики будут иметь другие имена, чем старые. Вы можете использовать команду kubectl get pods, чтобы проверить статус модулей и увидеть новые имена. Итог Kubernetes - чрезвычайно полезная система, но, как и любая другая система, она не безошибочна. Когда все же возникают проблемы, вы можете использовать три перечисленных выше метода, чтобы быстро и безопасно заставить ваше приложение работать, не закрывая службу для ваших клиентов.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59