Merge branch 'agile611:main' into main

This commit is contained in:
cocodrilo
2025-11-20 19:57:41 +01:00
committed by GitHub
5 changed files with 125 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
# Preparación del Windows Agent para Ansible
**Descripción**: Este fichero contiene los comandos necesarios para preparar un host Windows para ser gestionado por Ansible usando WinRM (HTTP no cifrado / Autenticación Basic).
**Requisitos previos en el agent Windows**:
- Windows con PowerShell ejecutándose como administrador.
- Conexión de red que permita acceso al puerto `5985` (WinRM HTTP) des del agente de Ansible.
**Pasos**:
1. **Cambiar red a privada**: En la configuración de Red de Windows, establecer el perfil de red de "Pública" a "Privada".
2. **Habilitar WinRM**: Ejecutar en PowerShell elevado a nivel administrador:
```powershell
winrm quickconfig -force
```
3. **Permitir autenticación Basic** (necesario si usarás credenciales básicas):
```powershell
Set-Item -Path WSMan:\localhost\Service\Auth\Basic -Value $true
```
4. **Permitir tráfico no cifrado** (si no usas HTTPS/WinRM cifrado):
```powershell
Set-Item -Path WSMan:\localhost\Service\AllowUnencrypted -Value $true
```
5. **Abrir puerto WinRM en el firewall**:
```powershell
New-NetFirewallRule -Name "WinRM HTTP" -DisplayName "WinRM HTTP" -Enabled True -Direction Inbound -Protocol TCP -LocalPort 5985 -Action Allow
```
**Notas de seguridad**:
- Habilitar `AllowUnencrypted` y `Basic` significa que las credenciales viajan en claro si no usas túnel/capa adicional. Evítalo en entornos de producción.
- Para un entorno más seguro, configura WinRM sobre HTTPS (puerto 5986) y usa certificados, o usa un túnel VPN/SSH para proteger el tráfico.
- Asegúrate de limitar el acceso al puerto `5985` mediante reglas de firewall o controles de red (IP whitelist).
**Comprobación**:
- Desde el controlador Ansible (Linux/macOS), prueba conectividad con `winrm` usando un módulo o una tarea `ping` de Ansible, o bien con `Test-NetConnection` desde otro host Windows:
```powershell
Test-NetConnection -ComputerName <IP-o-hostname> -Port 5985
```
**Deshacer/Restaurar**:
- Para deshabilitar Basic auth:
```powershell
Set-Item -Path WSMan:\localhost\Service\Auth\Basic -Value $false
```
- Para volver a bloquear tráfico no cifrado:
```powershell
Set-Item -Path WSMan:\localhost\Service\AllowUnencrypted -Value $false
```
- Para eliminar la regla de firewall creada:
```powershell
Remove-NetFirewallRule -Name "WinRM HTTP"
```
**Comandos antiguos del tirón**
```powershell
Preparación del Windows Agent para Ansible:
1) Poner el Windows de Red Publica a Privada (En configuración de Red)
2) winrm quickconfig -force
3) Set-Item -Path WSMan:\localhost\Service\Auth\Basic -Value $true
4) Set-Item -Path WSMan:\localhost\Service\AllowUnencrypted -Value $true
5) New-NetFirewallRule -Name "WinRM HTTP" -DisplayName "WinRM HTTP" -Enabled True -Direction Inbound -Protocol TCP -LocalPort 5985 -Action Allow
```

9
misc/windows-host Normal file
View File

@@ -0,0 +1,9 @@
[windows]
win101 ansible_host=192.168.1.175
[windows:vars]
ansible_user=AnsibleNode
ansible_password=ansible
ansible_port=5985
ansible_connection=winrm
ansible_winrm_server_cert_validation=ignore

9
training/prueba.txt Normal file
View File

