По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Всем привет! На IP-телефонах Cisco, которые зарегистрированы на Cisco Unified Communications Manager (CUCM) , можно просматривать статусные сообщения о состоянии телефона и сетевую статистику в реальном времени. Эта информация доступна с самого телефона и может быть полезна при траблшутинге системы. /p> Для доступа к статусным сообщениям нужно на IP-телефоне Cisco нажать физическую кнопку Settings, далее в меню настроек выбрать Status (Состояние) и затем нажать Status Messages (Сообщения о состоянии). Сообщение отображается вместе со временем его появления. Сообщение Описание BootP server used Информационное сообщение, телефон получил IP адрес через BootP сервер, а не через DHCP сервер File auth error Произошла ошибка, когда телефон пытался проверить подписанный файл. Это сообщение содержит имя файла, с которым возникла проблема. Вероятная проблема – файл поврежден, необходимо удалить и добавить заново телефон через Cisco Unified Communications Manager Administration tool. Либо это проблема с CTL файлом и в этом случае нужно запустить CTL клиент и обновить CTL файл, убедившись, что в него включены необходимые TFTP серверы. CFG file not found Именной файл конфигурации и файл конфигурации по умолчанию не был найден на TFTP сервере. Файл конфигурации для определенного телефона создается при добавлении телефона в базу данных CUCM. Если телефон не был добавлен в базу данных, то TFTP-сервер генерирует ответ CFG File Not Found. CFG TFTP Size Error Конфигурационный файл слишком большой для файловой системы телефона. Нужно перезагрузить телефон. Checksum Error Скачанный файл ПО поврежден. Необходимо скачать новую копию файла прошивки телефона и поместить его в каталог TFTP. DHCP timeout DHCP сервер не отвечает. Возможные проблемы: большая нагрузка на сеть (выполнить проверку, когда нагрузка уменьшится), нет сетевой связанности между DHCP сервером и телефоном (проверить сетевой доступ между этими элементами сети) или не работает сам DHCP сервер (проверить его конфигурацию). DNS timeout DNS сервер не отвечает. Возможные проблемы: большая нагрузка на сеть (выполнить проверку, когда нагрузка уменьшится), нет сетевой связанности между DNS сервером и телефоном (проверить сетевой доступ между этими элементами сети) или не работает сам DNS сервер (проверить его конфигурацию). DNS unknown host DNS не смог разрешить имя TFTP сервера или CUCM. Необходимо убедиться, что имена хостов TFTP сервера или CUCM настроены правильно в DNS или использовать IP-адреса вместо имен хостов. Duplicate IP Другое устройство уже использует IP адрес, который присвоен телефону. Если телефону присвоен статический адрес, то нужно проверить, что ни у какого другого устройства нет такого же адреса, а если используется DHCP, то следует проверить конфигурацию DHCP сервера. Error update locale Один или более файлов локализаций не был найден в директории TFTP или файл оказался не валидным, и локализация не была изменена. Необходимо убедиться что следующие файлы находятся в поддиректориях TFTP сервера: tones.xml, glyphs.xml, dictionary.xml, kate.xml IP address released Телефон остается в режиме ожидания пока не включится питание или пока DHCP адрес не будет сброшен. Load ID incorrect Load ID программного обеспечения неправильного типа. Нужно проверить Load ID, назначенный телефону (во вкладке Device - Phone) и убедиться, что он введен правильно. Load rejected HC Загруженное приложение несовместимо с аппаратным обеспечением телефона. Эта ошибка возникает, когда происходит попытка установить на телефоне версию ПО, которое не поддерживает аппаратные изменения на этом телефоне. No default router В DHCP или статической конфигурации не указан default router. Если телефон имеет статические адреса, то необходимо проверить что default router был указан, а если используется DHCP, то нужно проверить его конфигурацию. No DNS server IP В DHCP или статической конфигурации не указан адрес DNS сервер. Нужно проверить что он указан на телефоне или на DHCP сервера. Programming error Произошла ошибка во время программирования телефона. Нужно попробовать перезагрузить телефон и если проблема не устранится, то обратиться в службу техподдержки Cisco. XmlDefault.cnf.xml, or .cnf.xml corresponding to the phone device name Информационное сообщение с указанием имени конфигурационного файла. TFTP access error TFTP сервер указывает на директорию, которая не существует. Необходимо проверить что у DHCP сервера или телефона правильно указан адрес TFTP. TFTP file not found Запрашиваемый файл (.bin) не найден в директории TFTP. Нужно проверить, что Load ID присвоен телефону (во вкладке Device - Phone) и что директория TFTTP сервера содержит .bin файл с этим идентификатором загрузки в качестве имени. TFTP server not authorized Указанный TFTP-сервер не может быть найден в CTL телефона. Это может быть по нескольким причинам: DHCP-сервер настроен неправильно и не обслуживает правильный адрес сервера TFTP, если телефон использует статический IP-адрес, телефон может быть настроен с неправильным адресом сервера TFTP или если адрес сервера TFTP верен, может возникнуть проблема с файлом CTL (в этом случае нужно запустить CTL клиент и обновить CTL файл). TFTP timeout TFTP сервер не отвечает. Возможные проблемы: большая нагрузка на сеть (выполнить проверку, когда нагрузка уменьшится), нет сетевой связанности между TFTP сервером и телефоном (проверить сетевой доступ между этими элементами сети) или не работает сам TFTP сервер (проверить его конфигурацию). Теперь рассмотрим меню сетевой статистики. Чтобы попасть в него нужно на IP-телефоне Cisco нажать физическую кнопку Settings, далее в меню настроек выбрать Status (Состояние) и Netwkork Statistics (Статистика сети). Там можно увидеть следующие поля Поле Описание Rcv (Rx Frames) Количество пакетов, полученных телефоном Xmt Frames (Tx Frames) Количество пакетов, отправленных телефоном REr (Rx Broadcasts) Количество broadcast пакетов, полученных телефонном BCast Количество broadcast пакетов, отправленных телефонном Phone Initialized Сколько времени прошло с момента инициализации телефона Elapsed Time Сколько времени прошло с момента перезагрузки телефона Port 1 Состояние PC порта телефона (скорость и дуплекс) Port 2 Состояние Network порта
img
Типичный эксплойт может начать с получения злоумышленником доступа к учетной записи с меньшими привилегиями. После входа в систему злоумышленники будут изучать систему для выявления других уязвимостей, которые они могут использовать в дальнейшем. Затем они используют привилегии для олицетворения фактических пользователей, получения доступа к целевым ресурсам и выполнения различных необнаруженных задач. Атаки типа эскалации привилегий бывают вертикальными и горизонтальными. В вертикальном типе злоумышленник получает доступ к учетной записи, а затем выполняет задачи в качестве этого пользователя. Для горизонтального типа злоумышленник сначала получит доступ к одной или нескольким учетным записям с ограниченными привилегиями, а затем скомпрометирует систему, чтобы получить больше прав на выполнение административных ролей. Такие права позволяют злоумышленникам выполнять административные задачи, развертывать вредоносные программы или выполнять другие нежелательные действия. Например, они могут нарушить работу, изменить параметры безопасности, украсть данные или скомпрометировать системы таким образом, чтобы оставить открытые бэкдоры для использования в будущем. Как правило, подобно кибератакам, эскалация привилегий использует систему и обрабатывает уязвимости в сетях, службах и приложениях. Таким образом, их можно предотвратить, сочетая передовые методов и инструменты обеспечения безопасности. В идеале организация должна развертывать решения, которые могут сканировать, обнаруживать и предотвращать широкий спектр потенциальных и существующих уязвимостей и угроз безопасности. Рекомендации по предотвращению атак эскалации привилегий Организации должны защищать все критически важные системы и данные, а также другие области, которые могут выглядеть непривлекательными для злоумышленников. Все, что требуется злоумышленнику – это проникнуть в систему. Находясь внутри, они могут искать уязвимости, которые используют в дальнейшем, чтобы получить дополнительные привилегии. Помимо защиты активов от внешних угроз, важно принять достаточные меры для предотвращения и внутренних атак. Хотя применяемые методы могут отличаться в зависимости от систем, сетей, среды и других факторов, ниже приведены некоторые методы, которые организации могут использовать для защиты своей инфраструктуры. Защита и сканирование сети, систем и приложений В дополнение к развертыванию решения по обеспечению безопасности в режиме реального времени необходимо регулярно проверять все компоненты ИТ-инфраструктуры на наличие уязвимостей, которые могут привести к новым угрозам проникновения. Для этого можно использовать эффективный сканер уязвимостей для поиска незащищенных операционных систем и приложений, неправильных настроек, слабых паролей и других недостатков, которые могут быть использованы злоумышленниками. Хотя можно использовать различные сканеры уязвимостей для выявления слабых мест в устаревшем программном обеспечении, обычно трудно или нецелесообразно обновлять, или исправлять все системы. В частности, это является проблемой при работе с устаревшими компонентами или крупномасштабными производственными системами. В таких случаях можно развернуть дополнительные уровни безопасности, такие как брандмауэры веб-приложений (WAF), которые обнаруживают и останавливают вредоносный трафик на сетевом уровне. Как правило, WAF обеспечивает защиту базовой системы даже в том случае, если на нем не установлены необходимые патчи или устарела. Правильное управление учетными записями с привилегиями Важно управлять привилегированными учетными записями и гарантировать, что все они безопасны, используются в соответствии с передовыми практиками и не раскрываются. Группы безопасности должны иметь список всех привилегированных учетных записей, их расположение и для чего они используются. Другие меры включают: Минимизация количества и объема привилегированных учетных записей, мониторинг и ведение журнала их деятельности; Анализ каждого привилегированного пользователя или учетной записи для выявления и устранения любых рисков, потенциальных угроз, источников и намерений злоумышленников; Основные виды атак и меры по предотвращению; Соблюдайте принцип наименьших привилегий; Запретить администраторам предоставлять общий доступ к учетным записям и учетным данным. Мониторинг поведения пользователей Анализ поведения пользователя позволяет определить наличие скомпрометированных учетных записей. Обычно злоумышленники нацеливаются на пользователей, которые обеспечивают доступ к системам организации. Если им удастся получить учетные данные, они войдут в сеть и могут остаться незамеченными в течение некоторого времени. Поскольку трудно вручную контролировать поведение каждого пользователя, оптимальным подходом является развертывание решения UEBA (User and Entity Behavior Analytics). Такой инструмент непрерывно отслеживает активность пользователя за определённое время. Затем создает нормальный базовый уровень поведения, который используется для обнаружения необычных действий. Это один из показателей скомпрометированных учетных записей. Результирующий профиль содержит такую информацию, как местоположение, ресурсы, файлы данных и услуги, к которым обращается пользователь, и их частота, конкретные внутренние и внешние сети, количество хостов, а также выполняемые процессы. С помощью этой информации инструмент может идентифицировать подозрительные действия или параметры, которые отклоняются от базовой линии. Создание и применение политики надёжных паролей Создайте и применяйте надежные политики, чтобы пользователи имели уникальные и трудноугадываемые пароли. Кроме того, многофакторная аутентификация добавляет дополнительный уровень безопасности при преодолении уязвимостей, которые могут возникнуть, когда трудно вручную применить надежные политики паролей. Группы безопасности также должны развернуть необходимые средства, которые могут сканировать системы, выявлять и отмечать слабые пароли или предлагать действия. Это аудиторы паролей, средства защиты политик и другие. Средства принудительного применения гарантируют наличие у пользователей надежных паролей с точки зрения длины, сложности и политик компании. Организации также могут использовать корпоративные средства управления паролями, помогающие пользователям создавать и использовать сложные и безопасные пароли, соответствующие политикам служб, требующих проверки подлинности. Дополнительные меры, такие как многофакторная аутентификация для разблокировки диспетчера паролей, повышают его безопасность, что делает практически невозможным доступ злоумышленников к сохраненным учетным данным. Типичные корпоративные менеджеры паролей включают Keeper, Dashlane, 1Password. Обезопасить пользовательские вводы и защитить базы данных Злоумышленники могут использовать уязвимые поля пользовательского ввода, а также базы данных для ввода вредоносного кода, получения доступа и компрометации систем. По этой причине группы безопасности должны использовать такие передовые методы, как строгая аутентификация и эффективные инструменты для защиты баз данных и всех типов полей ввода данных. В дополнение к своевременному установлению патчей баз данных и защите всех пользовательских входных данных, хорошей практикой считается шифрование всех передаваемых и хранящихся данных. Не лишним будет назначение файлам атрибута только для чтения, а доступ для записи предоставлять группам и пользователям по запросу. Обучение пользователей Пользователи являются самым слабым звеном в цепочке обеспечения безопасности организации. Поэтому важно расширить их возможности и обучить тому, как безопасно выполнять свои задачи. В противном случае один щелчок пользователя может привести к компрометации всей сети или системы. Некоторые из рисков включают открытие вредоносных ссылок или вложений, посещение веб-сайтов с нарушением безопасности, использование слабых паролей и многое другое. В идеале организация должна иметь регулярные программы повышения уровня безопасности. Кроме того, они должны иметь методологию проверки эффективности обучения. Средства предотвращения атак эскалации привилегий Предотвращение атак эскалации привилегий требует сочетания инструментов. Они включают, но не ограничиваются приведенными ниже решениями. Решение для анализа поведения пользователей и объектов (UEBA) 1. Exabeam Платформа Exabeam Security Management - это быстрое и простое в развертывании решение для анализа поведения на основе ИИ, которое помогает отслеживать действия пользователей и учетных записей в различных службах. С помощью Exabeam можно также получать журналы из других ИТ-систем и средств безопасности, анализировать их, выявлять и отмечать опасные действия, угрозы и другие проблемы. Функции: Ведение журнала и предоставление полезной информации для расследования инцидентов. К ним относятся все сеансы, когда конкретная учетная запись или пользователь впервые получили доступ к службе, серверу, приложению или ресурсу, учетная запись входит в систему с нового VPN-соединения, из другой страны и т.д; Масштабируемое решение применимо для развертывания в одном экземпляре, облаке и локально; Создает всеобъемлющую временную шкалу, которая четко показывает полный путь злоумышленника на основе нормальной и ненормальной учетной записи или поведения пользователя. 2. Cynet 360 Платформа Cynet 360 - это комплексное решение, обеспечивающее поведенческую аналитику, защиту сети и конечных точек. Она позволяет создавать профили пользователей, включая их геолокации, роли, часы работы, шаблоны доступа к локальным и облачным ресурсам и т.д. Платформа помогает выявлять необычные виды деятельности, такие как; Вход в систему или ресурсы в первый раз Вход с нового места или использование нового VPN-подключения Несколько параллельных подключений к нескольким ресурсам в течение очень короткого времени Учетные записи, получающие доступ к ресурсам в нерабочее время Средства защиты паролей 3. Password Auditor Средства аудита паролей сканируют имена хостов и IP-адреса, чтобы автоматически идентифицировать слабые учетные данные для таких сетевых служб и веб-приложений, как веб-формы HTTP, MYSQL, FTP, SSH, RDP, сетевые маршрутизаторы и другие, требующие аутентификации сервисы. Затем он пытается войти в систему с использованием слабых, а также часто используемых комбинаций имен пользователей и паролей для идентификации и оповещения об учетных записях со слабыми учетными данными. 4. Password Manager Pro Менеджер паролей ManageEngine pro предоставляет комплексное решение по управлению, контролю, мониторингу и аудиту привилегированной учетной записи на протяжении всего ее жизненного цикла. Он может управлять привилегированной учетной записью, SSL-сертификатом, удаленным доступом, а также привилегированным сеансом. Функции: Автоматизация и обеспечение частого сброса паролей для критически важных систем, таких как серверы, сетевые компоненты, базы данных и другие ресурсы Хранение и организация всех привилегированных и конфиденциальных учетных записей и паролей в централизованном и безопасном хранилище. Позволяет организациям выполнять критические аудиты безопасности, а также соответствовать нормативным требованиям, таким как HIPAA, PCI, SOX и т.д. Позволяет участникам группы безопасно обмениваться административными паролями. Сканер уязвимостей 5. Netsparker Netsparker - это масштабируемое автоматизированное решение для поиска уязвимостей и управления, которое может масштабироваться в соответствии с требованиями любой организации. Это средство может сканировать сложные сети и среды, обеспечивая прозрачную интеграцию с другими системами, включая решения CI/CD, SDLC и другие. Она обладает расширенными возможностями и оптимизирована для сканирования и выявления уязвимостей в сложных средах и приложениях. Кроме того, Netsparker можно использовать для проверки веб-серверов на наличие неправильных настроек безопасности, которые могут использоваться злоумышленниками. Как правило, средство обнаруживает возможность SQL-инъекций, удаленное включение файлов, межсайтовый скриптинг (XSS) и другие уязвимости из Top-10 OWASP в веб-приложениях, веб-службах, веб-страницах, API и т.д. 6. Acunetix Acunetix - это комплексное решение со встроенными средствами поиска уязвимостей, управления и простой интеграции с другими средствами безопасности. Это помогает автоматизировать такие задачи управления уязвимостями, как сканирование и исправление, что позволяет экономить ресурсы. Функции: Интегрируется с другими инструментами, вроде Jenkins, GitHub, Jira, Mantis и многое другое; Локальные и облачные варианты развертывания; Возможность настройки в соответствии со средой и требованиями заказчика, а также межплатформенная поддержка; Быстрое выявление и реагирование на широкий спектр проблем безопасности, включая распространенные веб-атаки, межсайтовые скриптинг (XSS), SQL- инъекции, вредоносные программы, неправильные настройки, незащищенные ресурсы и т.д. Решения PAM (Privileged Access Management) 7. JumpCloud Jumpcloud - это решение Directory as a Service (DaaS), которое обеспечивает безопасную аутентификацию и подключение пользователей к сетям, системам, службам, приложениям и файлам. Как правило, масштабируемый облачный каталог представляет собой службу, которая управляет, аутентифицирует и авторизирует пользователей, приложения и устройства. Функции: Создает безопасный и централизованный авторитетный каталог; Поддержка межплатформенного управления доступом пользователей; Предоставляет функции единого входа, поддерживающие управление доступом пользователей к приложениям через LDAP, SCIM и SAML 2.0; Обеспечивает безопасный доступ к локальным и облачным серверам; Поддержка многофакторной аутентификации; Автоматизированное администрирование безопасности и связанных с ней функций, вроде ведения журнала событий, создания сценариев, управления API, PowerShell и многое другое 8. Ping Identity Ping Identity - это интеллектуальная платформа, обеспечивающая многофакторную аутентификацию, единый вход, службы каталогов и многое другое. Это позволяет организациям повысить безопасность и эффективность идентификации пользователей. Особенности: Единый вход, обеспечивающий безопасную и надежную аутентификацию и доступ к услугам; Многофакторная аутентификация, добавляющая дополнительные уровни безопасности; Улучшенное управление данными и способность соблюдать правила конфиденциальности; Службы каталогов, обеспечивающие безопасное управление идентификационными данными пользователей и данными; Гибкие возможности развертывания облачных сред, такие как Identity-as-a-Service (IDaaS), контейнерное программное обеспечение и т.д. 9. Foxpass Foxpass - это масштабируемое решение для управления идентификацией и доступом корпоративного уровня для локальных и облачных развертываний. Она предоставляет функции управления ключами RADIUS, LDAP и SSH, которые обеспечивают доступ каждого пользователя только к определенным сетям, серверам, VPN и другим услугам в разрешенное время. Средство легко интегрируется с другими службами, такими как Office 365, Google Apps и т.д. 10. AWS Secrets Manager AWS Secrets Manager предоставляет надежные и эффективные средства защиты паролей и других данных, необходимых для доступа к службе, приложениям и другим ресурсам. Она позволяет легко управлять ключами API, учетными данными базы данных и т.д. Заключение Подобно кибератакам, эскалация привилегий использует уязвимости в системе, сетях, службах и приложениях. Таким образом, их можно предотвратить, развернув правильные средства и методы обеспечения безопасности. Эффективные меры включают обеспечение наименьших привилегий, надежных паролей и политик проверки подлинности, защиту конфиденциальных данных, уменьшение поверхности атаки, защиту учетных данных пользователей и многое другое. Не будет лишним своевременное обновление и исправление всех систем, программного обеспечения и встроенного ПО, мониторинг поведения пользователей и обучение пользователей методам безопасной работы с вычислительными системами.
img
В предыдущих статьях мы познакомились как управлять ресурсами AWS с помощью Terraform, в данной статье мы посмотрим, как создавать работающий web-сервер с помощью Terraform. Для развертывания настоящего боевого Web сервера, нам понадобится создать с помощью Terraform два ресурса. Инстанс EC2 и группу безопасности для того, чтобы открыть порт 80 во внешний мир. Для начала создадим новую директорию Lesson-2 и файл WebServer.tr. Вспоминаем именно данный файл с данным расширением является основным для написания кода и управления. Напоминаю, что это обычный текстовый файл, который редактируется с помощью любого текстового редактора в нашем случае мы будем использовать текстовый редактор nano. Mkdir Lesson-2 cd Lesson-2 nano WebServer.tr Сразу будем привыкать к оформлению кода и добавим в код комментарии, комментарии добавляются следующим образом. Ставим знак решетки # и за ней пишем комментарий. #----------------------------------------------- # Terraform # #Build WebServer during BootStrap #-------------------------------------------------- Для начала пишем, кто провайдер и регион для размещения наших ресурсов. provider "aws" { region = "eu-central-1" } Кстати, есть интересный сайт awsregion.info на котором можно посмотреть название регионов и место размещение. Сайт на момент написания статьи обновляется и поддерживается в актуальном состоянии. Так первый ресурс это инстанс EC2. Resource служебное слово, далее название ресурса в кавычках и имя, которое мы ему даем в кавычках, далее открываются и закрываются фигурные скобки. Именно между ними мы и будем описывать наш ресурс. Далее добавляем ami – который показывает, какой образ мы будем использовать. Instance_type – тип и размер ресурса, который мы будем использовать. В итоге смотрим, что у нас получилось в первой итерации кода: resource "aws_instance" "WebServer_my" { ami = "ami-0767046d1677be5a0" #Amazon Linux ami instance_type = "t2.micro" } В результате исполнения данной части у нас будет создан инстанс EC2. Далее создадим 2-й ресурс aws_security_group, фактически это правило сети для брандмауэра. Так же описание начинаем со служебного слова resource, далее название ресурса и имя ресурса в кавычках, а в конце открывающаяся и закрывающаяся скобка в которой пойдет описание ресурса. Указываем параметр name - этот параметр обязательный для корректного отображения, description – параметр не обязательный, но можем указать, vpc_id мы не указываем т.к используем ресурс vpc по умолчанию. Далее идет описание правил сетевых на языке Terraform. Служебный параметр ingress для входящего трафика с фигурными скобками где мы вставим порты и другие параметры данного параметра. И второй служебный параметр engress для исходящего трафика с фигурными скобками. Cidr_blocks = [“подсеть”], указывают откуда или куда разрешен данный поток трафика т.е подсеть 0.0.0.0/0 означает весь интернет или все подсети. Обратите внимание: Мы разрешили входящий трафик на 80 порт, тот порт на котором будет работать наш веб сервер. Мы разрешили входящий трафик на 22 порт, тот порт, который может принимать соединение для подключения по SSH протоколу. Мы разрешили ICMP трафик до нашего сервера, чтобы можно было из интернета проверить его доступность. Мы разрешили трафик на 443 порт, если мы в будущем захотим сделать защищенное HTTPS соединение. И мы разрешили весь исходящий трафик с сервера указав protocol “-1” В такой конфигурации кода Terraform мы получим два отдельных ресурса Инстанс EC2 и группу безопасности, но нас такой вариант не устроит. Нам необходимо, чтобы данная группа безопасности была автоматически присоединена к нашему серверу. Это можно сделать с помощью нового параметра, который мы добавим в первую часть кода, где мы описывали aws_instance. Данный параметр называется vpc_security_group_id, с помощью данного параметра можно сразу присоединить несколько групп безопасности, через знак равенства и скобки “= [“номер группы безопасности”]”. Например, номер группы безопасности можно взять той, что создается по умолчанию. Все остальные указываются, через запятую. Но в нашем случае данный вариант не подойдет, потому что у нас должно все подключиться автоматически, т.е присоединить ту группу безопасности, которая создастся и которую мы описали ниже. А делается это достаточно просто после знака = в квадратных скобках без кавычек вставляем aws_security_group – то что это группа безопасности, затем . – разделитель, затем вставляем имя группы безопасности, которую мы создали mywebserver, опять разделитель символ точки ., и мы ходим взять id. В итоге получается следующий параметр и его значение: vpc_security_group_ids = [aws_security_group.mywebserver.id] Этой самой строчкой мы привязали группу безопасности к нашему создаваемому инстансу. И как следствие возникла зависимость инстанса от группы безопасности. Следовательно, Terraform создаст сначала группу безопасности, а затем уже создаст инстанс. Код Terraform не выполняется сверху вниз, зачастую он исполняется в зависимости от зависимостей или вообще одновременно, когда многие части зависят друг от друга. Следовательно, вот в таком коде мы создали зависимость. По коду вы можете заметить, что если необходимо еще дополнительный порт открыть, например, в группе безопасности, то необходимо скопировать часть кода, отвечающую за открытие порта и добавить необходимые настройки, порт и протокол, подправить cidr_blocks. После корректировки вставить в правильное место, как параметр. И для того, чтобы завершить настройку нашего Web сервера, нам необходимо написать параметр user_data. В амазоне это называется bootstrapping, т.е начальная загрузка. User_data = <<EOF Скрипт EOF Как вы видите сам скрипт будет находится между EOF, а знак << говорит о том, что скрипт мы подаем на ввод. Далее, как любой скрипт в Linux системе мы пишем сначала интерпретатор или shell который будет исполнять и на языке понятном для bash. Поэтому в скрипте не должно быть никаких отступов! Это важно, даже если плагин текстового редактора пытается поправить. Теперь сам скрипт: user_data = <<EOF #!/bin/bash apt -y update apt -y install apache2 myip=`curl http://169.254.169.254/latest/meta-data/local-ipv4` echo "<h2>WebServer with IP: $myip</h2><br> Build by Terraform!" > /var/www/html /index.html sudo service httpd start chkconfig httpd on EOF Сначала обновляем систему apt –y update, далее команда apt –y install apache2 устанавливаем apache веб сервер непосредственно. Следующая строка присваиваем значение переменной myip, с помощью получения данных из самого амазона curl http://169.254.169.254/latest/meta-data/local-ipv4. Далее просто добавляем в индексную страницу по умолчанию вывод того что мы получили с подстановкой IP. Следующая строка стартует сервис, и последняя строка проверяет конфигурацию апача. Таким образом, мы получаем полностью готовый скрипт. Нам остается его сохранить в файле и инициализировать Terraform, командой terraform init и даем команду на применение terraform apply. В результате команды мы видим, что будет создано 2 ресурса, все, как и планировалось. Инстанс и группа безопасности. Как мы видим сначала, из-за зависимости создается группа безопасности. А затем поднимается инстанс, к которому и будет привязана данная группа. Спустя пару минут мы можем видеть, что у нас веб сервер поднялся. IP-адрес можно найти в консоли. Далее, если нам более данный Web сервер не нужен, то мы его можем уничтожить простой командой terraform destroy. И мы увидим, что из-за зависимостей ресурсы будут уничтожаться в обратном порядке тому, в котором они запускались. Сначала инстанс, потом группа безопасности. Скрипт вы можете легко модифицировать и добавить более сложные детали установки и настройки веб сервера – это полностью рабочая конфигурация.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59