community.general.hetzner_firewall – Управление брандмауэром выделенного сервера Hetzner
Примечание
Этот плагин входит в коллекцию community.general (версия 1.3.2).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в плейбуке укажите: community.general.hetzner_firewall.
Новое в версии 0.2.0: of community.general
Обзор
- Управление брандмауэром выделенного сервера Hetzner.
- Обратите внимание, что проверка идемпотентности для флагов TCP просто сравнивает строки и не пытается интерпретировать правила. Это может измениться в будущем.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| hetzner_password строка / обязательно | Пароль для пользователя веб-сервиса Robot. | |||
| hetzner_user строка / обязательно | Имя пользователя для пользователя веб-сервиса Robot. | |||
| port строка |
| Порт переключателя брандмауэра. | ||
| rules словарь | Правила брандмауэра. | |||
| input список / элементы=словарь | Правила входного брандмауэра. | |||
| action строка / обязательно |
| Действие, если правило соответствует. | ||
| dst_ip строка | Адрес назначения IP или адрес подсети. Нотация CIDR. | |||
| dst_port строка | Порт назначения или диапазон портов. | |||
| ip_version строка / обязательно |
| Версия интернет-протокола. Обратите внимание, что в настоящее время Hetzner поддерживает только IPv4. | ||
| name строка | Имя правила брандмауэра. | |||
| protocol строка | Протокол над уровнем IP. | |||
| src_ip строка | Исходный IP-адрес или адрес подсети. Нотация CIDR. | |||
| src_port строка | Исходный порт или диапазон портов. | |||
| tcp_flags строка | Флаги TCP или логическое сочетание флагов. Поддерживаемые Hetzner флагами являются syn, fin, rst, psh и urg.Они могут быть объединены с | (логическое ИЛИ) и & (логическое И).См. документацию для получения дополнительной информации. | |||
| server_ip строка / обязательно | Основной IP-адрес сервера. | |||
| state строка |
| Статус брандмауэра. Брандмауэр активен, если состояние present, и отключен, если состояние absent. | ||
| timeout целое число | По умолчанию: 180 | Таймаут (в секундах) ожидания настройки брандмауэра. | ||
| update_timeout целое число | По умолчанию: 30 | Таймаут, используемый при настройке брандмауэра. Обратите внимание, что вызов API возвращает значение до того, как брандмауэр будет успешно настроен. | ||
| wait_delay целое число | По умолчанию: 10 | Задержка ожидания (в секундах) перед повторной проверкой того, был ли брандмауэр настроен. | ||
| wait_for_configured логическое значение |
| Ожидать, пока брандмауэр будет успешно настроен, прежде чем определять, что делать, и прежде чем возвращаться из модуля. API возвращает статус in progress, когда брандмауэр в настоящее время настраивается. В этом случае модуль будет пытаться снова, пока статус не изменится на active или disabled.Обратите внимание на ограничение запросов. Если вам необходимо выполнить несколько обновлений, лучше отключить ожидание и регулярно использовать community.general.hetzner_firewall_info для запроса статуса. | ||
| whitelist_hos логическое значение |
| Предоставлять ли Hetzner-сервисам доступ. | ||
См. также
См. также
- Документация брандмауэра
-
Документация Hetzner по бесстановочному брандмауэру для выделенных серверов
- community.general.hetzner_firewall_info
-
Получение информации о конфигурации брандмауэра.
Примеры
- name: Configure firewall for server with main IP 1.2.3.4
community.general.hetzner_firewall:
hetzner_user: foo
hetzner_password: bar
server_ip: 1.2.3.4
state: present
whitelist_hos: yes
rules:
input:
- name: Allow everything to ports 20-23 from 4.3.2.1/24
ip_version: ipv4
src_ip: 4.3.2.1/24
dst_port: '20-23'
action: accept
- name: Allow everything to port 443
ip_version: ipv4
dst_port: '443'
action: accept
- name: Drop everything else
ip_version: ipv4
action: discard
register: result
- ansible.builtin.debug:
msg: "{{ result }}"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключевые данные | Возвращаемое значение | Описание | |||
|---|---|---|---|---|---|
| firewall словарь | успех | Настройка брандмауэра. | |||
| port строка | успех | Порт коммутатора брандмауэра. main или kvm. Пример: main | |||
| rules словарь | успех | Правила брандмауэра. | |||
| input список / элементы=словарь | успех | Правила входящего трафика брандмауэра. | |||
| action строка | успех | Действие при совпадении правила. accept или discard. Пример: accept | |||
| dst_ip строка | успех | Адрес назначения IP-адреса или подсети. Нотация CIDR. Пример: 1.2.3.4/32 | |||
| dst_port строка | успех | Порт назначения или диапазон портов. Пример: 443 | |||
| ip_version строка | успех | Версия интернет-протокола. Пример: ipv4 | |||
| name строка | успех | Имя правила брандмауэра. Пример: Разрешить доступ к серверу по HTTP | |||
| protocol строка | успех | Протокол над уровнем IP. Пример: tcp | |||
| src_ip строка | успех | Адрес источника IP-адреса или подсети. Нотация CIDR. | |||
| src_port строка | успех | Порт источника или диапазон портов. | |||
| tcp_flags строка | успех | Флаги TCP или логическое сочетание флагов. | |||
| server_ip строка | успех | Основной IP-адрес сервера. Пример: 1.2.3.4 | |||
| server_number целое число | успех | Внутренний номер сервера Hetzner. Пример: 12345 | |||
| status строка | успех | Статус брандмауэра. active или disabled. Будет in process, если брандмауэр в настоящее время обновляется, и wait_for_configured установлено в no или timeout имеет слишком малое значение.Пример: active | |||
| whitelist_hos булево | успех | Разрешить ли Hetzner-сервисам доступ. Пример: True | |||
Авторы
- Фёликс Фонтейн (@felixfontein)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/hetzner_firewall_module.html