@@ -0,0 +1,9 @@
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris egestas interdum sapien, ut interdum enim auctor at. Nam justo nisi, mattis iaculis hendrerit eget, dignissim eget erat. Pellentesque ac cursus ipsum, non lobortis eros. Nam interdum metus in feugiat consequat. Nunc dictum arcu at purus luctus bibendum. Nulla facilisi. Quisque fringilla, odio in elementum imperdiet, magna nulla malesuada libero, et tempor orci lacus et nisi. In eu ex id est posuere tristique ut at eros. Mauris in ante a nisi malesuada sagittis suscipit non metus.
Duis dignissim turpis ac ante pharetra, sit amet tempus massa mollis. Proin eros quam, efficitur nec semper at, condimentum id dui. Proin mattis arcu nibh, ut tristique risus tempor sed. Duis id est mattis, tristique enim non, feugiat nulla. In sollicitudin lacinia libero, quis vestibulum nulla tempor non. Mauris vitae quam neque. Cras dui felis, ullamcorper vitae ante semper, aliquam suscipit orci. Sed et ipsum purus. In eleifend arcu non diam scelerisque convallis. Ut rutrum felis et cursus viverra. Ut in ligula fermentum, tincidunt diam eget, dapibus leo. Proin purus nulla, tempus eu nulla vel, blandit consectetur tortor. Pellentesque pretium diam semper, maximus elit sit amet, egestas tortor. Ut vel condimentum sem. Suspendisse potenti. Sed augue neque, volutpat a feugiat eu, feugiat ut leo.
Etiam tincidunt lectus ipsum, sed cursus eros elementum id. Aenean pellentesque finibus odio nec viverra. In efficitur erat nec varius semper. Vestibulum tortor orci, tempor quis pretium quis, rutrum et dolor. Ut ut ornare purus, sed accumsan est. Vivamus commodo, neque vitae venenatis lacinia, nisi libero viverra orci, vel ornare lectus urna quis nunc. Vestibulum sapien mauris, pellentesque at luctus quis, posuere a massa. Integer in enim id erat scelerisque venenatis. Sed odio diam, ullamcorper at urna a, accumsan laoreet nisi. Proin dictum dui augue, et ornare justo egestas sit amet. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tempus accumsan massa, eu imperdiet eros faucibus fermentum. Sed auctor mauris imperdiet bibendum congue. Curabitur sollicitudin tincidunt sapien vel cursus. Suspendisse vitae interdum mauris.
Proin eros eros, cursus quis vestibulum vulputate, malesuada vitae urna. Aliquam ullamcorper, sem quis pellentesque interdum, ipsum ligula posuere turpis, volutpat ornare est massa quis purus. Nulla a posuere risus. Nunc at turpis vel dui varius sollicitudin ac quis nisl. Vivamus id sodales sapien. Nullam turpis leo, suscipit in mi nec, faucibus consectetur erat. Praesent orci risus, sagittis a mollis in, consequat ac nisi. Nulla ac tellus id massa feugiat condimentum. Nullam auctor ipsum sollicitudin cursus vulputate. Donec at nibh non sem consectetur consectetur ac at ipsum. Cras viverra placerat consectetur. Suspendisse potenti. Donec tempor vel eros quis efficitur.
Nam feugiat a mi vitae bibendum. Nam rhoncus, turpis ut tristique sodales, nibh risus fermentum erat, non iaculis libero nunc a dolor. Nullam porta nibh sed ligula porta imperdiet ac et augue. Integer consectetur purus at nisi efficitur, nec sodales massa pellentesque. Sed vehicula viverra lacus, ut interdum eros condimentum vel. Nullam feugiat nibh vitae rhoncus volutpat. Nullam risus dui, auctor sit amet sem sit amet, rhoncus lacinia sem. In scelerisque bibendum arcu, ut feugiat libero condimentum accumsan. Nunc porttitor felis at arcu convallis, et aliquet ipsum fermentum. Vestibulum fringilla est enim, a tincidunt enim mollis vitae. Praesent sodales, enim eget bibendum mollis, ligula sapien pretium ex, et suscipit magna nisi nec purus. Vivamus odio nibh, malesuada et efficitur vitae, sagittis sed tellus.

View File

@@ -0,0 +1,13 @@
---
- name: Prueba de conexión a Windows
hosts: windows
tasks:
- name: Borrar fichero escritorioSegundo en Windows
ansible.windows.win_file:
path: C:\Users\AnsibleNode\Desktop\escritorioSegundo.txt
state: absent
- name: Borrar fichero escritorio en Windows
ansible.windows.win_file:
path: C:\Users\AnsibleNode\Desktop\escritorio.txt
state: absent

20
training/windows.yml Normal file
View File

@@ -0,0 +1,20 @@
---
- name: Prueba de conexión a Windows
hosts: windows
tasks:
- name: Hacer ping a máquina
ansible.windows.win_ping:
- name: run the setup facts
ansible.windows.setup:
- name: Copy a single file
ansible.windows.win_copy:
src: prueba.txt
dest: C:\Users\AnsibleNode\Desktop\escritorio.txt
- name: Copy a single file where the source is on the remote host
ansible.windows.win_copy:
src: C:\Users\AnsibleNode\Desktop\escritorio.txt
dest: C:\Users\AnsibleNode\Desktop\escritorioSegundo.txt
remote_src: true