Referencia Rápida de Comandos Linux para Servidores y Usuarios
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 12,76 KB
Gestión de Red
Configuración de Red e Interfaces
Identificar interfaces de red y direcciones IP: ip addr show
(o simplemente ip addr
)
Reiniciar servicio de red (método SysVinit/obsoleto): sudo /etc/init.d/networking restart
o sudo service networking restart
Nota: En sistemas modernos con systemd, usarías sudo systemctl restart networking.service
o el nombre específico del servicio de red (ej. NetworkManager.service
).
Configuración de Proxy
Configurar proxy a nivel de sistema (variables de entorno): Edita el archivo /etc/environment
. Ejemplo de líneas a añadir:
http_proxy="http://proxy.example.com:8080/"
https_proxy="http://proxy.example.com:8080/"
ftp_proxy="http://proxy.example.com:8080/"
no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
Para editar: sudo nano /etc/environment
Configurar proxy para APT: Edita o crea el archivo /etc/apt/apt.conf
o un archivo en /etc/apt/apt.conf.d/
(ej. 01proxy
). Ejemplo de línea a añadir:
Acquire::http::Proxy "http://proxy.example.com:8080/";
Para editar: sudo nano /etc/apt/apt.conf
Gestión de Paquetes (APT)
Editar lista de repositorios de software: sudo nano /etc/apt/sources.list
Actualizar lista de paquetes disponibles desde los repositorios: sudo apt-get update
(o sudo apt update
)
Actualizar paquetes instalados a sus versiones más recientes: sudo apt-get upgrade
(o sudo apt upgrade
)
Instalar un paquete (ej. servidor OpenSSH): sudo apt-get install openssh-server
(o sudo apt install openssh-server
)
Instalar paquete de actualizaciones automáticas: sudo apt-get install unattended-upgrades
Configurar frecuencia y comportamiento de actualizaciones automáticas:
- Editar el archivo principal de configuración:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
- Editar el archivo de periodicidad:
sudo nano /etc/apt/apt.conf.d/10periodic
(o20auto-upgrades
en versiones más nuevas)
Verificar si un paquete está instalado y su versión (ej. nombre_paquete
): dpkg -l | grep nombre_paquete
o de forma más específica dpkg -s nombre_paquete
Gestión de Usuarios
Creación y Eliminación de Usuarios
Crear un nuevo usuario (interactivo, recomendado): sudo adduser <nombre_usuario>
Crear un nuevo usuario (no interactivo, bajo nivel): sudo useradd <nombre_usuario>
(requiere configuración manual adicional como contraseña, home, etc.)
Eliminar un usuario (conservando su directorio personal): sudo deluser <nombre_usuario>
Eliminar un usuario (sin su directorio personal, bajo nivel): sudo userdel <nombre_usuario>
Eliminar usuario y su directorio personal y archivos asociados: sudo deluser --remove-home <nombre_usuario>
Eliminar usuario, su directorio personal y todos los archivos que le pertenezcan en el sistema (¡usar con extrema precaución!): sudo deluser --remove-all-files <nombre_usuario>
o sudo userdel -r <nombre_usuario>
(-r
elimina el home y la cola de correo)
Eliminar directorio personal de un usuario manualmente (¡con precaución!, no elimina la cuenta de usuario): sudo rm -rf /home/<nombre_usuario>
Listar todos los usuarios del sistema: cat /etc/passwd
(o getent passwd
)
Modificación de Atributos de Usuario
Cambiar nombre de login de un usuario: sudo usermod -l <nuevo_login> <login_actual>
Cambiar shell de un usuario (ej. a bash): sudo usermod -s /bin/bash <nombre_usuario>
Cambiar nombre de login y shell de un usuario simultáneamente: sudo usermod -l <nuevo_login> -s /bin/sh <login_actual>
Cambiar directorio personal (actualizar ruta en /etc/passwd
, sin mover archivos): sudo usermod -d /home/<nuevo_directorio> <nombre_usuario>
Mover contenido del directorio personal a una nueva ubicación y actualizar ruta: sudo usermod -m -d /home/<nuevo_directorio_con_contenido_movido> <nombre_usuario>
Bloqueo y Desbloqueo de Cuentas
Bloquear (deshabilitar) cuenta de usuario (impide login con contraseña): sudo usermod -L <nombre_usuario>
o sudo passwd -l <nombre_usuario>
Desbloquear (habilitar) cuenta de usuario: sudo usermod -U <nombre_usuario>
o sudo passwd -u <nombre_usuario>
Políticas de Contraseña y Caducidad de Cuenta (usermod
)
Establecer fecha de expiración de la cuenta (formato YYYY-MM-DD): sudo usermod -e YYYY-MM-DD <nombre_usuario>
Establecer días de inactividad tras expiración de contraseña antes de deshabilitar la cuenta (0 para desactivar): sudo usermod -f <días_inactividad> <nombre_usuario>
Políticas de Contraseña y Caducidad de Cuenta (chage
)
Mostrar información de caducidad de contraseña de usuario: sudo chage -l <nombre_usuario>
Establecer máximo de días de validez de la contraseña: sudo chage -M <días> <nombre_usuario>
Establecer mínimo de días entre cambios de contraseña: sudo chage -m <días> <nombre_usuario>
Establecer días de aviso antes de caducidad de contraseña: sudo chage -W <días> <nombre_usuario>
Establecer fecha de expiración de la cuenta (formato YYYY-MM-DD): sudo chage -E YYYY-MM-DD <nombre_usuario>
Políticas de Contraseña (passwd
)
Establecer máximo de días de validez de la contraseña: sudo passwd -x <días> <nombre_usuario>
Establecer días de aviso antes de caducidad de contraseña: sudo passwd -w <días> <nombre_usuario>
Establecer período de inactividad (días tras aviso) antes de bloquear cuenta si no se cambia contraseña: sudo passwd -i <días_inactividad_post_aviso> <nombre_usuario>
Gestión de Grupos
Añadir usuario a un grupo existente (principal o suplementario, interactivo): sudo adduser <nombre_usuario> <nombre_grupo>
Añadir usuario a un grupo suplementario existente (sin afectar otros grupos): sudo usermod -aG <nombre_grupo> <nombre_usuario>
Eliminar usuario de un grupo: sudo deluser <nombre_usuario> <nombre_grupo>
(o sudo gpasswd -d <nombre_usuario> <nombre_grupo>
)
Modificar GID (ID de Grupo) de un grupo: sudo groupmod -g <nuevo_GID> <nombre_grupo>
Modificar nombre de un grupo: sudo groupmod -n <nuevo_nombre_grupo> <nombre_grupo_actual>
Servicios de Red y Sistema
Servidor Samba
Instalación y Configuración Básica
Instalar Samba y cliente SMB: sudo apt-get install samba smbclient
Instalar utilidades CIFS (para montar recursos compartidos Samba/Windows): sudo apt-get install cifs-utils
Reiniciar servicios Samba (smbd y nmbd):
- Con systemd:
sudo systemctl restart smbd.service nmbd.service
- Con SysVinit:
sudo service smbd restart
ysudo service nmbd restart
(osudo /etc/init.d/smbd restart
ysudo /etc/init.d/nmbd restart
)
Editar archivo de configuración de Samba: sudo nano /etc/samba/smb.conf
Visualizar el contenido del archivo de configuración de Samba: cat /etc/samba/smb.conf
Encontrar a qué paquete pertenece un archivo de configuración (ej. smb.conf): dpkg -S /etc/samba/smb.conf
Verificar la sintaxis del archivo de configuración de Samba (smb.conf
): sudo testparm
Hacer copia de seguridad del archivo de configuración de Samba: sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
Eliminar archivo de configuración de Samba (¡con precaución!, generalmente se hace antes de reprovisionar): sudo rm /etc/samba/smb.conf
Verificar contenido del directorio de configuración de Samba: ls -l /etc/samba
Gestión de Usuarios en Samba
Añadir un usuario existente del sistema a la base de datos de Samba (y establecer contraseña SMB): sudo smbpasswd -a <nombre_usuario>
Listar usuarios en la base de datos de Samba (SAM): sudo pdbedit -L -v
(-v
para más detalle)
Controlador de Dominio Samba AD
Provisionar un nuevo controlador de dominio Samba Active Directory (ejecutar interactivamente): sudo samba-tool domain provision
Nota: Antes de provisionar, asegúrate de que el sistema tiene una IP estática, el hostname está correctamente configurado, y no hay otro servicio DNS/Kerberos conflictivo. Es recomendable borrar o renombrar smb.conf
si existe.
Durante el provisionamiento, se solicitarán datos como:
- Realm (Nombre de dominio DNS, ej.
MIDOMINIO.EJEMPLO.COM
): Se ingresa con puntos, usualmente en mayúsculas. - Domain (Nombre NetBIOS, ej.
MIDOMINIO
): Se ingresa sin puntos, usualmente en mayúsculas. - Server Role (Rol del servidor): Generalmente
dc
para un controlador de dominio. - DNS backend: Opciones como
SAMBA_INTERNAL
oBIND9_DLZ
. - DNS forwarder IP address: Opcional.
- Administrator password: Contraseña para el usuario Administrator del dominio.
Servidor DNS (BIND9)
Instalar servidor DNS BIND9 y utilidades DNS: sudo apt-get install bind9 bind9utils dnsutils
(manpages
o manpages-dev
son paquetes de documentación opcionales)
Servidor de Impresión (CUPS)
Instalar servidor de impresión CUPS: sudo apt-get install cups
Cliente SSH (PuTTY Tools)
Instalar herramientas de PuTTY en Linux (incluye puttygen, plink, pscp, etc.): sudo apt-get install putty-tools
Nota: El cliente gráfico PuTTY es más común en Windows. Para conexiones SSH desde Linux, se usa el comando ssh
nativo.
Comandos Generales del Sistema
Cambiar al usuario root (requiere contraseña de root, si está habilitada): su
o su -
(-
para un entorno de login completo)
Ejecutar un comando como root (requiere contraseña del usuario actual si está en el grupo sudoers): sudo <comando>
Obtener un shell de root con el entorno de root (usando sudo): sudo -i
o sudo su -
Verificar puertos TCP/UDP abiertos en escucha y procesos asociados:
- Con
netstat
(obsoleto pero puede estar presente):sudo netstat -tulnp
- Con
ss
(más moderno):sudo ss -tulnp