gamethis.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, aber das ist nicht garantiert.

Mit den Standardeinstellungen wird diese Rolle:

  • Win32-OpenSSH in C:\Program Files\OpenSSH basierend auf der neuesten Version von GitHub installieren
  • Die Dienste sshd und ssh-agent einrichten und so konfigurieren, dass sie automatisch starten
  • Eine Firewallregel erstellen, die eingehenden Verkehr auf Port 22 für die Netzwerkprofile Domain und Private erlaubt
  • Die sshd_config-Datei so konfigurieren, dass die Authentifizierung mit öffentlichen Schlüsseln und Passwörtern erlaubt ist

Folgendes kann ebenfalls Teil der Rolle konfiguriert werden, erfordert jedoch die Festlegung einiger optionaler Variablen:

  • Eine bestimmte Version von GitHub oder einer anderen URL, die auf die Zip-Datei verweist, angeben
  • Angeben, wo die Binärdateien installiert werden sollen
  • Steuern, ob die SSH-Serverdienste eingerichtet werden sollen
  • Steuern, ob die SSH-Dienste automatisch starten sollen
  • Definieren, welche Firewallprofile eingehenden SSH-Verkehr erlauben
  • Den Port und andere ausgewählte Werte in der sshd_config festlegen
  • Ein 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 32 oder 64 gesetzt werden (Standard: 64).
  • opt_openssh_firewall_profiles: Die Firewallprofile, die eingehenden SSH-Verkehr erlauben (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 authorized_keys-Datei des Benutzers hinzugefügt werden, standardmäßig werden keine Schlüssel hinzugefügt. Wenn opt_openssh_shared_admin_key auf True gesetzt ist, haben diese Schlüssel keinen Einfluss auf die Authentifizierung für Administratoren.
  • opt_openssh_shared_admin_pubkeys: Eine Zeichenfolge oder Liste von Zeichenfolgen, die zur Datei administrators_authorized_keys hinzugefügt wird.
  • opt_openssh_setup_service: Ob die sshd-Dienste installiert werden sollen oder nur die Client-Programme genutzt werden sollen (Standard: True).
  • opt_openssh_skip_start: Startet den sshd und ssh-agent Dienst nicht und setzt sie auch nicht auf auto start (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 für den Download der OpenSSH-Zip-Datei fest. Wenn weggelassen, wird diese von dem GitHub-Repository bezogen.
  • opt_openssh_version: Legt eine bestimmte Version fest, die von GitHub heruntergeladen werden soll, 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 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)

Du kannst auch folgende sshd_config-Werte anpassen:

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

Du kannst die Shell-Optionen anpassen, um zu steuern, wie der sshd-Dienst eine neue Shell startet:

  • opt_openssh_default_shell: Überschreibt die Standard-Shell, die durch die OpenSSH-Installation festgelegt wurde. Dies sollte der absolute Pfad zu einer ausführbaren Datei sein, die du beim Start einer SSH-Sitzung ausführen möchtest.
  • opt_openssh_default_shell_command_option: Setzt die Argumente, die beim Aufrufen der Shell verwendet werden. Dies sollte unter normalen Umständen nicht angepasst werden.
  • opt_openssh_default_shell_escape_args: Überspringt das automatische Escaping von Argumenten beim Aufrufen der Shell.
  • opt_openssh_powershell_subsystem: Setzt das Subsystem für PowerShell-Remoting, muss ein 8.3-Pfad wie C:\PROGRA~1\POWERS~1\7\pwsh.exe sein (Standard: undefined).

Ausgabewerte

Keine

Abhängigkeiten der Rolle

Keine

Beispiel-Playbook

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

- name: Bestimmte Version von Win32-OpenSSH in benutzerdefinierten 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 Client-Komponenten von Win32-OpenSSH installieren
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_setup_service: False

Testen

Um diese Rolle zu testen, gehe in den tests Ordner und führe vagrant up aus. Dies wird einen Windows Server 2019-Host hochfahren, um die Rolle zu testen. Wenn der Host bereits online ist, wird vagrant provision die Tests erneut ausführen.

Rückstand

Keiner - Funktionsanfragen sind willkommen.

Über das Projekt

Install Win32-OpenSSH on a Windows host

Installieren
ansible-galaxy install gamethis.win_openssh
GitHub Repository
Lizenz
mit
Downloads
22.3k
Besitzer
Automation is a lifestyle