jborean93.win_openssh

Ansible Rolle win_openssh

win_openssh Ansible Galaxy Rolle

Installiert Win32-OpenSSH auf einem Windows-Host.

Hinweis: Diese Rolle wurde mit Win32-OpenSSH v7.7.2.0p1-Beta getestet. Neuere Versionen sollten funktionieren, dies ist jedoch nicht garantiert.

Mit den Standardoptionen wird diese Rolle:

  • Win32-OpenSSH in C:\Program Files\OpenSSH basierend auf der neuesten freigegebenen Version auf GitHub installieren
  • Die Dienste sshd und ssh-agent einrichten und so konfigurieren, dass sie automatisch gestartet werden
  • Eine Firewallregel erstellen, die eingehenden Verkehr über Port 22 für die Netzwerkprofile domain und private zulässt
  • Die Datei sshd_config so konfigurieren, dass sowohl die Authentifizierung mit öffentlichen Schlüsseln als auch mit Passwörtern erlaubt ist

Folgendes kann ebenfalls als Teil der Rolle konfiguriert werden, erfordert jedoch einige optionale Variablen;

  • Eine bestimmte Version zum Herunterladen von GitHub oder einer anderen URL angeben, die auf die ZIP-Datei verweist
  • Angeben, wo die Binärdateien installiert werden sollen
  • Steuern, ob die SSH-Serverdienste eingerichtet werden sollen
  • Steuern, ob die SSH-Dienste automatisch gestartet werden sollen
  • Die Firewallprofile definieren, um eingehenden SSH-Verkehr zuzulassen
  • Den Port und andere ausgewählte Werte für die sshd_config angeben
  • Einen oder mehrere öffentliche Schlüssel zum Profil des aktuellen Benutzers hinzufügen

Anforderungen

  • Windows Server 2008 R2+

Variablen

Obligatorische Variablen

Keine, diese Rolle läuft mit den Standardoptionen.

Optionale Variablen

  • opt_openssh_architecture: Die Windows-Architektur, muss auf entweder 32 oder 64 gesetzt werden (Standard: 64).
  • opt_openssh_firewall_profiles: Die Firewallprofile, die eingehenden SSH-Verkehr zulassen (Standard: domain,private).
  • opt_openssh_install_path: Das Verzeichnis, in dem die OpenSSH-Binärdateien installiert werden (Standard: C:\Program Files\OpenSSH).
  • opt_openssh_pubkeys: Eine Zeichenfolge oder Liste von Zeichenfolgen, die zur Datei authorized_keys des Benutzers hinzugefügt werden sollen. Standardmäßig werden keine Schlüssel hinzugefügt. Wenn opt_openssh_shared_admin_key auf True gesetzt ist, haben diese Schlüssel keine Auswirkung auf die Authentifizierung für Admin-Benutzer.
  • opt_openssh_setup_service: Ob die SSHD-Dienstkomponenten installiert werden sollen oder ob lediglich die Client-Programme verwendet werden (Standard: True).
  • opt_openssh_skip_start: Der Dienst sshd und ssh-agent wird nicht gestartet und auch nicht auf automatisch starten gesetzt (Standard: False).
  • opt_openssh_temp_path: Das temporäre Verzeichnis zum Herunterladen der ZIP-Datei und der extrahierten Dateien (Standard: C:\Windows\TEMP).
  • opt_openssh_url: Legt den Speicherort der OpenSSH-ZIP-Datei fest. Falls nicht angegeben, wird dies aus dem GitHub-Repository übernommen.
  • opt_openssh_version: Legt eine bestimmte Version zum Herunterladen von GitHub fest, dies ist nur gültig, wenn opt_openssh_url nicht gesetzt ist (Standard: latest).
  • opt_openssh_zip_file: Der Pfad zu einer OpenSSH-ZIP-Release-Datei, die zur Installation von OpenSSH verwendet wird. Dies wird anstelle von opt_openssh_url verwendet, wenn definiert, und opt_openssh_zip_remote_src steuert, ob der Pfad lokal zum Controller oder lokal zum Windows-Host ist.
  • opt_openssh_zip_remote_src: (Standard: False)

Sie können auch die folgenden Werte für sshd_config anpassen:

  • opt_openssh_port: Entspricht Port, dem Port, auf dem der SSH-Dienst lauscht (Standard: 22).
  • opt_openssh_pubkey_auth: Entspricht PubkeyAuthentication, ob der SSH-Dienst die Authentifizierung mit SSH-Schlüsseln zulässt (Standard: True).
  • opt_openssh_password_auth: Entspricht PasswordAuthentication, ob der SSH-Dienst die Authentifizierung mit Passwörtern zulässt (Standard: True).
  • opt_openssh_shared_admin_key: Auf True setzen, damit Administratoren einen gemeinsamen Autorisierungsschlüssel unter __PROGRAMDATA__/ssh/administrators_authorized_keys verwenden. Auf False setzen, um sicherzustellen, dass %USER_PROFILE%\.ssh\authorized_keys für alle Benutzer verwendet wird (Standard: False).

Sie können die Shell-Optionen anpassen, um zu steuern, wie der sshd-Dienst eine neue Shell startet:

  • opt_openssh_default_shell: Überschreibt die Standard-Shell, die bei der OpenSSH-Installation festgelegt wurde. Dies sollte der absolute Pfad zu einer ausführbaren Datei sein, die Sie beim Start einer SSH-Sitzung ausführen möchten.
  • opt_openssh_default_shell_command_option: Legt die Argumente fest, die beim Aufrufen der Shell verwendet werden. Dies sollte in normalen Fällen nicht angepasst werden.
  • opt_openssh_default_shell_escape_args: Automatisches Escaping von Argumenten beim Aufrufen der Shell überspringen.
  • opt_openssh_powershell_subsystem: Legt das Subsystem für PowerShell-Remoting fest. Muss ein 8.3-Pfad wie C:\PROGRA~1\POWERS~1\7\pwsh.exe sein (Standard: undefined).

Ausgabevariablen

Keine

Rollenabhängigkeiten

Keine

Beispiel-Playbook

- name: Win32-OpenSSH mit den Standardoptionen installieren
  hosts: windows
  gather_facts: no
  roles:
  - jborean93.win_openssh

- name: Spezifische Version von Win32-OpenSSH in benutzerdefinierter Ordner installieren
  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: Nur die Clientkomponenten von Win32-OpenSSH installieren
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_setup_service: False

Tests

Um diese Rolle zu testen, gehen Sie in den Ordner tests und führen Sie vagrant up aus. Dies startet einen Windows Server 2019-Host, um die Rolle zu testen. Wenn der Host bereits online ist, wird mit vagrant provision der Test erneut ausgeführt.

Aufgaben

Keine - Funktionsanfragen sind willkommen.

Über das Projekt

Install Win32-OpenSSH on a Windows host

Installieren
ansible-galaxy install jborean93.win_openssh
Lizenz
mit
Downloads
388.1k
Besitzer