Ctrl K
ComunidadGuías…
Guía HostingByte · verificada

Convertir un PC Antiguo en Servidor Casero: Guía Evergreen Completa

Aprende a transformar tu ordenador antiguo en servidor casero profesional. Configuración paso a paso de OpenMediaVault, TrueNAS, Docker, Pi-hole y hardening de seguridad. Incluye prerrequisitos, comandos verificados, backup, rollback y errores comunes.

Actualizada 5/10/2026Más guíasCitación AI/LLM

Convertir un PC Antiguo en Servidor Casero: Guía Evergreen Completa

Guía Evergreen Última actualización: 2026 Tiempo estimado: 2-4 horas

1. Introducción y Contexto

Un servidor casero permite crear nube privada, servidor multimedia, juegos, seguridad de red y más reutilizando hardware antiguo o con un NAS dedicado. Con Linux, OpenMediaVault, TrueNAS o paquetes tipo WAMP/XAMPP puedes montar servicios de archivos, webs, bases de datos y copias de seguridad.

Importante: Esta guía explica opciones, no una receta universal. Elige según tu hardware, necesidades y conocimientos técnicos.

2. Prerrequisitos y Hardware

Requisitos Mínimos por Uso

UsoCPURAMAlmacenamientoRed
NAS básico (OpenMediaVault)Dual-core2 GB1 TB+Gigabit Ethernet
Multimedia (Plex/Jellyfin)Quad-core4 GB2 TB+Gigabit Ethernet
Servidor Web/DevDual-core4 GB500 GB SSDGigabit Ethernet
IA Local (LLM)Quad-core+16 GB+2 TB NVMe10Gbps recomendado

Limpieza del Hardware

  1. Desconecta el equipo y descarga a tierra antes de tocar componentes.
  2. Limpia ventiladores, disipadores y ranuras con aire comprimido.
  3. Cambia pasta térmica si tiene más de 5 años.
  4. Añade discos extra si la placa base tiene puertos SATA libres.

Nota: Si tu placa base es muy antigua o solo ofrece Fast Ethernet, una tarjeta PCIe gigabit barata es casi obligatoria.

3. Sistemas Operativos para Servidor Casero

OpenMediaVault (OMV)

Ideal para equipos modestos o muy antiguos. Con 1-2 GB de RAM y una CPU antigua puedes montar un NAS doméstico muy digno que ofrezca SMB, NFS, FTP, DLNA, copias de seguridad y más.

Instalación en Debian:

# Instalar systemd-resolved antes (obligatorio)
apt-get install --yes systemd-resolved psmisc
systemctl enable --now systemd-resolved.service
systemctl restart systemd-resolved.service

# Añadir repositorios OpenMediaVault
cat <<EOF > /etc/apt/sources.list.d/openmediavault.list
deb [signed-by=/usr/share/keyrings/openmediavault-archive-keyring.gpg] http://packages.openmediavault.org/public/ synchrony main
EOF

# Instalar OMV
export LANG=C.UTF-8 export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get --yes --auto-remove install openmediavault

# Población de la base de datos
omv-confdbadm populate

TrueNAS (ZFS)

Para equipos con buena RAM y discos que requieran protección contra corrupción. TrueNAS usa ZFS con soporte avanzado de RAID y snapshots.

Requisitos:

  • Mínimo 8 GB RAM recomendado
  • Dual-core o superior
  • Discos con SMART soportado

Debian/Ubuntu Server

Para máxima flexibilidad y control. Instala solo lo que necesites: servidor web (Apache/Nginx), bases de datos (MySQL/MariaDB), Docker para contenerizar servicios.

# Ubuntu Server mínimo
apt install openssh-server docker.io docker-compose ufw fail2ban lynis

4. Docker para Contenerización

Docker mantiene el sistema limpio, facilita actualizaciones y permite clonar configuración entre máquinas.

Instalación Básica:

# Instalar Docker
curl -fsSL https://get.docker.com | bash

# Crear usuario en grupo docker
usermod -aG docker $USER
newgrp docker

# Verificar instalación
docker --version

Docker Compose para Pi-hole:

version: '3'
services:
  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "5053:5053/tcp"
      - "80:80/tcp"
      - "443:443/tcp"
    environment:
      - TZ=Europe/Madrid
      - FTLCONF_Dnscrypt=no
      - WEBPASSWORD="tu_password_seguro"
    volumes:
      - "/etc/pihole:/etc/pihole"
      - "/etc/dnsmasq.d:/etc/dnsmasq.d"
    cap_add:
      - NET_ADMIN
    network_mode: "host"

