gamethis.win_openssh

Rola Ansible win_openssh

Rola win_openssh Ansible Galaxy

Instaluje Win32-OpenSSH na hoście Windows.

Uwaga: Ta rola była testowana na Win32-OpenSSH v7.7.2.0p1-Beta, nowsze wersje powinny działać, ale nie ma gwarancji.

Z domyślnymi ustawieniami ta rola wykona:

  • Zainstaluje Win32-OpenSSH w C:\Program Files\OpenSSH na podstawie najnowszej wersji dostępnej w GitHub
  • Skonfiguruje usługi sshd i ssh-agent i ustawi je na automatyczne uruchamianie
  • Utworzy regułę zapory, która pozwala na ruch przychodzący na porcie 22 dla profili sieci domena i prywatna
  • Skonfiguruje plik sshd_config, aby umożliwić uwierzytelnianie za pomocą kluczy publicznych i haseł

Następujące opcje można także skonfigurować jako część roli, ale wymagają ustawienia dodatkowych zmiennych:

  • Określić konkretną wersję do pobrania z GitHub lub inny adres URL wskazujący na plik zip
  • Określić, gdzie zainstalować pliki binarne
  • Kontrolować, czy skonfigurować usługi serwera SSH
  • Kontrolować, czy ustawić usługi SSH na automatyczne uruchamianie
  • Zdefiniować profile zapory, aby pozwolić na ruch SSH przychodzący
  • Określić port i inne wybrane wartości sshd_config
  • Dodać klucz publiczny(-e) do profilu bieżącego użytkownika

Wymagania

  • Windows Server 2008 R2+

Zmienne

Zmienne obowiązkowe

Brak, ta rola będzie działać z domyślnymi opcjami.

Zmienne opcjonalne

  • opt_openssh_architecture: Architektura systemu Windows, musi być ustawiona na 32 lub 64 (domyślnie: 64).
  • opt_openssh_firewall_profiles: Profile zapory, które pozwalają na ruch SSH (domyślnie: domena, prywatna).
  • opt_openssh_install_path: Katalog do instalacji plików binarnych OpenSSH (domyślnie: C:\Program Files\OpenSSH).
  • opt_openssh_pubkeys: String lub lista stringów do dodania do pliku authorized_keys użytkownika, domyślnie nie będą dodawane żadne klucze. Jeśli opt_openssh_shared_admin_key jest True, klucze te nie będą miały wpływu na uwierzytelnianie dla użytkowników z uprawnieniami administratora.
  • opt_openssh_shared_admin_pubkeys: String lub lista stringów do dodania do pliku kluczy administrators_authorized_keys.
  • opt_openssh_setup_service: Czy zainstalować komponenty usługi sshd, czy tylko użyć plików wykonywalnych klienta (domyślnie: True).
  • opt_openssh_skip_start: Nie uruchomi usługi sshd i ssh-agent oraz nie ustawi ich na automatyczne uruchamianie (domyślnie: False).
  • opt_openssh_temp_path: Katalog tymczasowy do pobrania pliku zip i wyodrębnionych plików (domyślnie: C:\Windows\TEMP).
  • opt_openssh_url: Ustala lokalizację pobierania pliku zip OpenSSH, jeśli nie zostanie podana, pobierze z repozytorium GitHub.
  • opt_openssh_version: Ustala konkretną wersję do pobrania z GitHub, jest to ważne tylko wtedy, gdy opt_openssh_url nie jest ustawione (domyślnie: najowsza).
  • opt_openssh_zip_file: Ścieżka do pliku zip wydania OpenSSH, który zostanie użyty do instalacji OpenSSH. Będzie używany zamiast opt_openssh_url, jeśli jest zdefiniowane i opt_openssh_zip_remote_src kontroluje, czy ścieżka jest lokalna dla kontrolera czy lokalna dla hosta Windows.
  • opt_openssh_zip_remote_src: (domyślnie: Fałsz)

Możesz również dostosować następujące wartości sshd_config:

  • opt_openssh_port: Ustala port, na którym usługa SSH będzie nasłuchiwać (domyślnie: 22).
  • opt_openssh_pubkey_auth: Ustala, czy usługa SSH pozwoli na uwierzytelnianie za pomocą kluczy SSH (domyślnie: True).
  • opt_openssh_password_auth: Ustala, czy usługa SSH pozwoli na uwierzytelnianie za pomocą haseł (domyślnie: True).
  • opt_openssh_shared_admin_key: Ustaw na True, aby administratorzy korzystali z wspólnego klucza autoryzacji w __PROGRAMDATA__/ssh/administrators_authorized_keys. Ustaw na False, aby zapewnić użycie %USER_PROFILE%\.ssh\authorized_keys dla wszystkich użytkowników (domyślnie: Fałsz).

Możesz dostosować opcje powłoki, aby kontrolować, jak usługa sshd uruchamia nową powłokę:

  • opt_openssh_default_shell: Zastąp domyślną powłokę ustawioną przez instalację OpenSSH. Powinna to być absolutna ścieżka do pliku wykonywalnego, który chcesz uruchomić podczas rozpoczynania sesji SSH.
  • opt_openssh_default_shell_command_option: Ustaw argumenty używane podczas wywoływania powłoki, które nie powinny być zmieniane w normalnych okolicznościach.
  • opt_openssh_default_shell_escape_args: Pomiń automatyczne escape'owanie argumentów podczas wywoływania powłoki.
  • opt_openssh_powershell_subsystem: Ustaw subsystem do zdalnego dostępu PowerShell, musi to być ścieżka w formacie 8.3, np.: C:\PROGRA~1\POWERS~1\7\pwsh.exe (domyślnie: niezdefiniowane).

Zmienne wyjściowe

Brak

Zależności roli

Brak

Przykładowy playbook

- name: zainstaluj Win32-OpenSSH z domyślnymi ustawieniami
  hosts: windows
  gather_facts: no
  roles:
  - jborean93.win_openssh

- name: zainstaluj konkretną wersję Win32-OpenSSH w niestandardowym folderze
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_install_path: C:\OpenSSH
    opt_openssh_version: v7.7.2.0p1-Beta

- name: zainstaluj tylko komponenty klienta Win32-OpenSSH
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_setup_service: False

Testowanie

Aby przetestować tę rolę, przejdź do folderu tests i uruchom vagrant up. To uruchomi hosta Windows Server 2019, aby przetestować rolę. Jeśli host jest już online, uruchomienie vagrant provision ponownie uruchomi testy.

Lista rzeczy do zrobienia

Brak - zapraszamy do składania wniosków o nowe funkcje.

O projekcie

Install Win32-OpenSSH on a Windows host

Zainstaluj
ansible-galaxy install gamethis.win_openssh
Licencja
mit
Pobrania
22.3k
Właściciel
Automation is a lifestyle