gamethis.win_openssh

Rol de Ansible win_openssh

win_openssh Rol de Ansible Galaxy

Instala Win32-OpenSSH en un host de Windows.

Nota: Este rol ha sido probado en Win32-OpenSSH v7.7.2.0p1-Beta, versiones más nuevas deberían funcionar, pero no hay garantía.

Con las opciones predeterminadas, este rol hará;

  • Instalar Win32-OpenSSH en C:\Program Files\OpenSSH basado en la última versión disponible en GitHub.
  • Configurar los servicios sshd y ssh-agent y hacer que se inicien automáticamente.
  • Crear una regla de firewall que permita el tráfico entrante en el puerto 22 para los perfiles de red dominio y privado.
  • Configurar el archivo sshd_config para permitir la autenticación con clave pública y contraseña.

También se pueden configurar las siguientes opciones como parte del rol, pero requieren que se establezcan algunas variables opcionales;

  • Especificar una versión específica para descargar desde GitHub o otra URL que apunte al zip.
  • Especificar dónde instalar los binarios.
  • Controlar si se deben configurar los servicios del servidor SSH.
  • Controlar si los servicios SSH deben iniciarse automáticamente.
  • Definir los perfiles de firewall para permitir el tráfico ssh entrante.
  • Especificar el puerto y otros valores seleccionados de sshd_config.
  • Agregar una(s) clave(s) pública(s) al perfil del usuario actual.

Requisitos

  • Windows Server 2008 R2 o superior.

Variables

Variables Obligatorias

Ninguna, este rol se ejecutará con las opciones predeterminadas establecidas.

Variables Opcionales

  • opt_openssh_architecture: La arquitectura de Windows, debe estar configurada como 32 o 64 (predeterminado: 64).
  • opt_openssh_firewall_profiles: Los perfiles de firewall para permitir el tráfico SSH entrante (predeterminado: dominio,privado).
  • opt_openssh_install_path: El directorio donde se instalarán los binarios OpenSSH (predeterminado: C:\Program Files\OpenSSH).
  • opt_openssh_pubkeys: Una cadena o lista de cadenas para agregar al archivo authorized_keys del usuario, por defecto no se agregarán claves. Si opt_openssh_shared_admin_key es True, estas claves no afectarán la autenticación de los usuarios administradores.
  • opt_openssh_shared_admin_pubkeys: Una cadena o lista de cadenas para agregar al archivo de claves autorizadas de administradores.
  • opt_openssh_setup_service: Si se deben instalar los componentes del servicio sshd o solo mantener los ejecutables de cliente (predeterminado: True).
  • opt_openssh_skip_start: No iniciará el servicio sshd y ssh-agent y tampoco se establecerá para iniciar automáticamente (predeterminado: False).
  • opt_openssh_temp_path: El directorio temporal para descargar el zip y los archivos extraídos (predeterminado: C:\Windows\TEMP).
  • opt_openssh_url: Establece la ubicación de descarga del zip de OpenSSH, si se omite, se obtendrá del repositorio de GitHub.
  • opt_openssh_version: Establece una versión específica para descargar desde GitHub, esto solo es válido cuando opt_openssh_url no está configurado (predeterminado: latest).
  • opt_openssh_zip_file: La ruta a un archivo zip de versión de OpenSSH que se utilizará para instalar OpenSSH. Esto se usará en lugar de opt_openssh_url si se define, y opt_openssh_zip_remote_src controla si la ruta es local para el controlador o local para el host de Windows.
  • opt_openssh_zip_remote_src: (predeterminado: False)

También puede personalizar los siguientes valores de sshd_config:

  • opt_openssh_port: Alinea con Port, el puerto en el que el servicio SSH escuchará (predeterminado: 22).
  • opt_openssh_pubkey_auth: Alinea con PubkeyAuthentication, si el servicio SSH permitirá autenticación con claves SSH (predeterminado: True).
  • opt_openssh_password_auth: Alinea con PasswordAuthentication, si el servicio SSH permitirá autenticación con contraseñas (predeterminado: True).
  • opt_openssh_shared_admin_key: Establecer en True para que los administradores usen una clave de autorización compartida en __PROGRAMDATA__/ssh/administrators_authorized_keys. Establecer en False para asegurar que se use %USER_PROFILE%\.ssh\authorized_keys para todos los usuarios (predeterminado: False).

Puede personalizar las opciones de shell para controlar cómo el servicio sshd inicia un nuevo shell:

  • opt_openssh_default_shell: Sobrescribe el shell predeterminado establecido por la instalación de OpenSSH. Este debe ser el camino absoluto a un ejecutable que desea ejecutar al iniciar una sesión SSH.
  • opt_openssh_default_shell_command_option: Establece los argumentos utilizados al invocar el shell, esto no debe ajustarse en circunstancias normales.
  • opt_openssh_default_shell_escape_args: Omite el escape automático de argumentos al invocar el shell.
  • opt_openssh_powershell_subsystem: Establece el subsistema para la remoción de PowerShell, necesita ser una ruta 8.3 como: C:\PROGRA~1\POWERS~1\7\pwsh.exe (predeterminado: indefinido).

Variables de Salida

Ninguna

Dependencias del Rol

Ninguna

Ejemplo de Playbook

- name: instalar Win32-OpenSSH con los valores predeterminados
  hosts: windows
  gather_facts: no
  roles:
  - jborean93.win_openssh

- name: instalar una versión específica de Win32-OpenSSH en una carpeta personalizada
  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: solo instalar componentes del cliente de Win32-OpenSSH
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_setup_service: False

Pruebas

Para probar este rol, ve a la carpeta tests y ejecuta vagrant up. Esto levantará un host de Windows Server 2019 para probar el rol. Si el host ya está en línea, ejecutar vagrant provision volverá a correr las pruebas.

Pendientes

Ninguno - se aceptan solicitudes de características.

Acerca del proyecto

Install Win32-OpenSSH on a Windows host

Instalar
ansible-galaxy install gamethis.win_openssh
Licencia
mit
Descargas
22.3k
Propietario
Automation is a lifestyle