Cómo instalar y dejar listo un servidor con Debian 13

Cómo instalar y dejar listo un servidor con Debian 13: SSH, Cockpit, UFW y configuración básica
Si quieres montar un servidor con Debian y dejarlo listo para administrar de forma remota, hay una base que casi siempre conviene instalar desde el principio: acceso por SSH, firewall, actualizaciones, usuario con privilegios administrativos y una interfaz web como Cockpit para revisar el sistema más cómodamente.
Debian 13, con nombre clave Trixie, es actualmente la versión estable de Debian. Debian 13.0 fue lanzado el 9 de agosto de 2025 y su actualización más reciente es Debian 13.4, publicada el 14 de marzo de 2026. Además, Debian ofrece imágenes netinst, que son ideales para montar un servidor limpio y ligero. (Debian)
En este tutorial te voy a mostrar cómo instalar Debian 13 y dejarlo preparado para usarse como servidor con:
- Debian 13 mínimo
- OpenSSH Server
- Cockpit
- UFW
- usuario administrativo con
sudo - configuraciones iniciales recomendadas
Qué vas a necesitar
Antes de empezar, prepara esto:
- Una USB booteable con Debian 13 netinst
- Conexión a internet durante la instalación
- Un equipo físico o máquina virtual
- La IP local o pública que usará el servidor
La imagen netinst de Debian instala una base mínima del sistema y descarga el resto de los paquetes desde internet, lo cual la hace muy adecuada para servidores. (Debian)
Como BOOTEAR una USB con debian.
primero vas a descargar la imagen iso, de debian. por ejemplo esta. este es un ejemplo es recomendable entrar a su sitio para bajar la ultima version.
despues te vas a descargar la herramienta rufus para bootear la imagen ISO
Instalar Debian 13 en modo servidor
Durante la instalación de Debian:
Recomendación de selección
Cuando llegues a la parte de selección de software:
- Desmarca entorno de escritorio
- Marca:
- SSH server
- Standard system utilities
Debian indica que la tarea SSH server instala OpenSSH, y que Standard system utilities añade muchas herramientas comunes que normalmente conviene dejar seleccionadas salvo que busques un sistema extremadamente mínimo. (Debian)
Consejos prácticos durante la instalación
- Usa un nombre de host claro, por ejemplo:
debian-servidor - Si Debian te pide crear contraseña de root, puedes hacerlo, aunque para muchos escenarios conviene trabajar con un usuario normal y
sudo. - Crea un usuario principal, por ejemplo:
andres
Cuando termine la instalación, inicia sesión en consola.
Actualizar completamente el sistema
Lo primero después de instalar Debian es actualizar la información de paquetes y aplicar actualizaciones.
sudo apt update
sudo apt full-upgrade -y
La documentación de Debian explica que apt update reconstruye y actualiza los metadatos locales de APT, mientras que apt full-upgrade resuelve dependencias e instala las versiones candidatas disponibles de los paquetes. (Debian)
Después, reinicia por si se actualizó el kernel:
sudo reboot
Instalar sudo y dar permisos administrativos a tu usuario
Si tu instalación no dejó sudo listo, instálalo:
$ su -
# apt install sudo -y
Ahora agrega tu usuario al grupo sudo:
# usermod -aG sudo andres
# exit
# su -l andres
$ sudo apt update
EN este momento ya podrás usar sudo
Cierra sesión y vuelve a entrar para que se apliquen los cambios.
Puedes comprobarlo con:
groups
O también:
sudo whoami
Si devuelve root, ya quedó bien.
✅ 1. Primero identifica tu interfaz de red
Ejecuta:
ip a
Busca algo como:
enp0s3ens18eth0
👉 Ese nombre lo vas a usar después.
🚀 PONER IP PRIVADA ESTÁTICA MÉTODO RECOMENDADO (systemd-networkd en Debian Trixie)
Crear archivo de configuración
sudo nano /etc/systemd/network/20-static.network
Pega esto (ajusta tus datos):
[Match]
Name=enp0s3[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
DNS=8.8.8.8 1.1.1.1
📌 Cambia:
enp0s3→ tu interfaz real192.168.1.100→ tu IP fija192.168.1.1→ tu router
Activar systemd-networkd (si no está activo)
sudo systemctl enable systemd-networkd
sudo systemctl restart systemd-networkd
Y también DNS:
sudo systemctl restart systemd-resolved
Verificar
ip a
ip route
resolvectl status
🟡 MÉTODO ALTERNATIVO (si usas /etc/network/interfaces)
Editar archivo:
sudo nano /etc/network/interfaces
Ejemplo:
auto enp0s3
iface enp0s3 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 1.1.1.1
Reiniciar red:
sudo systemctl restart networking
⚠️ IMPORTANTE (muy importante en servidores)
Si estás conectado por SSH:
- Hazlo con cuidado
- Idealmente usa consola directa o IPMI
- Un error en gateway puede cortarte la conexión
Verificar o instalar SSH
Debian usa comúnmente OpenSSH Server para acceso remoto seguro. El paquete openssh-server es el servidor SSH oficial disponible en Debian. (packages.debian.org)
Si no lo instalaste durante el instalador:
sudo apt install openssh-server -y
Activa y arranca el servicio:
sudo systemctl enable --now ssh
Comprueba que esté funcionando:
sudo systemctl status ssh
También puedes revisar en qué IP está el equipo:
ip a
Y desde otra computadora probar:
ssh andres@IP_DEL_SERVIDOR
Configuración básica recomendada de SSH
El archivo principal de configuración es:
sudo nano /etc/ssh/sshd_config
Una configuración inicial razonable para un servidor casero o VPS puede ser esta:
PermitRootLogin no
PasswordAuthentication yes
PubkeyAuthentication yes
X11Forwarding no
Qué significa esto
PermitRootLogin noevita que root inicie sesión directamente por SSH.PasswordAuthentication yespermite entrar con contraseña.PubkeyAuthentication yesdeja habilitado el acceso con llave SSH.X11Forwarding nodesactiva el reenvío gráfico, que en muchos servidores no hace falta.
En la documentación de sshd_config para Debian, PasswordAuthentication existe y su valor por defecto es yes, mientras que PermitRootLogin admite valores como yes, prohibit-password, forced-commands-only y no; el valor por defecto moderno es prohibit-password. (manpages.debian.org)
Guarda el archivo y recarga SSH:
sudo systemctl restart ssh
Muy importante
No desactives la autenticación por contraseña hasta comprobar que tus llaves SSH funcionan correctamente.
nstalar y configurar UFW
UFW es un frontend para Netfilter/iptables pensado para simplificar la gestión del firewall desde línea de comandos, y está disponible en Debian 13. (packages.debian.org)
Instálalo:
sudo apt install ufw -y
Por defecto, UFW queda desactivado y maneja una política de denegar conexiones entrantes, permitir salientes y denegar forwarding, lo cual es una base bastante segura para un servidor simple. (manpages.debian.org)
Permitir SSH antes de activarlo
Este paso es vital. Si activas el firewall sin abrir SSH, podrías bloquearte a ti mismo.
(PRIMERO PERMITES PUERTOS Y DESPUES ACTIVAS UFW)
sudo ufw allow OpenSSH
O si prefieres por puerto:
sudo ufw allow 22/tcp
Ahora sí, activa UFW:
sudo ufw enable
Comprueba el estado:
sudo ufw status verbose
Instalar Cockpit
Cockpit es una interfaz web para administrar máquinas Linux. Según su documentación, normalmente se accede por el puerto 9090 y usa las credenciales del propio sistema Linux para iniciar sesión. Además, en Debian está disponible desde Debian 10, y el proyecto recomienda instalarlo desde backports para tener una versión más reciente. (Cockpit Project)
Agregar backports de Debian 13
. /etc/os-release
echo "deb http://deb.debian.org/debian ${VERSION_CODENAME}-backports main" | sudo tee /etc/apt/sources.list.d/backports.list
sudo apt update
Instalar Cockpit
sudo apt install -t ${VERSION_CODENAME}-backports cockpit -y
Activar Cockpit
sudo systemctl enable --now cockpit.socket
Comprueba su estado:
sudo systemctl status cockpit.socket
Abrir Cockpit en el firewall
Como Cockpit usa el puerto 9090, debes permitirlo en UFW:
sudo ufw allow 9090/tcp
Vuelve a revisar las reglas:
sudo ufw status
Entrar a Cockpit desde el navegador
Desde otra computadora, entra a:
https://IP_DEL_SERVIDOR:9090
La documentación oficial de Cockpit indica que escucha por el puerto 9090 y que, si llega una conexión HTTP, redirige a HTTPS. También explica que si no encuentra un certificado configurado, genera uno autofirmado. (Cockpit Project)
Qué esperar la primera vez
Lo normal es que el navegador muestre una advertencia de seguridad por el certificado autofirmado. Puedes continuar manualmente o más adelante instalar un certificado válido si expondrás Cockpit hacia internet.
Inicia sesión con tu usuario del sistema, por ejemplo:
- usuario:
andres - contraseña: la del sistema
Crear una llave SSH desde tu computadora cliente
Esto no se hace en el servidor, sino en la computadora desde la que te conectarás.
Genera una llave:
ssh-keygen -t ed25519 -C "mi-servidor"
Pulsa Enter para aceptar la ruta por defecto.
Luego copia la llave al servidor:
ssh-copy-id andres@IP_DEL_SERVIDOR
Ahora prueba entrar:
ssh andres@IP_DEL_SERVIDOR
Si entra sin pedir la contraseña del servidor o solo te pide la passphrase de tu llave, ya quedó.
Endurecer SSH después de probar la llave
Cuando confirmes que tu llave SSH funciona bien, ya puedes desactivar el acceso por contraseña para mejorar la seguridad.
Edita otra vez:
sudo nano /etc/ssh/sshd_config
Y deja así:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
X11Forwarding no
Reinicia SSH:
sudo systemctl restart ssh
A partir de aquí, el acceso será solo con llave SSH.
Paquetes útiles para un servidor recién instalado
Una base práctica podría ser esta:
sudo apt install curl wget git htop btop vim nano unzip ca-certificates lsb-release apt-transport-https -y
No todos son obligatorios, pero suelen ser muy útiles para administración, descargas, edición y diagnóstico.
Configuración de zona horaria
Comprueba la hora del servidor:
timedatectl
Si quieres ponerlo en horario de México:
sudo timedatectl set-timezone America/Mexico_City
Después verifica:
timedatectl
Comprobar que todo quedó listo
Haz esta revisión rápida:
Estado del firewall
sudo ufw status verbose
Estado de SSH
sudo systemctl status ssh
Estado de Cockpit
sudo systemctl status cockpit.socket
Puertos escuchando
sudo ss -tulpn
Deberías ver al menos:
22para SSH9090para Cockpit
Recomendaciones importantes antes de ponerlo en producción
Si el servidor se usará realmente en internet, conviene además:
- usar autenticación por llave SSH
- desactivar login por contraseña
- no permitir login directo de root
- mantener Debian actualizado
- abrir solo los puertos estrictamente necesarios
- si Cockpit estará expuesto a internet, protegerlo con reglas de firewall estrictas o acceso por VPN
- hacer respaldos antes de cambios grandes
Con esta instalación ya tienes una base bastante buena para empezar a usar Debian 13 como servidor: acceso remoto por SSH, panel web con Cockpit, firewall con UFW y una configuración inicial mucho más ordenada y segura que una instalación “tal cual sale”.
Lo bueno de este enfoque es que empiezas con un sistema limpio y ligero, y después ya puedes montar encima lo que realmente necesites: Apache, Nginx, Docker, bases de datos, Nextcloud, WordPress o servicios internos de tu red.