5. Hardening de Seguridad (Ubuntu/Debian)

Paso 1: Actualizar el sistema

sudo apt update && sudo apt full-upgrade -y
[ -f /var/run/reboot-required ] && sudo reboot

Paso 2: Crear usuario administrador

sudo adduser your_user
sudo usermod -aG sudo your_user

Paso 3: Configurar SSH con clave (sin password)

# Generar clave Ed25519
ssh-keygen -t ed25519 -C "tu_usuario@maquina"

# Copiar al servidor
ssh-copy-id your_user@your_server_ip

Paso 4: Endurecer SSH (/etc/ssh/sshd_config.d/00-hardening.conf)

PermitRootLogin no
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
LoginGraceTime 30
X11Forwarding no
AllowUsers your_user

Paso 5: Activar firewall con UFW

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw limit OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

Paso 6: Parches automáticos

sudo apt install unattended-upgrades
dpkg-reconfigure -plow unattended-upgrades
# Responde Yes en la pantalla que aparece

Paso 7: Revisar servicios expuestos

sudo ss -tulpn
systemctl list-unit-files --type=service --state=enabled

Paso 8: Ajustar parámetros del kernel

# /etc/sysctl.d/99-hardening.conf
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_syncookies = 1
kernel.kptr_restrict = 2
kernel.dmesg_restrict = 1
sudo sysctl --system

Paso 9: Registrar cambios con auditd

sudo apt install auditd
sudo nano /etc/audit/rules.d/50-hardening.rules
# Contenido:
-w /etc/passwd -p wa -k identidad
-w /etc/shadow -p wa -k identidad
-w /etc/group -p wa -k identidad
-w /etc/sudoers -p wa -k sudoers
-w /etc/ssh/sshd_config -p wa -k sshd
sudo augenrules --load
sudo auditctl -l

Paso 10: AppArmor y Fail2Ban

sudo aa-status | head -3
sudo apt install fail2ban
sudo fail2ban-client status sshd

Paso 11: Auditoría con Lynis

sudo apt install lynis
sudo lynis audit system
# Revisar /var/log/lynis-report.dat

6. Pi-hole: DNS Filtrado y Privacidad

Pi-hole actúa como servidor DNS filtrando publicidad, rastreadores y dominios no deseados antes de que lleguen a tus dispositivos.

Docker Compose para Pi-hole:

version: '3'
services:
  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "80:80/tcp"
      - "443:443/tcp"
    environment:
      - TZ=Europe/Madrid
      - FTLCONF_Dnscrypt=no
      - WEBPASSWORD="tu_password_seguro"
    volumes:
      - "/etc/pihole:/etc/pihole"
      - "/etc/dnsmasq.d:/etc/dnsmasq.d"
    cap_add:
      - NET_ADMIN
    network_mode: "host"

Configurar Router:

# En router, establecer DNS primario como IP del Pi-hole
dns_primary = 192.168.1.100
dns_secondary = 8.8.8.8

Listas de Bloqueo Recomendadas:

  • AdGuard DNS: https://dns.adguard.com/dns-block
  • Firebog: https://firebog.net/
  • StevenBlack: https://github.com/StevenBlack/hosts

7. Configuración de Almacenamiento (NAS)

OpenMediaVault - Carpetas Compartidas:

# Crear carpeta compartida
omv-firstaid create-share /mnt/data/misarchivos "Mis Archivos" 777

# Configurar permisos SMB
omv-firstaid set-share-permissions /mnt/data/misarchivos

TrueNAS - Crear Pool con RAID-Z:

# En interfaz web TrueNAS:
1. System → Storage → Pools → Create Pool
2. Selecciona discos y configura RAID-Z1 (mínimo 3 discos)
3. Crea dataset para compartir

SMART Monitoring:

# Verificar estado SMART de disco
smartctl -a /dev/sda

# Configurar monitorización automática
apt install smartmontools
systemctl enable --now smartd

8. Servidor Multimedia (Plex/Jellyfin)

Jellyfin (Recomendado - Libre):

version: '3'
services:
  jellyfin:
    container_name: jellyfin
    image: jellyfin/jellyfin
    ports:
      - "8096:8096"
    volumes:
      - "/mnt/data/multimedia:/jellyfin/media"

Plex Media Server:

