[[hack_roadmap-0|Up]] ====== Administración Avanzada de Linux ====== La administración avanzada de Linux abarca una variedad de tareas y conceptos que permiten a los administradores de sistemas gestionar, optimizar y asegurar sistemas Linux de manera efectiva. A continuación, se describen los principales componentes y tareas involucradas en la administración avanzada de Linux. ===== Gestión de Usuarios y Grupos ===== ==== Conceptos Clave ==== * **Usuarios:** Representan cuentas individuales que pueden acceder al sistema. * **Grupos:** Conjuntos de usuarios que comparten permisos y derechos. ==== Tareas Comunes ==== * **Creación de Usuarios y Grupos:** * Crear usuarios: ''sudo useradd [nombre_usuario]'' * Crear grupos: ''sudo groupadd [nombre_grupo]'' * Asignar usuarios a grupos: ''sudo usermod -aG [nombre_grupo] [nombre_usuario]'' * **Gestión de Permisos y Propiedades:** * Cambiar propietario de un archivo: ''sudo chown [usuario] [archivo]'' * Cambiar grupo de un archivo: ''sudo chgrp [grupo] [archivo]'' * Cambiar permisos: ''chmod [permisos] [archivo]'' ==== Recursos ==== * [[https://www.tldp.org/LDP/sag/html/user-management.html|Linux User Management]] * [[https://linuxize.com/post/understanding-linux-file-permissions/|File Permissions in Linux]] ===== Gestión de Paquetes y Software ===== ==== Conceptos Clave ==== * **Gestores de Paquetes:** Herramientas que facilitan la instalación, actualización y eliminación de software. ==== Tareas Comunes ==== * **APT (Debian/Ubuntu):** * Actualizar lista de paquetes: ''sudo apt update'' * Instalar un paquete: ''sudo apt install [paquete]'' * Eliminar un paquete: ''sudo apt remove [paquete]'' * Actualizar todos los paquetes instalados: ''sudo apt upgrade'' * **YUM/DNF (RHEL/CentOS/Fedora):** * Actualizar lista de paquetes: ''sudo yum check-update'' o ''sudo dnf check-update'' * Instalar un paquete: ''sudo yum install [paquete]'' o ''sudo dnf install [paquete]'' * Eliminar un paquete: ''sudo yum remove [paquete]'' o ''sudo dnf remove [paquete]'' * Actualizar todos los paquetes instalados: ''sudo yum update'' o ''sudo dnf update'' ==== Recursos ==== * [[https://wiki.debian.org/Apt|APT User's Guide]] * [[https://dnf.readthedocs.io/en/latest/|DNF Documentation]] ===== Administración de Servicios y Demonios ===== ==== Conceptos Clave ==== * **Servicios/Demonios:** Programas que se ejecutan en segundo plano para realizar tareas específicas del sistema. ==== Tareas Comunes ==== * **Systemd:** * Iniciar un servicio: ''sudo systemctl start [servicio]'' * Detener un servicio: ''sudo systemctl stop [servicio]'' * Habilitar un servicio en el arranque: ''sudo systemctl enable [servicio]'' * Deshabilitar un servicio en el arranque: ''sudo systemctl disable [servicio]'' * Ver el estado de un servicio: ''sudo systemctl status [servicio]'' ==== Recursos ==== * [[https://wiki.archlinux.org/title/systemd|Introduction to Systemd]] * [[https://www.freedesktop.org/wiki/Software/systemd/|Systemd Services Management]] ===== Administración de Almacenamiento ===== ==== Conceptos Clave ==== * **Particiones y Sistemas de Archivos:** Divisiones del almacenamiento físico y estructuras que organizan los datos en el disco. * **LVM (Logical Volume Manager):** Herramienta para la gestión flexible de volúmenes de disco. ==== Tareas Comunes ==== * **Particiones y Formateo:** * Crear una nueva partición: ''fdisk [dispositivo]'' * Formatear una partición: ''mkfs.ext4 [partición]'' * **Gestión de LVM:** * Crear un grupo de volúmenes: ''vgcreate [nombre_vg] [dispositivo]'' * Crear un volumen lógico: ''lvcreate -n [nombre_lv] -L [tamaño] [nombre_vg]'' * Redimensionar un volumen lógico: ''lvresize -L [nuevo_tamaño] [nombre_lv]'' ==== Recursos ==== * [[https://tldp.org/HOWTO/LVM-HOWTO/|The Linux System Administrator’s Guide to LVM]] * [[https://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/|Linux Filesystem Hierarchy]] ===== Automatización y Scripting ===== ==== Conceptos Clave ==== * **Scripts:** Programas escritos en lenguajes como Bash, Python o Perl para automatizar tareas. ==== Tareas Comunes ==== * **Scripts Bash:** * Crear un script Bash: ''nano script.sh'' * Hacer un script ejecutable: ''chmod +x script.sh'' * Ejecutar un script: ''./script.sh'' * **Automatización de Tareas:** * Programar tareas con ''cron'': ''crontab -e'' * Programar tareas con ''at'': ''at [hora]'' ==== Recursos ==== * [[https://tldp.org/LDP/abs/html/|Bash Scripting Guide]] * [[https://www.adminschoice.com/crontab-quick-reference|Crontab Quick Reference]] ===== Seguridad y Gestión de Accesos ===== ==== Conceptos Clave ==== * **Firewalls:** Herramientas para controlar el tráfico de red. * **SELinux/AppArmor:** Sistemas de control de acceso obligatorio para mejorar la seguridad del sistema. ==== Tareas Comunes ==== * **Firewall con UFW (Uncomplicated Firewall):** * Permitir un puerto: ''sudo ufw allow [puerto]'' * Denegar un puerto: ''sudo ufw deny [puerto]'' * Ver el estado del firewall: ''sudo ufw status'' * **Gestión de SELinux:** * Ver el estado de SELinux: ''sestatus'' * Habilitar/Deshabilitar SELinux: Editar ''/etc/selinux/config'' ==== Recursos ==== * [[https://help.ubuntu.com/community/UFW|UFW Essentials]] * [[https://wiki.centos.org/HowTos/SELinux|SELinux for Beginners]] ===== Conclusión ===== La administración avanzada de Linux requiere un conocimiento profundo de múltiples áreas, desde la gestión de usuarios y permisos hasta la configuración de redes y la automatización de tareas. Cada uno de estos componentes es crucial para mantener un sistema Linux seguro, eficiente y funcional. Los recursos proporcionados ofrecen guías detalladas y documentación para profundizar en cada uno de estos temas y mejorar tus habilidades como administrador de sistemas Linux. ===== Recursos Adicionales ===== * [[https://linuxjourney.com/lesson/advanced-administration|Advanced Linux Administration]] (Linux Journey) * [[https://opensource.com/article/19/7/linux-system-administration-resources|Linux System Administration]] (OpenSource)