teleport

enix.teleport

Роль для развертывания и настройки teleport и дополнений на UNIX-хостах с использованием Ansible.

[!WARNING] Эта роль Ansible больше не поддерживается, и проект теперь только для чтения. Спасибо.

Требования

Поддерживаемые платформы:

  • Ubuntu 18.04 "Bionic"
  • Ubuntu 20.04 "Focal"
  • Ubuntu 22.04 "Jammy"
  • Debian 7 "Wheezy"
  • Debian 8 "Jessie"
  • Debian 9 "Stretch"
  • Debian 10 "Buster"
  • Debian 11 "Bullseye"
  • Debian 12 "Bookworm"

Переменные роли

Эта роль поставляется с предустановленными практически всеми доступными настройками по умолчанию. Вы можете переопределить каждую из них в ваших переменных хостов/групп, в вашем инвентаре или в вашем плейбуке. Смотрите аннотированные значения по умолчанию в defaults/main.yml для помощи в конфигурации. Все предоставленные переменные начинаются с teleport__.

  • teleport__version: 10 - Основная версия / ветка устанавливаемого бинарного файла, версия репозитория по умолчанию 8. Доступные версии: 8, 9, 10, 11.
  • teleport__agent: false - Настроить и включить программное обеспечение агента teleport.
  • teleport__bind_addr: 0.0.0.0 - Адрес привязки, используемый для настройки остальных адресов привязки по умолчанию.
  • teleport__nodename - Имя, которое агент teleport сообщает своему подключенному прокси. Если не определено, имя узла не будет настроено, и Teleport по умолчанию возьмет имя хоста машины.
  • teleport__diag: false - Включить HTTP мониторинг в teleport.
  • teleport__diag_addr: "127.0.0.1" - Адрес привязки для HTTP мониторинга.
  • teleport__diag_port: 3000 - Порт, используемый для HTTP мониторинга.
  • teleport__node: false - Настроить и включить роль узла teleport.
  • teleport__node_token: "" - Токен, используемый для подключения к прокси.
  • teleport__node_server: "" - URL-адрес сервера прокси.
  • teleport__proxy: false - Включить режим прокси в teleport.
  • teleport__proxy_public_addr: "" - Публичный адрес, который прокси открывает.
  • teleport__proxy_acme: false - Включить протокол ACME для публичного сертификата. При отключении Teleport будет искать сертификат в /etc/letsencrypt/live/{{ teleport__proxy_public_addr }}
  • teleport__proxy_acme_email: "" - Электронная почта для запроса ACME.
  • teleport__auth: false - Включить роль авторизации teleport.
  • teleport__auth_cluster_name: "" - Имя кластера авторизации teleport.
  • teleport__auth_u2f: false - Включить U2F (классическую конфигурацию без webauthn).
  • teleport__auth_addr: {{ teleport__bind_addr }} - Адрес привязки для службы авторизации teleport.
  • teleport__auth_port: 3025 - Порт для привязки службы авторизации teleport.
  • teleport__ssh_addr: {{ teleport__bind_addr }} - Адрес привязки для службы ssh teleport.
  • teleport__ssh_port: 3022 - Порт для привязки службы ssh teleport.
  • teleport__ssh: false - Включить ssh модуль teleport.
  • teleport__ssh_labels: '' - Добавить метки к модулю ssh (формат yaml).
  • teleport__ssh_pam_enabled: true - Включить PAM.
  • teleport__ssh_pam_service: 'sshd' - Имя службы PAM.
  • teleport__app: false - Включить модуль app teleport.
  • teleport_applications: [] - Список приложений, определенных как словарь с следующими ключами:
    • name - Имя приложения
    • uri - URI для обратного проксирования
    • skip_verify: false - Пропустить проверку сертификата по целевому URI или нет.
  • teleport__web_addr: {{ teleport__bind_addr }} - Адрес привязки для веб-службы teleport.
  • teleport__web_port: 443 - Порт для привязки веб-службы teleport.
  • teleport__tunnel_addr: {{ teleport__bind_addr }} - Адрес привязки для службы туннеля.
  • teleport__tunnel_port: 3024 - Порт для привязки службы туннеля teleport.
  • teleport__binary_compat: false - Если true, будет развернута бинарная версия рядом с пакетом с большей совместимостью glibc. (Автоматически выполняется на выпуске Debian до buster (10)).
  • teleport__install_repo: true - Установите false, если хотите предотвратить установку репозитория (полезно для изолированных сред - вручную установить, а затем использовать эту роль для настройки всего).