version: '3'
services:
  plex:
    container_name: plex
    image: lscr.io/linuxserver/plex:latest
    environment:
      - PLEX_UID=1000
      - PLEX_GID=1000
    volumes:
      - "/mnt/data/multimedia:/media"

9. Copias de Seguridad y Backup

Configurar Rsync para Backups:

# Crear tarea de rsync
omv-firstaid create-rsync-task \
  --source /mnt/data/misarchivos \
  --destination /mnt/backup/sincompresion \
  --schedule "0 2 * * *"

TrueNAS - Replicación ZFS:

# En interfaz web TrueNAS:
1. System → Data Protection → Replication Tasks
2. Configurar réplica local o remota
3. Activar compresión y encriptación

Backup a la Nube:

# Rsync a S3 (AWS, Wasabi, etc.)
rclone config
rclone sync /mnt/data/misarchivos s3:mi-bucket --progress

10. Acceso Remoto Seguro

Opción 1: VPN Personal (Recomendado)

version: '3'
services:
  wireguard:
    container_name: wireguard
    image: ghcr.io/wireguard/wireguard
    ports:
      - "51820:51820/udp"
    volumes:
      - "/etc/wireguard:/etc/wireguard"

Opción 2: Tailscale (Más Sencillo)

version: '3'
services:
  tailscale:
    container_name: tailscale
    image: tailscale/tailscale:latest
    environment:
      - TS_AUTHKEY=tu_auth_key_aqui
    volumes:
      - "/var/run/tailscale:/var/run/tailscale"

Opción 3: SSH Tunneling

# Desde cliente a servidor
tunnel ssh -L 8080:localhost:80 tu_usuario@server_ip

11. Errores Habituales y Soluciones

ErrorCausaSolución
No puedo acceder por SSHFirewall bloqueando puerto 22sudo ufw allow 22/tcp
Pi-hole no resuelve DNSsystemd-resolved conflictConfigurar resolvectl dns antes de instalar OMV
Docker no arrancaUsuario no en grupo dockerusermod -aG docker $USER && newgrp docker
SMB lentoFast Ethernet antiguoAñadir tarjeta PCIe Gigabit
ZFS corruptoDisk failure no detectadosmartctl -a /dev/sdX +S
SSH fuerza brutaPasswordAuthentication enabledConfigurar sshd_config.d/00-hardening.conf

12. FAQ - Preguntas Frecuentes

¿Cuánto consume un servidor casero?

Un PC antiguo bien optimizado consume entre 30-60W en reposo. Con OpenMediaVault y Docker, puedes reducirlo a menos de 40W. TrueNAS con ZFS añade 5-10W extra.

¿Puedo exponer mi servidor a internet?

Sí, pero no recomendado sin VPN o túneles seguros. Si lo haces: usa HTTPS (certificados Let's Encrypt), limita puertos, activa fail2ban y mantén todo actualizado.

¿Qué es mejor: OpenMediaVault o TrueNAS?

OpenMediaVault: Equipos modestos, 1-2 GB RAM, configuración manual.
TrueNAS: Equipos con 8+ GB RAM, discos que requieran ZFS/RAID-Z, interfaz más compleja.

¿Necesito una GPU para IA local?

Sí. Para LLMs significativos necesitas mínimo 6 GB VRAM (RTX 3060 o superior). Modelos pequeños pueden correr en CPU con 8+ GB RAM.

¿Cómo actualizo el sistema sin perder datos?

Siempre haz backup primero:
1. Rsync todo a disco externo
2. Aplica actualización
3. Verifica servicios funcionando
4. Si falla, restaura desde backup

¿Puedo usar Windows como servidor?

Sí, pero consume más recursos (4-8 GB RAM mínimo). Para desarrollo web usa WAMP/XAMPP. Para NAS, considera OpenMediaVault o TrueNAS.

13. Conclusión y Próximos Pasos

Tu servidor casero bien configurado puede ser: nube privada, Netflix particular, centro de juegos con amigos, guardián de contraseñas, filtro de seguridad de red y motor de IA local.

Próximos pasos recomendados:

  • Semana 1: Instalar sistema operativo y hardening básico
  • Semana 2: Configurar Docker con Pi-hole y Jellyfin
  • Semana 3: Establecer copias de seguridad automáticas
  • Semana 4: Configurar acceso remoto seguro (VPN/Tailscale)

Recuerda: El hardening no es una tarea única. Repítelo con cada servicio nuevo que instales.

Fuentes verificadas

Fuentes verificadas

Fuente 1 ↗Fuente 2 ↗Fuente 3 ↗Fuente 4 ↗