Files
INFRAESTRUCTURA/docs/ACCESO_REMOTO_SOBREMESA.md
2026-10-03 23:30:44 +02:00

4.5 KiB

Acceso remoto al sobremesa (SSH → PowerShell) + Tailscale

Fecha: 03-oct-2026. Complementa SISTEMA_APAGADO_ENCENDIDO_REMOTO.md (ese cubre encender/apagar; esto cubre entrar una vez encendido).

Objetivo

Poder trabajar en el sobremesa desde el portátil (o el iPad) esté donde esté el PC, con acceso directo a su PowerShell por SSH, sin abrir puertos en el router.

Arquitectura

Portátil / iPad ──(Tailscale, red privada cifrada)──> SOBREMESA
                                                        └─ sshd (OpenSSH) → PowerShell
  • Tailscale pone ambos equipos en una malla privada (rango 100.64.0.0/10), con nombres estables.
  • OpenSSH Server en el sobremesa expone sshd (puerto 22), shell por defecto = PowerShell.
  • El firewall del sobremesa solo acepta SSH desde Tailscale y LAN.

ESTADO ACTUAL (03-oct-2026) — en el sobremesa ya está TODO hecho: sshd+ssh-agent Automatic/Running, shell = PowerShell, firewall :22 solo Tailscale+LAN, Tailscale up (100.75.115.29, hostname real desktop-m8se61g), clave del portátil en administrators_authorized_keys, Fast Startup OFF, BIOS Restore on AC = Power On. Usuario SSH = juanjo (cuenta local admin). Único pendiente: unir el portátil a Tailscale.

El encendido es por la regleta inteligente (comando Alexa regletta): se apaga el PC en limpio, la regleta corta la corriente, y al restaurarla la BIOS ("Restore on AC Power Loss = Power On") lo enciente y hace autologon en juanjo. No se usa Wake-on-LAN (descartado). sshd arranca como servicio con Windows, así que en cuanto el PC tiene corriente, SSH ya está disponible (no depende del autologon).

Puesta en marcha (una vez por equipo)

1) Portátil (cliente)

  • Instalar Tailscale y unirse: scripts\acceso_remoto\setup_tailscale.ps1 -Hostname portatil (abre el navegador para autenticar; requiere admin para instalar).
  • Clave SSH (ya creada en este portátil): ~/.ssh/id_ed25519. Pública:
    ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK7tk2+Vznv3zs+vjks64fwV+mznOQ7D+7Ct+vIBFJcz juanm@portatil
    

2) Sobremesa (servidor) — ejecutar como administrador

# 1. Tailscale
powershell -ExecutionPolicy Bypass -File scripts\acceso_remoto\setup_tailscale.ps1 -Hostname sobremesa

# 2. OpenSSH Server + clave del portátil (auto-eleva)
powershell -ExecutionPolicy Bypass -File scripts\acceso_remoto\setup_ssh_server.ps1 `
    -PublicKey "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK7tk2+Vznv3zs+vjks64fwV+mznOQ7D+7Ct+vIBFJcz juanm@portatil"

3) Probar desde el portátil

ssh juanjo@desktop-m8se61g    # por nombre Tailscale (MagicDNS)
ssh juanjo@100.75.115.29      # o por IP del sobremesa en la tailnet

El usuario del sobremesa es juanjo (no juanm). El hostname en la tailnet es desktop-m8se61g (nombre Windows), no sobremesa; confirmar siempre con tailscale status.

Uso diario

  • ssh juanjo@desktop-m8se61g → consola PowerShell remota.
  • Comandos sueltos: ssh juanjo@desktop-m8se61g "Get-Process | Sort CPU -Desc | Select -First 5".
  • Copiar ficheros: scp fichero juanjo@desktop-m8se61g:C:/Users/juanjo/.
  • Desde el iPad: app Tailscale + cliente SSH (p. ej. Termius/Blink) con la misma clave.

Seguridad

  • Contraseñas SSH deshabilitadas → solo clave pública (recomendado: PasswordAuthentication no).
  • Firewall SSH restringido a 100.64.0.0/10 (Tailscale) y LAN; sin exposición a Internet.
  • La tailnet se puede restringir por ACLs en el panel de Tailscale.
  • La clave id_ed25519 del portátil está sin passphrase por comodidad (los equipos ya tienen autologon). Si se quiere endurecer: ssh-keygen -p -f ~/.ssh/id_ed25519.

Troubleshooting

  • ssh no conecta: en el sobremesa Get-Service sshd (debe estar Running) y Get-NetFirewallRule -DisplayName 'OpenSSH Server (sshd) - acceso remoto'.
  • No resuelve el nombre Tailscale: tailscale status en ambos; usar la IP 100.x.y.z.
  • ¿Autenticación rechazada? Revisar que la clave pública está en C:\ProgramData\ssh\administrators_authorized_keys (si el usuario es admin) con ACLs correctas (SYSTEM y Administrators a Full).
  • Ver logs: Get-Service sshd | Get-Content o C:\ProgramData\ssh\logs\sshd.log (activando LogLevel DEBUG3 si hace falta).

Relación con el arranque remoto

  1. Comando Alexa regletta → la regleta corta/restaura corriente → BIOS (Restore on AC) arranca el sobremesa.
  2. sshd y Tailscale arrancan solos con Windows; el autologon entra en juanjo.
  3. Portátil: ssh juanjo@desktop-m8se61g → PowerShell remoto.