autossh

Ansible Роль: autossh

Значок Ansible Galaxy

  • Устанавливает autossh и службы systemd для его работы, чтобы поддерживать открытыми SSH туннели.
  • Проверяет ключи хоста, чтобы избежать запросов проверки ключей хоста.

Взято из memiah/ansible-role-autossh с изменением целевых систем на Debian вместо RedHat.

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

Переменные роли (значения по умолчанию)

autossh_connections:
  - id: "example" # Простой уникальный идентификатор подключения (символы: "a-z,0-9,-").
    user: "" # Имя пользователя для подключения к удаленному серверу.
    server: "" # IP / имя хоста удаленного сервера.
    server_key_type: "" # Тип ключа удаленного сервера, по умолчанию autossh_default_server_key_type. (Необязательно)
    local_port: "" # Локальный порт для переадресации.
    dest_server: "" # IP / имя хоста для использования на удаленном сервере, по умолчанию autossh_default_dest_server. (Необязательно)
    dest_port: "" # Порт на удаленном сервере для подключения.
    identity_file: "" # Путь к приватному ключу SSH, по умолчанию autossh_default_ssh_key_path. (Необязательно)

Добавьте набор свойств подключения SSH для каждого соединения. Здесь можно указать несколько соединений.

autossh_path: "/usr/bin/autossh"

Путь к autossh.

autossh_ssh_dir: "/root/.ssh"

Директория для хранения конфигурации SSH.

autossh_systemd_dir: "/etc/systemd/system/"

Путь к директории systemd.

autossh_known_hosts_file: "{{ autossh_ssh_dir }}/known_hosts"

Путь к файлу известных хостов.

autossh_default_server_key_type: "ecdsa"

Тип ключа для удаленного сервера по умолчанию. Переопределите это значение для одноразового подключения с помощью опции server_key_type в списке autossh_connections.

autossh_default_dest_server: "127.0.0.1"

IP / имя хоста по умолчанию для использования на удаленном сервере, это, скорее всего, будет localhost / 127.0.0.1. Переопределите это значение для одноразового подключения с помощью опции dest_server в списке autossh_connections.

autossh_default_identity_file: "/root/.ssh/id_rsa"

Путь к файлу, из которого читается идентификация (приватный ключ) для аутентификации по публичному ключу. По умолчанию это /root/.ssh/id_rsa для версии протокола 2. Переопределите это значение для одноразового подключения с помощью опции identity_file в списке autossh_connections.

Пример

Переадресовать локальный порт 33061 на порт 3306 на db.example.com, подключаясь через SSH как [email protected].

- hosts: backup
  vars:
    autossh_connections:
      - id: mysql
        user: backup
        server: db.example.com
        local_port: '33061'
        dest_port: '3306'
  roles:
    - role: yurihs.autossh
      become: true

Это создаст новую службу с именем autossh-backup.service, которая может управляться с помощью systemctl:

systemctl status autossh-backup.service
systemctl restart autossh-backup.service
...

Авторы

Эта роль была создана в 2016 году Memiah Limited.

Адаптация для Debian в 2019 году yurihs.

О проекте

Ansible role for configuring multiple autossh connections

Установить
ansible-galaxy install yurihs/ansible-role-autossh
Лицензия
mit
Загрузки
2634
Владелец