Зависимости

  • Нет

Использование

Используйте Ansible galaxy в requirements.yml

# teleport от enix
# приватная роль
- src: git+ssh://[email protected]/ansible/ansible-teleport.git
  name: enix.teleport

И добавьте ее в роли вашего плейбука:

# Пример с узлом
    - hosts: all
      roles:
        - role enix.teleport:
            teleport__agent: true
            teleport__version: 9
            teleport__nodename: "test.node"
            teleport__node: true
            teleport__node_token: "gjlksfdjglkfsdjlkgfds9423"
            teleport__node_server: "https://toto.tp.com:3025"
            teleport__ssh: true
            teleport__ssh_labels:
              tenant: toto.com
# Пример с прокси
    - hosts: all
      roles:
        - role enix.teleport:
            teleport__agent: true
            teleport__version: 10
            teleport__nodename: "toto.proxy"
            teleport__proxy: true
            teleport__proxy_public_addr: "toto.tp.com"
            teleport__proxy_acme: false
            teleport__proxy_acme_email: "[email protected]"
            teleport__auth: true
            teleport__auth_cluster_name: "toto.tp.com"
            teleport__ssh: true
            teleport__ssh_labels:
              tenant: toto.com

История изменений

1.9.1

Добавлена поддержка PAM

1.9.0

Исправлена проблема с размораживанием пакета Изменена версия по умолчанию на 10 Добавлены тесты molecule

1.8.2

Поддержка VyOS Разрешено переопределение ansible_distribution в URL-адресе APT репозитория

1.8.1

Добавлен тег config Ansible

1.8.0

Сделать имя узла необязательным (Teleport по умолчанию возьмет имя хоста)

1.7.1

Исправлено сообщение об ошибке, когда целевая система не является Debian Использовать новый метод проверки подписи пакета, когда это возможно, и очистить управление репозиториями

1.7.0

Добавлена поддержка конфигурации U2F старого типа (не webauthn)

1.6.1

Исправлена дублирующаяся конфигурация диагностики

1.6.0

Добавлена поддержка HTTP конечной точки диагностики

1.5.2

Исправлена ошибка проверки YAML

1.5.1

Косметическое изменение в шаблоне teleport.yaml для избежания ненужного отличия

1.5.0

Поддержка службы приложения

1.4.0

Поддержка сертификатов LE, сгенерированных вне teleport (ACME отключен)

1.3.1

Исправлено отсутствие завершающего слэша в старом репозитории Debian

1.3.0

Добавлена поддержка обновления teleport с использованием teleport (обработчик будет ждать, пока соединение не будет активным)

Принудительное удаление старого репозитория apt.

Автоматическое обновление пакета teleport, если доступна новая версия

1.2.0

Добавлена поддержка адреса привязки прокси

1.1.0

Возврат к репозиторию Debian teleport с основными версиями.

1.0.0

По умолчанию использовать репозиторий Enix Debian

0.9.2

Обновить совместимый бинарный файл до версии 8.3.8

0.9.1

Добавлена совместимость бинарных файлов для centos 6 (debian 8 jessie)

0.9.0

Первоначальная версия.

Лицензия

GPLv2

Информация об авторе

Лорент Корбес laurent.corbes@enix.fr - http://www.enix.io

О проекте

Ansible role to deploy teleport software

Установить
ansible-galaxy install enix/ansible-teleport
Лицензия
Unknown
Загрузки
770
Владелец
Enix