memiah.autossh

AutoSSH

Rola Ansible, która instaluje i konfiguruje wiele połączeń autossh, umożliwiając przekazywanie portów z lokalnego serwera do zdalnych serwerów za pomocą SSH.

Wymagania

Zakładamy, że użytkownik SSH istnieje i ma odpowiednie uprawnienia do dostępu do zdalnego serwera. Odpowiedni klucz SSH musi być również dostępny na lokalnym serwerze (/root/.ssh/id_rsa lub zdefiniowany w konfiguracji połączenia).

Zmienna Roli

Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi (zobacz defaults/main.yml):

autossh_connections:
  - id: "example" # Prosty, unikalny identyfikator połączenia (znaki: "a-z,0-9,-").
    user: "" # Nazwa użytkownika używana do połączenia z zdalnym serwerem.
    server: "" # IP / nazwa hosta zdalnego serwera.
    server_key_type: "" # Typ klucza zdalnego serwera, domyślnie to autossh_default_server_key_type. (Opcjonalne)
    local_port: "" # Lokalny port do przekazywania.
    dest_server: "" # IP / nazwa hosta do użycia na zdalnym serwerze, domyślnie to autossh_default_dest_server. (Opcjonalne)
    dest_port: "" # Port na zdalnym serwerze, do którego należy się połączyć.
    identity_file: "" # Ścieżka do prywatnego klucza SSH, domyślnie to autossh_default_ssh_key_path. (Opcjonalne)

Dodaj zestaw właściwości połączenia SSH dla każdego połączenia. Można wymienić tutaj wiele połączeń.

autossh_path: "/usr/bin/autossh"

Ścieżka do autossh.

autossh_ssh_dir: "/root/.ssh"

Katalog do przechowywania konfiguracji SSH.

autossh_systemd_dir: "/etc/systemd/system/"

Ścieżka do katalogu systemd.

autossh_known_hosts_file: "{{ autossh_ssh_dir }}/known_hosts"

Ścieżka do pliku znanych hostów.

autossh_default_server_key_type: "ecdsa"

Domyślny typ klucza zdalnego serwera. Można nadpisać tę wartość dla pojedynczego połączenia, używając opcji server_key_type w liście autossh_connections.

autossh_default_dest_server: "127.0.0.1"

Domyślne IP / nazwa hosta do użycia na zdalnym serwerze, będą to najprawdopodobniej localhost / 127.0.0.1. Można nadpisać tę wartość dla pojedynczego połączenia, używając opcji dest_server w liście autossh_connections.

autossh_default_identity_file: "/root/.ssh/id_rsa"

Ścieżka do pliku, z którego odczytywany jest identyfikator (klucz prywatny) do autoryzacji klucza publicznego. Domyślnie to /root/.ssh/id_rsa dla wersji protokołu 2. Można nadpisać tę wartość dla pojedynczego połączenia, używając opcji identity_file w liście autossh_connections.

Zależności

Brak.

Przykład Playbooka

- hosts: servers
  vars_files:
    - vars/main.yml
  roles:
     - { role: memiah.autossh }

Wewnątrz vars/main.yml:

autossh_connections:
  - id: "example"
    user: "nazwa_użytkownika"
    server: "zdalny.serwer"
    local_port: "33061"
    dest_port: "3306"

Przekazuje lokalny port 33061 do portu 3306 na zdalnym.serwerze, łącząc się za pomocą SSH jako nazwa_uż[email protected].

To stworzy nową usługę o nazwie autossh-example.service (autossh-{id}.service), którą można zarządzać za pomocą systemctl:

systemctl status autossh-example.service
systemctl restart autossh-example.service
...

Licencja

MIT / BSD

Informacje o autorze

Ta rola została stworzona w 2016 roku przez Memiah Limited.

O projekcie

Install and configure autossh connections on RedHat systems.

Zainstaluj
ansible-galaxy install memiah.autossh
Licencja
Unknown
Pobrania
134
Właściciel