Clase 4: Configuración básica de un servidor
¿Qué vas a aprender en esta clase?
- Configurar el acceso por SHH con clave pública.
- Configuración de la herramienta
sudo
. - Configuración del hostname y el FQDN del sistema.
Teoría
-
Acceso por SSH con clave pública
- Objetivo: Establecer conexión segura sin necesidad de contraseña, usando un par de claves pública/privada.
- Pasos en el cliente (máquina desde la que te conectas):
- Generar un par de claves (si no tienes):
ssh-keygen
- Guarda por defecto en
~/.ssh/id_rsa
(clave privada) y~/.ssh/id_rsa.pub
(clave pública).
- Guarda por defecto en
-
Copiar la clave pública al servidor:
ssh-copy-id usuario@servidor
- Alternativa manual: copiar el contenido de
~/.ssh/id_rsa.pub
al archivo~/.ssh/authorized_keys
del usuario en el servidor.
- Alternativa manual: copiar el contenido de
- Generar un par de claves (si no tienes):
-
Configuración de
sudo
-
Objetivo: Permitir a ciertos usuarios ejecutar comandos como superusuario (
root
) sin iniciar sesión como tal. -
Añadir un usuario al grupo
sudo
(Debian/Ubuntu):-
Agregar usuario al grupo:
sudo usermod -aG sudo nombre_usuario
-
Cerrar sesión y volver a iniciar para que el cambio surta efecto.
-
-
Editar configuración avanzada de
sudo
:-
Editar el archivo de configuración:
sudo visudo
-
Ejemplos dentro de visudo:
nombre_usuario ALL=(ALL) NOPASSWD:ALL # Ejecuta sudo sin contraseña
%admin ALL=(ALL) ALL # El grupo "admin" puede usar sudo
-
-
Archivos adicionales:
- También se pueden añadir configuraciones personalizadas en
/etc/sudoers.d/
.
- También se pueden añadir configuraciones personalizadas en
-
-
-
Configuración del
hostname
(nombre del sistema)- Objetivo: Establecer correctamente el nombre del host para que el sistema se identifique correctamente en la red.
- Tu máquina tendrá un nombre en tu dominio (FQDN), por ejemplo:
sauron.mordor.com
. -
Establecer el hostname permanente:
-
Editar el archivo
/etc/hostname
:-
Contiene solo el nombre del host (una línea):
sauron
-
-
Editar el archivo
/etc/hosts
:- Para configurar de forma adecuada el FQDN crea una línea en el fichero
/etc/hosts
donde identificas el nombre completo y el nombre corto. Por ejemplo:
- Para configurar de forma adecuada el FQDN crea una línea en el fichero
-
127.0.1.1 sauron.mordor.com sauron
3. **Aplicar el cambio sin reiniciar (temporal):** ```bash sudo hostnamectl set-hostname sauron.mordor.com ``` **Recordatorio**: `hostnamectl` cambia el hostname, pero NO actualiza `/etc/hosts`. Es responsabilidad del administrador editarlo manualmente para garantizar la resolución local del FQDN.
- Comprobar el hostname:
hostname
: Muestra el hostname.hostname -f
: Ver el nombre de dominio completo (FQDN).hostnamectl status
: Muestra todos los nombres configurados.
Ejercicio
- Crea una clave SSH, si na la tienes ya, y configura un servidor Linux para el acceso con el usuario
admin
` con clave SSH para que no te pida la contraseña. - Añade el usuario
admin
al sudo para que pueda ejecutarlo sin que te pida la contraseña. - Configura de manera adecuada el FQDN para que sea del tipo:
servidor.tunombre.org
.