- Aprender
- Informática
- TI, redes y nube
- Introducción a Linux
- Almacenamiento y redes en Linux
Almacenamiento, sistemas de archivos y redes en Linux
PrincipianteUnidad 7 de 7 del curso Curso de Introducción a Linux
Lo que aprenderás
- Identifica dónde guarda Linux los programas, ajustes, registros y archivos de usuario, y trabaja con los directorios y archivos especiales que se comportan de forma distinta a los ordinarios.
- Identifica qué contiene cada directorio de primer nivelUtiliza el estándar de jerarquía del sistema de archivos para prever dónde se encuentran los programas, la configuración, los datos variables y los archivos de usuario.
- Utiliza directorios temporales y el bit de permanenciaElige entre /tmp y /var/tmp, explica cómo protege el bit de permanencia los directorios compartidos y crea archivos temporales de forma segura.
- Crea y gestiona enlaces simbólicos y durosCrea enlaces simbólicos con ln -s, identifica y repara enlaces rotos, y explica en qué se diferencian los enlaces duros.
- Identifica archivos de dispositivo y sistemas de archivos virtualesInterpreta los tipos de archivo en ls -l, utiliza los pseudodispositivos de /dev y consulta información del sistema en /proc y /sys.
- Identifica qué contiene cada directorio de primer nivel
- Identifica los dispositivos de almacenamiento y las particiones de un sistema Linux, incorpora sistemas de archivos al árbol de directorios y haz que se monten automáticamente al arrancar.
- Identifica discos, particiones y tipos de sistemas de archivosIdentifica dispositivos de almacenamiento y particiones por su nombre, interpreta la salida de lsblk, blkid y fdisk, y distingue entre tablas de particiones y tipos de sistemas de archivos.
- Monta y desmonta sistemas de archivosIncorpora un sistema de archivos a un directorio con mount, consulta qué está montado y desmóntalo de forma segura con umount.
- Monta sistemas de archivos al arrancar mediante /etc/fstabLee y escribe entradas de /etc/fstab que identifiquen sistemas de archivos por su UUID y pruébalas de forma segura antes de reiniciar.
- Identifica discos, particiones y tipos de sistemas de archivos
- Comprueba cuánto espacio está ocupado en cada sistema de archivos, descubre qué directorios y archivos lo utilizan y libera espacio sin dañar el sistema.
- Comprueba el espacio libre y los inodos con dfInterpreta la salida de df, explica por qué sus cifras no suman de forma directa y reconoce cuándo se agotan los inodos en lugar de los bytes.
- Identifica qué ocupa el espacio y realiza una limpieza seguraUtiliza du, sort y find para localizar directorios y archivos grandes, explica por qué difieren du y df y libera espacio de forma segura.
- Comprueba el espacio libre y los inodos con df
- Explica las direcciones, interfaces y rutas, consulta la configuración de red de una máquina con ip y ss, modifícala y encuentra el punto en el que falla una conexión.
- Explica las interfaces, las direcciones IP y las rutasDescribe las interfaces de red, las direcciones IPv4 e IPv6 con prefijos, los rangos de direcciones especiales, las puertas de enlace predeterminadas, los puertos y cómo obtienen los equipos su configuración.
- Consulta la configuración de red con ip y ssConsulta interfaces, direcciones y rutas con ip addr, ip link e ip route, y servicios en escucha con ss.
- Cambia los ajustes de red y diagnostica y resuelve problemas de conexiónRealiza cambios temporales con ip, cambios permanentes con la herramienta de red de la distribución y prueba una conexión paso a paso con ping.
- Explica las interfaces, las direcciones IP y las rutas
- Explica cómo convierte Linux los nombres en direcciones IP, utiliza /etc/hosts para nombres locales y comprueba y prueba los ajustes del cliente DNS.
- Explica cómo convierte Linux los nombres en direccionesDescribe los nombres y registros DNS, el orden de búsqueda establecido en /etc/nsswitch.conf y la función de /etc/hosts y del nombre de la propia máquina.
- Comprueba y prueba la configuración del cliente DNSConsulta /etc/resolv.conf y resolvectl, busca nombres con host, dig y getent, y localiza un fallo de resolución de nombres.
- Explica cómo convierte Linux los nombres en direcciones
- Inicia sesión en máquinas remotas y copia archivos mediante SSH, sustituye contraseñas por pares de claves y ejecuta el servidor SSH con ajustes seguros.
- Inicia sesión, ejecuta comandos y copia archivos mediante SSHConéctate con ssh, verifica las claves de servidor, ejecuta comandos remotos, transfiere archivos con scp, sftp y rsync e interpreta errores de conexión.
- Configura el inicio de sesión mediante clavesCrea un par de claves SSH con ssh-keygen, protégelo con una frase de contraseña y un agente, instala la clave pública en servidores y resuelve problemas habituales con las claves.
- Pon en marcha y protege el servidor SSHGestiona el servicio sshd, cambia sus ajustes de forma segura, desactiva los inicios de sesión con contraseña y lee sus registros.
- Inicia sesión, ejecuta comandos y copia archivos mediante SSH
Guía de estudio de Almacenamiento y redes en Linux
1Oriéntate en el sistema de archivos de Linux
Las rutas de Linux te indican para qué sirve un archivo, pero algunos nombres llevan a algo más que archivos ordinarios en disco. Los programas, los ajustes y los datos cambiantes tienen cada uno un lugar en el árbol de directorios. Los directorios temporales compartidos añaden una regla especial de eliminación; los enlaces dan nombres adicionales a los archivos; los archivos de dispositivo y virtuales muestran el sistema en funcionamiento. Aprender estas diferencias te ayuda a elegir dónde guardar tu trabajo y a comprender qué leerá o modificará un comando.
1.1 Encuentra programas, ajustes y datos cambiantes
Todas las rutas de Linux comienzan en un único árbol de directorios cuya raíz es /. Un segundo disco se incorpora a ese árbol en un directorio cuando se monta. El estándar de jerarquía del sistema de archivos (FHS) describe el propósito habitual de cada directorio; la versión 3.0 es de 2015.
Programas y ajustes
El FHS separa los archivos estáticos de los que cambian, y los archivos compartidos de los específicos de una máquina. Por eso los programas instalados van bajo /usr, los datos cambiantes bajo /var y los ajustes de esta máquina bajo /etc.
| Ubicación | Qué contiene |
|---|---|
/usr/bin, /usr/sbin | Comandos de usuario y comandos de administración |
/usr/lib | Bibliotecas que utilizan los programas |
/usr/share | Datos como manuales e iconos que no dependen de un tipo de procesador |
/usr/local | Software instalado manualmente por el administrador |
/etc | Configuración general del sistema, principalmente texto |
Las ubicaciones antiguas /bin, /sbin y /lib contienen comandos y bibliotecas esenciales en la estructura del FHS. Muchas distribuciones actuales utilizan la jerarquía unificada en /usr: estas rutas son enlaces simbólicos que apuntan a ubicaciones dentro de /usr. Así, /bin/ls y /usr/bin/ls pueden acceder al mismo programa. /etc excluye los binarios ejecutables, pero puede contener guiones de administración.
Archivos personales y datos de ejecución
Los usuarios normales suelen guardar sus propios archivos en /home/NAME; ~ representa tu directorio personal. Los ajustes de usuario como ~/.bashrc son entradas ocultas allí. /root es el directorio personal del superusuario. El directorio raíz / es el comienzo de todo el árbol, no el directorio personal de ese usuario.
Bajo /var, el segundo directorio concreta el propósito:
/var/logcontiene registros./var/cachecontiene datos que pueden descargarse o reconstruirse./var/libcontiene el estado de los programas, incluidas bases de datos y registros de paquetes./var/spoolcontiene tareas en cola, como trabajos de impresión./var/tmpcontiene archivos temporales que sobreviven al reinicio.
/tmp se utiliza para archivos temporales de menor duración. /run contiene datos del arranque actual, como sockets y archivos de identificadores de proceso, y se vacía al reiniciar. /boot contiene el núcleo, el disco RAM inicial y los archivos del cargador de arranque. /dev, /proc y /sys muestran dispositivos e información actual del núcleo.
Montajes y datos de servicios
/mnt es el lugar habitual para un montaje manual temporal. Los sistemas de escritorio suelen montar unidades extraíbles bajo /media/USER/LABEL, o /run/media/USER/LABEL en Fedora. /opt contiene software adicional en directorios de paquetes separados. /srv contiene datos que se sirven a otras máquinas; algunas distribuciones utilizan ubicaciones como /var/www para sitios web.
Considera un servidor nginx instalado desde un paquete en Debian o Ubuntu. Su ejecutable es /usr/sbin/nginx, sus ajustes principales están en /etc/nginx/nginx.conf y las solicitudes se registran en /var/log/nginx/access.log. La documentación está bajo /usr/share/doc/nginx. El propósito del directorio te indica dónde investigar un cambio de configuración o un registro que crece.
Instala tus propios comandos bajo /usr/local/bin, separados de los archivos gestionados mediante paquetes. Una actualización puede reemplazar archivos bajo /usr. Para un servicio de systemd, utiliza la ubicación de configuración alternativa bajo /etc/systemd/system en lugar de editar la unidad suministrada bajo /usr/lib/systemd/system.
Puntos clave
- El sistema de archivos es un único árbol con raíz en
/; las unidades montadas se incorporan a él en directorios. - Utiliza
/usrpara software instalado,/etcpara ajustes del sistema y/varpara datos cambiantes. - Los archivos personales van en directorios personales;
/rooty/tienen propósitos diferentes. /run,/dev,/procy/sysdescriben el sistema en funcionamiento.- Mantén el software instalado manualmente bajo
/usr/localy las configuraciones alternativas locales de servicios bajo/etc.
1.2 Crea archivos temporales y protege directorios compartidos
Los archivos temporales necesitan tanto una duración adecuada como permisos adecuados. Un archivo puede sobrevivir a un reinicio y aun así estar sujeto a una limpieza programada, y la protección contra la eliminación es distinta de la protección contra la lectura.
Elige una duración
Utiliza /tmp para tareas de corta duración que un programa no necesitará en su siguiente ejecución. El FHS recomienda vaciarlo al arrancar. Fedora y Debian 13 suelen montarlo como tmpfs, que utiliza memoria y espacio de intercambio; su contenido desaparece al apagar el equipo. Su límite de tamaño predeterminado es la mitad de la RAM física, por lo que una tarea temporal grande puede llenarlo aunque quede espacio en el disco principal.
Utiliza /var/tmp cuando el trabajo temporal deba sobrevivir a un reinicio. El FHS exige que su contenido se conserve durante el arranque. Sigue siendo almacenamiento temporal: las reglas de limpieza del proyecto de origen de systemd suelen eliminar las entradas que no se han utilizado durante 10 días en /tmp y 30 días en /var/tmp. La configuración de la distribución y la local pueden cambiar esos plazos. Guarda el trabajo duradero en tu directorio personal o en otro directorio de datos permanente.
Interpreta los permisos del directorio
Inspecciona la propia entrada del directorio:
ls -ld /tmp
Un ejemplo de cadena de permisos es drwxrwxrwt. La d inicial significa directorio. Los tres grupos de permisos permiten a todos leerlo, escribir en él y entrar. La t final indica el bit de permanencia, que sustituye al carácter habitual de ejecución para otros.
El permiso de escritura en un directorio normalmente permite a un usuario eliminar o cambiar el nombre de las entradas que contiene, incluidos los archivos de otras personas. En un directorio con bit de permanencia, la eliminación y el cambio de nombre están restringidos al propietario del archivo, al propietario del directorio o al superusuario, sujetos a las reglas habituales de acceso. El bit es útil precisamente porque muchos usuarios comparten /tmp.
Por ejemplo, Mina crea /tmp/draft.txt, con modo 644, en un directorio con bit de permanencia propiedad del superusuario. Tomas puede leer ese archivo porque sus propios permisos lo permiten. No puede eliminarlo solo porque pueda escribir en /tmp. Mina y el superusuario pueden eliminarlo. Cambiar el archivo al modo 600 también protege su contenido frente a otros usuarios normales.
Establece e identifica el bit de permanencia
En un directorio compartido que administras:
sudo chmod 1777 /srv/shared
El 1 inicial establece el bit de permanencia; los 777 restantes permiten a todos los usuarios acceso completo al directorio. sudo chmod +t /srv/shared añade el bit sin sustituir los demás permisos. chmod -t lo elimina cuando tienes permiso para cambiar el modo.
Una t minúscula significa que están establecidos tanto el bit de permanencia como el permiso de ejecución para otros. Una T mayúscula significa que el bit está establecido, pero otros carecen de permiso de ejecución. Por ejemplo, el modo 1770 aparece como drwxrwx--T. Linux ignora el bit de permanencia en archivos ordinarios; su nombre histórico procede de mantener el código de los programas en memoria o en el espacio de intercambio en los primeros tiempos de Unix.
Deja que mktemp elija el nombre
mktemp crea un archivo con un nombre aleatorio único y permisos 600, e imprime su ruta. mktemp -d crea un directorio temporal privado. En un guion del intérprete de comandos, guarda el nombre mostrado en una variable, utilízalo para la tarea y elimina el archivo al terminar.
Un nombre fijo como /tmp/results.txt puede pertenecer ya a otra persona o ser creado antes de que se inicie tu programa. Un nombre único evita esa colisión. El bit de permanencia no hace seguros los nombres predecibles ni convierte en privado un archivo con modo 644.
Puntos clave
/tmpes de corta duración;/var/tmpsobrevive al reinicio, pero también está sujeto a limpieza.- El bit de permanencia restringe la eliminación y el cambio de nombre en directorios compartidos.
- Los permisos del archivo controlan la lectura; el bit de permanencia no oculta el contenido.
- El modo 1777 combina el acceso abierto al directorio con la protección del bit de permanencia;
Tsignifica que otros carecen de permiso de ejecución. mktempcrea un archivo privado con un nombre único;mktemp -dcrea un directorio.
1.3 Sigue, repara y elimina enlaces
Un enlace proporciona otra ruta a un archivo a través del árbol de directorios. Un enlace simbólico almacena una ruta. Un enlace duro proporciona otro nombre para el mismo archivo subyacente. Sus distintos comportamientos importan cuando el nombre original se mueve o desaparece.
Crea un enlace simbólico
La sintaxis es ln -s TARGET LINKNAME: primero el destino y después el nombre nuevo. Por ejemplo:
ln -s /srv/manuals ~/manuals
ls -ld ~/manuals
readlink ~/manuals
ls -l comienza la cadena de permisos de un enlace simbólico con l e imprime una flecha hacia su destino. El tamaño mostrado es la longitud en bytes de la ruta almacenada, no el tamaño del directorio de destino. En los enlaces simbólicos ordinarios de Linux, los permisos rwxrwxrwx mostrados no conceden acceso al destino; siguen aplicándose los permisos del propio destino.
ls -ld /etc lista la entrada del directorio y sus permisos. ls -l /etc lista su contenido. Una barra final en un enlace simbólico a un directorio hace que se siga el enlace: ls -l manuals/ lista el contenido del directorio enlazado.
Resuelve un destino relativo
Un destino relativo parte del directorio que contiene el enlace. Supón que /home/lee/notes.txt existe y que /home/lee/backup es un directorio. Desde /home/lee, ejecuta:
ln -s ../notes.txt backup/notes-link
Para seguir el enlace, comienza dentro de backup, sube con .. y luego busca notes.txt. En cambio, escribir ln -s notes.txt backup/notes-link almacena una ruta a backup/notes.txt. Tu directorio de trabajo al crear el enlace no pasa a formar parte de esa ruta relativa almacenada. Un destino absoluto evita esta ambigüedad concreta.
Un enlace simbólico roto permanece después de que su ruta de destino se mueva o elimine. Al abrirlo aparece el error «No such file or directory». readlink LINK muestra el destino almacenado; readlink -f LINK resuelve la ruta completa cuando puede. find . -xtype l localiza enlaces rotos bajo el directorio actual. Vuelve a crear un enlace roto con el destino correcto, por ejemplo con ln -sfn NEWTARGET LINKNAME.
Compáralo con un enlace duro
printf 'hello\n' > original.txt
ln original.txt second.txt
ln -s original.txt shortcut.txt
rm original.txt
cat second.txt sigue imprimiendo «hello». Un enlace duro es otra entrada de directorio para el mismo inodo, el registro del archivo en el sistema de archivos. No hay un nombre original especial que deba permanecer. cat shortcut.txt falla porque su ruta de destino almacenada ya no existe.
| Propiedad | Enlace simbólico | Enlace duro |
|---|---|---|
| Almacena | Una ruta de destino | Otro nombre para el mismo archivo |
| Puede cruzar sistemas de archivos | Sí | No |
| Puede enlazar a un directorio | Sí | No |
| Después de eliminar el nombre de destino | Puede quedar roto | El otro nombre sigue dando acceso a los datos |
ls -i muestra el mismo número de inodo para dos enlaces duros en un sistema de archivos. La segunda columna de ls -l muestra su número de enlaces. Al eliminar el último nombre, el archivo se libera cuando ningún proceso lo mantiene abierto.
Elimina un enlace simbólico con rm LINKNAME o unlink LINKNAME. En el caso de un enlace a un directorio, omite la barra final: rm manuals elimina solo el enlace. Un comando recursivo sobre manuals/ puede acceder al contenido del destino y eliminarlo. Las rutas del sistema como /bin, los nombres de comandos con versión y los servicios habilitados de systemd suelen utilizar enlaces simbólicos.
Puntos clave
ln -s TARGET LINKNAMEalmacena una ruta; los destinos relativos parten del directorio del enlace.- Inspecciona los destinos almacenados con
readlink; vuelve a crear los enlaces cuyas rutas ya no funcionan. - Los enlaces duros comparten un inodo y siguen siendo utilizables cuando se elimina otro nombre.
- Los enlaces duros permanecen dentro de un sistema de archivos y no enlazan a directorios.
- Elimina un enlace simbólico a un directorio sin barra final para proteger el contenido del destino.
- Los permisos mostrados de un enlace simbólico no sustituyen a los permisos del destino.
1.4 Lee dispositivos y el núcleo en funcionamiento como archivos
Una ruta en Linux puede identificar un disco, un terminal o información actual del núcleo. El primer carácter de ls -l te indica el tipo de entrada antes de que la trates como un documento ordinario.
Identifica tipos de archivo
Los indicadores son - para un archivo ordinario, d para un directorio, l para un enlace simbólico, b para un dispositivo de bloques, c para un dispositivo de caracteres, p para una tubería con nombre y s para un socket. Un dispositivo de bloques, como /dev/sda1, proporciona almacenamiento en bloques a los que se puede acceder en cualquier orden. Un dispositivo de caracteres, como /dev/tty1, proporciona un flujo de bytes.
Un listado de dispositivo puede tener este aspecto:
brw-rw---- 1 root disk 8, 1 Oct 22 08:00 /dev/sda1
La b identifica un dispositivo de bloques. Los números 8, 1 sustituyen al campo habitual de tamaño: los números mayor y menor identifican el controlador y el dispositivo para el núcleo. Normalmente, devtmpfs proporciona /dev en memoria y lo llena a medida que aparece hardware, con ayuda de udev. Al conectar una unidad USB pueden crearse /dev/sdb y /dev/sdb1.
Escribir directamente en un dispositivo de disco puede sobrescribir sus datos sin pedir confirmación. Comprueba la identidad del dispositivo con lsblk antes de escribir de ese modo.
Utiliza pseudodispositivos
/dev/null descarta los bytes escritos y devuelve inmediatamente el fin de archivo al leerlo. Este comando oculta los mensajes de error y mantiene visibles los resultados normales:
find / -name '*.conf' 2>/dev/null
2> redirige la salida de error estándar. Todo lo que se envía allí se descarta.
/dev/zero proporciona bytes con valor cero. Por ejemplo, dd if=/dev/zero of=test.img bs=1M count=100 crea un archivo ordinario de 100 MiB lleno de ceros: 104 857 600 bytes. La salida en este caso es test.img, no un dispositivo de disco. /dev/urandom proporciona bytes aleatorios; head -c 16 /dev/urandom | base64 permite imprimir 16 de ellos.
Una vez inicializado el generador aleatorio de Linux, tanto /dev/random como /dev/urandom proporcionan bytes aleatorios criptográficamente seguros. En los núcleos a partir de 5.6, /dev/random espera a esa inicialización al principio del arranque; /dev/urandom puede devolver bytes antes de que termine.
Lee información actual
procfs, montado en /proc, crea información cuando se solicita. Muchas entradas muestran un tamaño de cero, pero devuelven texto al leerlas. /proc/cpuinfo describe los procesadores, /proc/meminfo describe la memoria y /proc/mounts lista los montajes. Los directorios numerados describen procesos en ejecución; /proc/sys muestra ajustes del núcleo. Herramientas como ps, top y free leen esta información.
cat /proc/uptime podría imprimir 86400.52 340000.10. El primer valor son los segundos transcurridos desde el arranque: unas 24 horas. El segundo suma el tiempo de inactividad de todos los procesadores, por lo que puede superar el tiempo transcurrido.
sysfs, montado en /sys, describe dispositivos, controladores y buses. ls /sys/class/net/ lista las interfaces, ls /sys/block/ lista los dispositivos de bloques y cat /sys/class/net/enp0s3/address lee la dirección MAC de una interfaz. Escribir en los ajustes modificables bajo /proc o /sys cambia el núcleo en funcionamiento y normalmente requiere privilegios de superusuario. Al hacer una copia de seguridad de todo el sistema, configura exclusiones para /proc, /sys, /dev y /run; el sistema en funcionamiento los vuelve a crear.
Puntos clave
- Lee el indicador de tipo antes de tratar una ruta como un archivo ordinario.
- Los dispositivos de bloques proporcionan almacenamiento; los dispositivos de caracteres proporcionan flujos.
/dev/nulldescarta datos,/dev/zeroproporciona ceros y/dev/urandomproporciona bytes aleatorios./procy/sysmuestran información actual del núcleo sin archivos ordinarios en disco.
2Inspecciona discos, particiones y sistemas de archivos montados
Una unidad, una partición y un sistema de archivos son distintas capas del almacenamiento. Consulta el árbol de dispositivos para identificar lo que hay y después incorpora el sistema de archivos correcto a un directorio para poder acceder a sus archivos. Un montaje manual dura mientras se mantenga el estado actual del sistema; una entrada en la configuración de arranque hace que vuelva automáticamente. Seguir estas capas en orden te ayuda a evitar formatear el dispositivo equivocado o introducir un montaje que impida el arranque normal.
2.1 Interpreta discos, particiones y tipos de sistemas de archivos
Un disco es un dispositivo de almacenamiento, físico o virtual. Una partición es una región de este. La tabla de particiones registra esas regiones, mientras que un sistema de archivos dentro de una partición organiza sus archivos y directorios. Una partición también puede contener espacio de intercambio, que sirve de apoyo a la memoria en lugar de almacenar archivos ordinarios.
Interpreta el nombre del dispositivo
Las unidades SATA, SAS y USB suelen utilizar /dev/sda, /dev/sdb y así sucesivamente; sus particiones añaden un número, como /dev/sdb1. Los nombres NVMe ya contienen dígitos, por lo que una partición añade p: /dev/nvme0n1p2 es la partición 2 de /dev/nvme0n1. Los dispositivos SD y eMMC utilizan nombres como /dev/mmcblk0p1; muchas máquinas virtuales utilizan /dev/vda1.
El orden de detección puede cambiar estos nombres. Identifica una unidad mediante varias pistas, no por la letra que tenía ayer:
lsblk -o NAME,SIZE,MODEL,RM,TYPE,MOUNTPOINTS
lsblk -f
sudo blkid
sudo fdisk -l
lsblk muestra el disco y sus particiones como un árbol. RM=1 identifica un dispositivo marcado como extraíble; TYPE distingue entre disk y part. Un punto de montaje / identifica el sistema de archivos raíz. lsblk -f añade los tipos de sistemas de archivos, las etiquetas y los UUID. blkid proporciona identificadores y tipos, mientras que fdisk -l muestra los límites de las particiones y el tipo de tabla. Estos comandos de inspección no modifican ninguna partición.
Distingue el tipo de tabla del tipo de sistema de archivos
| Capa | Opciones habituales | Significado |
|---|---|---|
| Tabla de particiones | GPT, MBR/DOS | Describe regiones de la unidad |
| Sistema de archivos | ext4, XFS, Btrfs, FAT32, exFAT, NTFS | Organiza archivos dentro de una región |
MBR permite cuatro particiones primarias; una puede ser una partición extendida que contenga particiones lógicas numeradas a partir de 5. Con sectores de 512 bytes, su límite de direccionamiento es 2 TiB. GPT admite unidades más grandes y suele proporcionar 128 entradas de partición. Los sistemas UEFI arrancan mediante una partición del sistema EFI, formateada con FAT y a menudo montada en /boot/efi.
Debian y Ubuntu suelen utilizar ext4; RHEL utiliza XFS por defecto; Fedora Workstation y openSUSE suelen utilizar Btrfs. FAT32 aparece como vfat en Linux y no puede contener un archivo individual de 4 GiB o más. exFAT es adecuado para archivos más grandes en medios extraíbles; NTFS es habitual en discos de Windows. La existencia de una partición no significa por sí sola que ya tenga un sistema de archivos.
Interpreta las unidades de tamaño
lsblk, df -h y du -h utilizan unidades binarias: G representa un GiB, o 1 073 741 824 bytes. Los fabricantes de unidades utilizan GB decimales, cada uno de 1 000 000 000 bytes. Así, una unidad que contiene 500 107 862 016 bytes aparece como 465,8G; 32 000 000 000 bytes equivalen aproximadamente a 29,8G. lsblk -b muestra el número exacto de bytes. Esta diferencia en las unidades no significa que se haya perdido capacidad.
Preparar una unidad nueva vacía requiere un paso de particionado seguido de la creación de un sistema de archivos, por ejemplo con sudo mkfs.ext4 /dev/sdb1. Antes de cambiar particiones o formatear, verifica el destino por su tamaño, modelo y condición de extraíble, confirma que sus datos pueden destruirse y desmóntalo. fdisk -l solo lista; fdisk en modo interactivo escribe los cambios cuando utilizas w.
Puntos clave
- Disco, tabla de particiones y sistema de archivos describen distintas capas del almacenamiento.
- Los nombres de particiones NVMe y SD insertan
pantes del número de partición. - Utiliza
lsblk,blkidyfdisk -lpara inspeccionar antes de hacer cambios. - GPT y MBR describen tablas de particiones; ext4 y XFS describen sistemas de archivos.
- La
Gbinaria y el GB decimal miden los mismos bytes con unidades de distinto tamaño. - FAT32 no puede contener un archivo individual de 4 GiB o más.
2.2 Monta un sistema de archivos y desmóntalo correctamente
El montaje incorpora un sistema de archivos a un directorio, su punto de montaje. Se puede acceder a un sistema de archivos montado en /data mediante rutas como /data/report.pdf. El árbol de directorios sigue siendo continuo aunque varios discos proporcionen su contenido.
Monta e inspecciona
Supón que lsblk -f identifica /dev/sdb1 como el sistema de archivos que quieres leer. Crea un directorio de montaje vacío y después móntalo:
sudo mkdir -p /mnt/usb
sudo mount /dev/sdb1 /mnt/usb
findmnt /mnt/usb
mount suele detectar el tipo. Indica -t ext4 cuando necesites especificarlo explícitamente. findmnt muestra TARGET, SOURCE, FSTYPE y OPTIONS. mount sin argumentos lista los montajes, incluidos los sistemas de archivos virtuales; df -h informa de su espacio y lsblk muestra los puntos de montaje junto a los dispositivos de bloques.
Montar sobre un directorio oculta su contenido anterior. Si /mnt/usb/local.txt estaba allí antes, desaparece de la vista mientras está montado el sistema de archivos USB y reaparece al desmontarlo. No se ha copiado a la unidad ni se ha borrado.
Elige las opciones para la tarea
Utiliza -o para una lista de opciones separadas por comas. sudo mount -o ro /dev/sdb1 /mnt/usb impide las escrituras normales de archivos a través de este montaje. Es útil para inspeccionar, aunque el propio montaje aún puede escribir en el dispositivo. rw permite las escrituras.
noexec impide la ejecución directa de archivos en el montaje. No impide que un intérprete lea un guion: bash /mnt/usb/script.sh todavía puede ejecutar un guion legible. Trátalo como una restricción de ejecución directa, no como una barrera completa para ejecutar su contenido.
FAT y exFAT no almacenan propietarios Unix. Cuando el superusuario monta una unidad de este tipo, indica el propietario deseado mediante opciones de montaje. Comprueba ambos identificadores con id -u e id -g. Si ambos imprimen 1000:
sudo mount -o uid=1000,gid=1000 /dev/sdb1 /mnt/usb
cp report.pdf /mnt/usb/
Esto asigna la propiedad que Linux muestra para el montaje. Cambiar permisos con chmod no es el mismo mecanismo de propiedad que en ext4.
Termina la tarea
Sal del sistema de archivos y cierra los programas que lo utilizan; después ejecuta:
sudo umount /mnt/usb
El comando se escribe umount. Desmonta el almacenamiento extraíble antes de retirarlo para que las escrituras almacenadas temporalmente lleguen a la unidad. En un escritorio, la acción Expulsar del gestor de archivos realiza esta tarea.
Si el comando informa «target is busy», un proceso sigue utilizando el sistema de archivos. Basta con que un intérprete de comandos tenga /mnt/usb como directorio actual. Ejecuta cd en ese intérprete, cierra los archivos abiertos y vuelve a intentarlo. fuser -vm /mnt/usb o lsof /mnt/usb ayudan a identificar qué procesos utilizan el sistema de archivos.
Los sistemas de escritorio suelen gestionar los montajes automáticos de medios extraíbles mediante udisks2, bajo /media/USER/LABEL o, en Fedora, /run/media/USER/LABEL. Los servidores suelen depender de montajes configurados para el arranque o de comandos manuales. Los montajes también pueden mostrar un archivo de imagen, memoria o un recurso compartido de red. Por ejemplo, después de crear /mnt/iso, sudo mount -o loop,ro ubuntu.iso /mnt/iso presenta una imagen ISO como un directorio.
Puntos clave
- Un punto de montaje muestra el sistema de archivos incorporado y oculta temporalmente el contenido anterior del directorio.
- Inspecciona los montajes efectivos con
findmnt; utiliza-opara seleccionar opciones. noexecbloquea la ejecución directa; los intérpretes aún pueden leer guiones.- La propiedad en FAT y exFAT se establece mediante opciones de montaje como
uidygid. - Cierra los procesos que utilizan un sistema de archivos y ejecuta
umountantes de retirar su unidad.
2.3 Haz que un montaje vuelva después de reiniciar
Un montaje manual no crea una regla de arranque. /etc/fstab proporciona esas reglas, con una entrada por sistema de archivos o área de intercambio. En una máquina con systemd, un generador convierte las entradas de sistemas de archivos en unidades de montaje y las entradas de espacio de intercambio en unidades de intercambio.
Interpreta los seis campos
Un sistema de archivos de datos ext4 puede utilizar esta entrada:
UUID=3f2c9a1e-7b4d-4e8a-9c61-2d5f0b8e4a17 /data ext4 defaults,nofail 0 2
Los espacios o tabulaciones separan los seis campos. Las comas unen las opciones dentro de un campo; no pongas espacios dentro de esa lista.
- Origen: un UUID, una etiqueta o una ruta de dispositivo.
- Punto de montaje: aquí,
/data. - Tipo: aquí,
ext4. - Opciones: aquí,
defaults,nofail. - Indicador dump: normalmente
0, que desactiva el indicador de la antigua herramienta de copia de seguridad dump. - Orden de comprobación del sistema de archivos:
1para la raíz,2para otros sistemas de archivos que necesitan comprobación,0para omitirla; XFS y Btrfs normalmente utilizan0.
Una línea que comienza por # es un comentario. Una entrada de espacio de intercambio utiliza none como campo de punto de montaje, el tipo swap y suele terminar en 0 0.
Elige un identificador duradero
Busca el UUID del sistema de archivos con lsblk -f o sudo blkid. A diferencia de un nombre como /dev/sdb1, el UUID permanece con el sistema de archivos cuando cambia el orden de detección de las unidades. Al volver a formatear se crea un sistema de archivos nuevo con un UUID nuevo, así que actualiza después su entrada en fstab.
defaults incluye acceso de lectura y escritura y montaje automático. nofail permite que el arranque continúe si falta una unidad opcional. noauto omite el montaje automático; la entrada aún puede permitir sudo mount /data más adelante. ro significa solo lectura y noexec bloquea la ejecución directa. user permite a un usuario normal montar la entrada.
Añade y prueba una entrada
Para una partición de datos ext4 ya preparada:
sudo cp /etc/fstab /etc/fstab.bak
lsblk -f
sudo mkdir -p /data
Edita /etc/fstab para añadir la línea con el UUID que se haya mostrado realmente. Después, prueba antes de reiniciar:
sudo findmnt --verify
sudo systemctl daemon-reload
sudo mount -a
findmnt /data
findmnt --verify comprueba la tabla, incluidos los problemas con sus campos y orígenes. La recarga hace que systemd vuelva a leer la configuración modificada. mount -a monta las entradas correspondientes que aún no están montadas. Después, findmnt /data confirma el origen, el tipo y las opciones actuales. Que mount -a termine correctamente no significa que se haya probado una entrada noauto; móntala explícitamente.
La raíz de un sistema de archivos ext4 recién montado puede pertenecer al superusuario. Una vez montado el sistema de archivos correcto, sudo chown lee:lee /data concede a Lee la propiedad de ese directorio. Hacerlo antes del montaje cambiaría en su lugar el directorio subyacente del punto de montaje.
Un UUID incorrecto, un tipo incorrecto o un dispositivo obligatorio no disponible pueden interrumpir el arranque y dejar el sistema en modo de emergencia. Corrige esos errores mientras el sistema está en funcionamiento. systemctl list-units --type=mount muestra las unidades de montaje activas resultantes.
Puntos clave
- Las entradas de fstab tienen seis campos; las opciones permanecen juntas en un campo separado por comas.
- El UUID de un sistema de archivos permanece estable cuando cambia el nombre del dispositivo, pero cambia al volver a formatear.
nofailpermite que falte una unidad opcional;noautoomite el montaje automático.- Haz una copia de seguridad, verifica, recarga systemd, monta e inspecciona antes de reiniciar.
- Cambia la propiedad después de montar para que el cambio afecte al sistema de archivos incorporado.
3Mide el uso del disco y libera espacio
Un mensaje sobre un dispositivo lleno puede significar que se han agotado los bloques de almacenamiento o que el sistema de archivos no tiene registros de archivo libres. Empieza comprobando el sistema de archivos que contiene la ruta afectada y después localiza los archivos responsables. Parte del espacio permanece asignado incluso después de que desaparezca el nombre de un archivo. Interpretar las mediciones conjuntamente te permite elegir un método de limpieza que libere el recurso necesario sin dañar el software instalado ni los datos de las aplicaciones.
3.1 Comprueba tanto el espacio libre como los inodos libres
df informa sobre el espacio de los sistemas de archivos montados. Responde a «¿Cuánto espacio está ocupado en el sistema de archivos que contiene esta ruta?». No suma los propios archivos de un directorio. Esta diferencia permite identificar el almacenamiento afectado antes de buscar su contenido más grande.
Interpreta un informe de espacio
Utiliza df -h /var/log para inspeccionar el sistema de archivos que contiene el directorio de registros. Un informe podría mostrar:
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 98G 61G 32G 66% /
/dev/vdb1 916G 210G 660G 25% /data
Aquí, los registros bajo /var/log utilizan el sistema de archivos raíz, salvo que haya otro sistema de archivos montado allí. El espacio libre del sistema de archivos /data no puede ayudar a una escritura en /var/log solo porque ambos pertenezcan a un mismo equipo.
Las columnas describen el tamaño del sistema de archivos, el espacio utilizado, el espacio disponible para usuarios normales, el porcentaje de uso y el punto de montaje. GNU df calcula Use% dividiendo Used entre la suma de Used y Avail, y redondeando hacia arriba. En el ejemplo de la raíz, 61 dividido entre 93 es aproximadamente 65,6 %, que se muestra como 66 %. Las propias cifras en formato legible están redondeadas.
Size puede superar Used + Avail. Un sistema de archivos ext4 normalmente reserva el 5 % de sus bloques para el superusuario, lo que ayuda a los servicios esenciales a seguir funcionando cuando los usuarios llenan el resto. El cinco por ciento de 98G es aproximadamente 4,9G. Esos bloques reservados sin usar se excluyen de Avail para usuarios normales; no son datos de archivos incluidos en Used. La reserva puede ajustarse con tune2fs -m, por ejemplo al 1 % para un sistema de archivos de datos grande. Los metadatos también utilizan espacio.
Elige una vista útil
df -h utiliza unidades binarias K, M y G. df -H utiliza potencias decimales de 1000. df sin opciones normalmente informa en bloques de 1024 bytes, y df -T añade el tipo de sistema de archivos. Para reducir las entradas de sistemas de archivos en memoria:
df -h -x tmpfs -x devtmpfs
Una entrada tmpfs es almacenamiento respaldado por memoria, mientras que efivarfs muestra variables de firmware. free mide la RAM y el espacio de intercambio, por lo que no puede sustituir a df para conocer la capacidad del disco. lsblk indica el tamaño de un disco o partición, no cuánto espacio libre tiene su sistema de archivos.
Comprueba también los registros de archivo
Un inodo es un registro del sistema de archivos para un archivo o directorio. Los nombres unidos mediante enlaces duros comparten un registro. Un sistema de archivos ext4 tiene una cantidad fija de inodos creados junto con él. Una gran cantidad de archivos diminutos puede consumirlos y dejar sin utilizar gigabytes de espacio para datos.
df -i /var/log
Interpreta IUsed, IFree e IUse%. Si IFree es cero, la creación de un archivo nuevo puede fallar con «No space left on device» incluso cuando df -h muestra espacio libre. Eliminar unos pocos archivos grandes libera bloques, pero muy pocos inodos; limpiar muchos archivos de sesión o caché que ya no se necesitan resuelve el agotamiento de inodos.
Cuando se llena el almacenamiento raíz, las bases de datos pueden detenerse, los registros fallar, las actualizaciones interrumpirse y los inicios de sesión fallar. Comprueba pronto tanto df -h PATH como df -i PATH. Los informes identifican qué recurso está agotado y qué sistema de archivos montado necesita atención.
Puntos clave
df PATHinforma sobre el sistema de archivos que contiene la ruta, no sobre el total del directorio.Use%utiliza Used dividido entre la suma de Used y Avail, redondeado hacia arriba.- Los bloques reservados de ext4 sin usar reducen el espacio disponible para usuarios normales sin convertirse en datos de archivos utilizados.
- Comprueba
df -icuando falle la creación de archivos pese a haber gigabytes libres.
3.2 Busca archivos que crecen y recupera espacio de forma segura
Una vez que df identifica el sistema de archivos lleno, utiliza du para encontrar los directorios que lo utilizan. Inspecciona antes de eliminar: el estado de las aplicaciones y los archivos de caché reemplazables pueden ser grandes por razones muy diferentes.
Desciende por el árbol de directorios
sudo du -h -d 1 /var | sort -h
sudo du -sh /var/log
-d 1 proporciona totales un nivel de directorio más abajo y -s imprime un único total resumido. sort -h entiende tamaños como 900M y 2.1G. Utiliza sudo para incluir los directorios que tu cuenta normal no puede leer. Si /var/log es grande, repite allí el primer comando para localizar el subdirectorio que está creciendo.
du -sh * omite los nombres que comienzan por un punto porque el * del intérprete de comandos no coincide con ellos. du -h -d 1 ~ | sort -h incluye directorios ocultos, como .cache y .local, al inspeccionar un directorio personal.
Para localizar archivos individuales grandes en el sistema de archivos raíz:
sudo find / -xdev -type f -size +500M 2>/dev/null
-xdev permanece en el sistema de archivos inicial; -type f selecciona archivos ordinarios; M aquí significa MiB. ls -lhS ordena los archivos de un directorio de mayor a menor.
Comprende los distintos totales
ls -l informa de la longitud lógica de un archivo. du normalmente cuenta el almacenamiento asignado. Un archivo que contiene «hi» y un salto de línea tiene 3 bytes de longitud, pero puede ocupar un bloque de 4 KiB, mostrado como 4.0K. Una imagen dispersa de disco virtual puede tener una gran longitud lógica y consumir mucho menos espacio real. du --apparent-size informa de las longitudes lógicas.
Un uso mayor en df que en un análisis de directorios también puede deberse a directorios ilegibles, archivos ocultos bajo puntos de montaje o archivos eliminados que siguen abiertos. Eliminar un nombre no libera los datos mientras un proceso mantenga abierto el archivo.
Por ejemplo, eliminar un registro activo de aplicación de 20G puede dejar df sin cambios. Inspecciona esos archivos con sudo lsof +L1. Reiniciar el servicio propietario libera el archivo que mantiene abierto, lo que permite liberar el almacenamiento. Para vaciar un registro activo que sabes que se puede descartar sin dejar un archivo abierto sin enlace, sudo truncate -s 0 /var/log/app/app.log mantiene el nombre y el archivo en su lugar. Esto borra su contenido registrado.
Utiliza la herramienta responsable de los datos para limpiarlos
Las herramientas de paquetes saben qué archivos descargados pueden reemplazarse. Utiliza sudo apt clean en Debian o Ubuntu, o sudo dnf clean all en Fedora o RHEL. Revisa los cambios propuestos por apt autoremove o dnf autoremove antes de eliminar paquetes que no se utilizan. Limpia tus propias descargas y papelera que ya no necesites. No elimines manualmente archivos de /usr, /boot o /var/lib para hacer espacio.
Cuando crezca el registro de systemd, sudo journalctl --vacuum-size=1G elimina archivos de registro archivados antiguos hasta que su total quede dentro del límite. Los archivos activos pueden hacer que el uso total del registro supere ese tamaño. Para mantenerlo controlado, establece SystemMaxUse=1G en /etc/systemd/journald.conf y reinicia systemd-journald.
Después de la limpieza, vuelve a ejecutar df -h PATH o df -i PATH para confirmar que el recurso que causó el fallo vuelve a estar disponible. Si el registro de systemd u otro registro crece repetidamente, inspecciona los mensajes que causan el crecimiento y sus ajustes de conservación.
Puntos clave
- Utiliza
dupara acotar el crecimiento de directorios yfindpara localizar archivos ordinarios grandes. - Un directorio como argumento incluye entradas ocultas; el patrón
*del intérprete las omite. - La longitud lógica, los bloques asignados y los totales del sistema de archivos miden cosas diferentes.
- Los archivos eliminados que siguen abiertos pueden continuar utilizando espacio; identifícalos con
lsof +L1. - Utiliza las herramientas de paquetes y del registro para sus datos; la depuración del registro afecta a los archivos archivados.
- Vuelve a comprobar el recurso agotado después de limpiar y aborda el crecimiento repetido.
4Configura y comprueba los ajustes de red con ip
Una conexión funcional necesita una interfaz activa, una dirección y una ruta hacia el destino. Un servicio también necesita escuchar donde los clientes puedan acceder a él. Linux muestra estas piezas por separado mediante ip y ss, de modo que puedes inspeccionar cada una antes de cambiar nada. Consulta el estado actual, distingue un comando temporal de la configuración guardada y prueba desde el enlace local hacia el exterior para acotar un problema de conexión sin adivinar su causa.
4.1 Comprende las direcciones, las redes y los puertos de servicio
Una interfaz de red es un punto de conexión a través del cual el núcleo envía tráfico. Puede ser Ethernet, Wi-Fi, de bucle de retorno o una conexión virtual como una VPN. Nombres como enp0s3, eno1 y wlp2s0 describen adaptadores físicos; lo es el bucle de retorno. Algunos sistemas virtuales y en la nube utilizan eth0.
Interpreta IPv4 y su prefijo
Las interfaces Ethernet y Wi-Fi tienen una dirección MAC de 48 bits, escrita como seis pares hexadecimales, que se utiliza para la entrega en la red local. Una dirección IP identifica un equipo para comunicarse a través de redes. Una interfaz puede tener varias direcciones IP.
IPv4 tiene 32 bits, escritos como cuatro números de 0 a 255. En 192.168.1.50/24, los primeros 24 bits identifican la red y quedan ocho bits para direcciones dentro de ella. La red es 192.168.1.0/24, con la máscara de red 255.255.255.0.
Esos ocho bits proporcionan 256 direcciones. La primera identifica la red y la última, 192.168.1.255, es su dirección de difusión, lo que deja 254 direcciones para equipos. Una /26 tiene seis bits para equipos: 64 direcciones en total y 62 direcciones ordinarias para equipos. /24 cuenta bits de red, no máquinas.
Los rangos privados son 10.0.0.0/8, 172.16.0.0/12 y 192.168.0.0/16. No se enrutan públicamente; un router doméstico suele utilizar NAT para traducir el tráfico privado a su dirección pública. 127.0.0.1 es el bucle de retorno, que representa la máquina que ejecuta el comando. Una dirección de enlace local 169.254.x.x suele apuntar a un fallo de configuración de DHCP. La documentación utiliza 192.0.2.0/24, 198.51.100.0/24 y 203.0.113.0/24.
Identifica IPv6
IPv6 tiene 128 bits en ocho grupos hexadecimales. Elimina los ceros iniciales dentro de un grupo y sustituye una secuencia de grupos de ceros por ::: 2001:0db8:0000:0000:0000:0000:0000:0042 se convierte en 2001:db8::42. Utiliza :: solo una vez en una dirección. ::1 es el bucle de retorno; las direcciones fe80: son de enlace local en enlaces Ethernet y Wi-Fi con IPv6. Las redes IPv6 locales suelen utilizar /64 y un equipo suele tener varias direcciones.
Llega a redes y servicios
Un equipo envía tráfico directamente a destinos de una red conectada directamente. Su puerta de enlace predeterminada gestiona los destinos para los que no hay una ruta más específica. La puerta de enlace es un router accesible en el enlace local. Sin una ruta que coincida ni una ruta predeterminada, no se puede llegar a otras redes.
Un puerto identifica un servicio en una dirección: SSH utiliza TCP 22, DNS utiliza UDP y TCP 53, HTTP utiliza TCP 80 y HTTPS suele utilizar TCP 443. TCP proporciona conexiones fiables; UDP transporta mensajes independientes. Un extremo de socket combina una dirección y un puerto, como 192.168.1.50:22.
Obtén o establece la configuración
DHCP para IPv4 asigna temporalmente una dirección, un prefijo, una puerta de enlace y ajustes DNS. La configuración estática establece valores fijos, habitualmente para servidores. SLAAC de IPv6 forma una dirección a partir de la información anunciada por el router. DHCPv6 puede proporcionar direcciones IPv6 y servidores DNS; la información sobre el router predeterminado de IPv6 procede de anuncios de router. Una dirección DHCPv6 por sí sola no proporciona esa ruta.
Puntos clave
- Una interfaz puede tener varias direcciones; las direcciones MAC e IP cumplen funciones diferentes.
- Un prefijo cuenta bits de red: una
/24IPv4 ordinaria tiene 254 direcciones utilizables para equipos. - El bucle de retorno siempre hace referencia a la máquina que ejecuta el comando.
- La ruta predeterminada gestiona los destinos que no tienen una ruta más específica.
- Los puertos identifican servicios; las direcciones IP identifican equipos e interfaces.
- IPv6 conoce los routers predeterminados mediante anuncios de router.
4.2 Interpreta la salida de interfaces, rutas y sockets en escucha
El comando ip muestra el estado actual de la red. Sus objetos describen distintas partes: addr para direcciones, link para el estado de las interfaces, route para el enrutamiento y neigh para los vecinos locales. ss muestra sockets y sus servicios en escucha.
Inspecciona una interfaz
ip -br addr
ip addr show dev enp0s3
ip link show
La vista breve podría mostrar enp0s3 UP 192.168.1.50/24 fe80::a00:27ff:fe3a:5c71/64. La interfaz está activa, con una dirección IPv4 y una dirección IPv6 de enlace local. La salida más larga separa estos campos:
link/ether 08:00:27:3a:5c:71 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.50/24 brd 192.168.1.255 scope global dynamic enp0s3
inet6 fe80::a00:27ff:fe3a:5c71/64 scope link
link/ether proporciona la dirección MAC. inet introduce IPv4 e inet6 introduce IPv6. El valor brd de IPv4 es la dirección de difusión, no la puerta de enlace. dynamic indica una dirección asignada dinámicamente y valid_lft muestra cuánto tiempo sigue siendo válida. UP es el estado administrativo; LOWER_UP indica un enlace de nivel inferior operativo.
ip -4 addr e ip -6 addr seleccionan una familia de direcciones. ip link omite las direcciones IP. hostname -I imprime las direcciones configuradas de la máquina. No selecciones 127.0.0.1 cuando proporciones a otro equipo una dirección para este sistema.
Interpreta la ruta por separado
default via 192.168.1.1 dev enp0s3 proto dhcp src 192.168.1.50 metric 100
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.50 metric 100
ip route show produce este tipo de salida. Se puede llegar directamente a la red local 192.168.1.0/24 a través de enp0s3. Los demás destinos utilizan la puerta de enlace 192.168.1.1 mediante la ruta predeterminada. proto dhcp indica de dónde procede esa ruta; src proporciona la dirección de origen preferida.
Utiliza ip route get 203.0.113.10 para inspeccionar la ruta seleccionada hacia un destino. ip -6 route show lista las rutas IPv6. ip neigh muestra las correspondencias aprendidas entre IP y MAC locales; una entrada FAILED para la puerta de enlace significa que la resolución de vecinos no recibió la respuesta local necesaria.
Comprueba dónde escucha un servicio
sudo ss -tulnp
Las opciones indican TCP, UDP, escucha, direcciones numéricas y detalles del proceso. Lee la columna dirección local. 0.0.0.0:22 acepta tráfico en todas las direcciones IPv4 locales, mientras que 127.0.0.1:5432 solo acepta tráfico local. [::]:80 indica todas las direcciones IPv6. Estar en escucha es solo un requisito; la conectividad de red y las reglas de acceso siguen siendo importantes. ss -tn lista las conexiones TCP actuales sin seleccionar solo las que están en escucha.
Las guías antiguas utilizan ifconfig, route, arp y netstat. Sus equivalentes actuales son ip addr/ip link, ip route, ip neigh y ss. Si falta ifconfig, falta una herramienta; no significa que la red haya fallado. Se aceptan abreviaturas como ip a, ip r e ip l.
Puntos clave
- Utiliza objetos
ipseparados para direcciones, enlaces, rutas y vecinos. brdes una dirección de difusión; busca la puerta de enlace enip route.ip route get ADDRESSmuestra la ruta seleccionada para ese destino.- Un servicio en escucha vinculado al bucle de retorno no puede aceptar conexiones dirigidas a la interfaz de red del equipo.
ss -tulnprelaciona los puertos en escucha con los procesos a los que pertenecen.
4.3 Cambia ajustes y acota un fallo de conexión
Un comando temporal y un perfil de red guardado cumplen propósitos diferentes. ip cambia inmediatamente el estado del núcleo en funcionamiento; el gestor de red de la distribución restaura los ajustes guardados al arrancar y puede sustituir antes los cambios temporales.
Realiza un cambio temporal
En una interfaz de prácticas llamada enp0s8:
sudo ip link set dev enp0s8 up
sudo ip addr add 192.168.50.10/24 dev enp0s8
sudo ip route add default via 192.168.50.1
Incluye el prefijo. Sin /24, una dirección IPv4 añadida recibe /32, por lo que falta la ruta esperada a la red local /24. ip addr del elimina la dirección indicada, ip route del default elimina la ruta predeterminada e ip link set ... down desactiva la interfaz.
Cambiar la interfaz que transporta una sesión SSH remota puede desconectarte. Utiliza acceso a la consola o una herramienta de configuración con reversión para esa tarea.
Guarda los ajustes con el gestor activo
Fedora, RHEL y muchos equipos de escritorio utilizan NetworkManager. Busca el perfil con nmcli device status y después modifica su nombre de conexión:
sudo nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.1.60/24 ipv4.gateway 192.168.1.1 ipv4.dns 192.168.1.1
sudo nmcli connection up "Wired connection 1"
Establecer ipv4.method auto devuelve el perfil a DHCP. Ubuntu suele utilizar archivos YAML de netplan bajo /etc/netplan/; otros sistemas utilizan archivos .network de systemd-networkd o /etc/network/interfaces de ifupdown en Debian. Los sistemas en la nube suelen depender de DHCP y cloud-init.
Una configuración estática de netplan puede tener este contenido:
network:
version: 2
ethernets:
enp0s3:
dhcp4: false
addresses: [192.168.1.60/24]
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [192.168.1.1]
Utiliza espacios para la sangría. sudo netplan try aplica la configuración y ofrece un plazo de 120 segundos para confirmarla antes de revertirla. sudo netplan apply la aplica directamente.
Prueba una capa a la vez
Comienza con ip -br link, después ip -br addr y luego ip route. La ausencia de un enlace activo, de una dirección adecuada o de una ruta predeterminada son fallos diferentes. Prueba la puerta de enlace con ping -c 3 192.168.1.1, después una dirección externa y luego un nombre. La cantidad indicada con -c hace que ping en Linux se detenga después de un número fijo de solicitudes; de lo contrario, utiliza Ctrl+C.
Una respuesta indica el tiempo de ida y vuelta, mientras que el resumen indica la pérdida de paquetes. La ausencia de respuesta al eco puede reflejar un filtrado de ICMP, un equipo apagado o una ruta interrumpida. Si una dirección funciona pero un nombre produce «Temporary failure in name resolution», inspecciona la búsqueda de nombres. Si ping imprime la dirección resuelta y después no recibe respuestas, la búsqueda ya ha tenido éxito.
tracepath o traceroute muestra los routers que responden a lo largo de la ruta. Prueba también la aplicación real: curl -I https://example.com solicita cabeceras HTTP. Si una solicitud web local funciona pero las remotas fallan, inspecciona sudo ss -tlnp. Un servicio vinculado a 127.0.0.1:80 necesita una dirección de escucha accesible desde la red para su uso remoto, además de las reglas de acceso a la red necesarias.
Puntos clave
- Los cambios con
ipson inmediatos y temporales; guarda los ajustes permanentes mediante el gestor de red activo. - Incluye un prefijo al añadir una dirección.
- Prueba en orden el enlace, la dirección, la ruta, la puerta de enlace, la dirección externa, el nombre y el servicio.
- Un error de resolución de nombres es distinto de un nombre resuelto que no recibe respuestas de ping.
- Un fallo de ping por sí solo no identifica qué capa de la conexión falló.
- Utiliza acceso a la consola o reversión al cambiar los ajustes de una conexión remota.
5Resuelve nombres de equipo mediante DNS y el archivo hosts
Puede ser posible acceder a un servidor por su dirección mientras falla su nombre, o un equipo puede dirigir un nombre conocido a una dirección desactualizada. La resolución de nombres es una parte independiente de la conexión, con varias fuentes y cachés posibles. Aprende cómo se relacionan los nombres locales, los registros DNS y los ajustes del mecanismo de resolución y después elige una prueba que siga la misma ruta de búsqueda que la aplicación. Comparar esas rutas ayuda a localizar una entrada desactualizada o un servicio DNS que falla.
5.1 Sigue la resolución de un nombre de equipo mediante archivos locales y DNS
Los nombres permiten utilizar web1.example.com en lugar de recordar una dirección. DNS, el sistema de nombres de dominio, almacena registros en una jerarquía distribuida de dominios. Un nombre corto de equipo como web1 identifica una máquina; su nombre de dominio completo la identifica dentro de toda la jerarquía.
Identifica qué responde cada registro
| Registro | Significado |
|---|---|
| A | Dirección IPv4 de un nombre |
| AAAA | Dirección IPv6 de un nombre |
| CNAME | Alias que apunta a otro nombre |
| MX | Servidor de correo de un dominio |
| PTR | Nombre obtenido a partir de una dirección mediante búsqueda inversa |
Los servidores DNS utilizan el puerto 53 tanto por UDP como por TCP. El tiempo de vida (TTL) de un registro indica a las cachés durante cuántos segundos pueden conservarlo. Un TTL de 3600 es una hora. Cambiar un registro no elimina al instante la respuesta anterior de todas las cachés.
El mecanismo de resolución de nombres es la parte cliente de la búsqueda: código de biblioteca y, a menudo, un servicio como systemd-resolved. Sus servidores de nombres configurados suelen ser resolvedores recursivos gestionados por un router, un proveedor, una organización o un servicio público. Buscan respuestas y las almacenan en caché para los clientes.
Comprueba el orden de las fuentes del sistema
Las aplicaciones de Linux suelen utilizar las fuentes de búsqueda configuradas en la línea hosts: de /etc/nsswitch.conf. Un ejemplo sencillo es:
hosts: files dns
Aquí files significa /etc/hosts, que se comprueba antes que DNS. Otras instalaciones incluyen fuentes como resolve o mdns4_minimal. Consulta la línea real al comparar dos sistemas.
/etc/hosts contiene una dirección seguida de su nombre principal y alias opcionales:
127.0.0.1 localhost
::1 localhost ip6-localhost
192.168.1.20 nas.home.arpa nas
Con el orden de búsqueda mostrado, nas se resuelve como 192.168.1.20 en este equipo. home.arpa está reservado para redes domésticas. Los cambios en el archivo hosts se aplican sin reiniciar, pero solo afectan a la máquina cuyo archivo editas. El archivo no admite comodines ni números de puerto: 192.168.1.20:8080 nas no es válido.
Utiliza entradas locales de forma deliberada
Una entrada del archivo hosts puede dar nombre a un dispositivo de una red pequeña o dirigir tu equipo a un servidor web de sustitución antes de que cambie el DNS público. Asignar un nombre a 0.0.0.0 también se utiliza para bloquearlo localmente. Cada uso cambia la búsqueda de direcciones, no el puerto ni la configuración del servicio.
Supón que un sitio web se traslada y funciona en otras máquinas, pero no en la tuya. Una entrada antigua de /etc/hosts puede seguir enviando tu navegador a su dirección anterior aunque DNS sea correcto. Compara la entrada local con el destino actual previsto antes de cambiar rutas de red.
El nombre de la propia máquina es un ajuste independiente. hostname lo imprime; sudo hostnamectl set-hostname web1 lo cambia. /etc/hostname almacena el nombre configurado. Debian y Ubuntu también suelen asignarlo en /etc/hosts, por ejemplo 127.0.1.1 web1. Después de cambiar el nombre, actualiza también esa asignación. Una discrepancia puede causar el aviso «unable to resolve host web1» al utilizar sudo. Cambiar el nombre de tu equipo no crea un registro DNS público para él.
Puntos clave
- Los tipos de registros DNS responden a preguntas diferentes; A corresponde a IPv4 y AAAA a IPv6.
- El TTL controla la duración en caché, por lo que las respuestas antiguas pueden permanecer después de un cambio.
- La línea
hosts:densswitch.confcontrola las fuentes de búsqueda del sistema. - Una entrada del archivo hosts es local a un equipo y no contiene un número de puerto.
- Mantén coherentes el nombre de equipo configurado y su asignación local en el archivo hosts.
5.2 Compara los ajustes del mecanismo de resolución con los resultados reales de búsqueda
Utiliza una prueba que se ajuste a la pregunta que haces. Una consulta directa comprueba la respuesta de un servidor DNS. Una búsqueda del sistema comprueba las fuentes que suelen utilizar las aplicaciones de Linux, que pueden incluir archivos locales además de DNS.
Consulta la configuración del mecanismo de resolución
/etc/resolv.conf puede contener nameserver 192.168.1.1 y search example.com. La línea nameserver identifica un servidor DNS; el sufijo de búsqueda permite probar un nombre corto como web1 como web1.example.com. El mecanismo de resolución tradicional utiliza hasta tres servidores de nombres configurados, normalmente en orden. Las opciones pueden ajustar el comportamiento de los tiempos de espera y los reintentos.
Este archivo suele ser generado por un servicio de red. Un comentario o un enlace simbólico revela quién lo gestiona. Los cambios realizados directamente pueden desaparecer en la siguiente actualización de red, así que cambia los valores DNS guardados mediante NetworkManager, netplan o el gestor activo.
En un sistema que utiliza systemd-resolved, el archivo suele enlazar a /run/systemd/resolve/stub-resolv.conf e indicar 127.0.0.53. Es un resolvedor DNS local intermediario, no un servidor externo sustituido accidentalmente por el bucle de retorno. Reenvía consultas y almacena respuestas en caché. Utiliza:
resolvectl status
resolvectl query example.com
resolvectl flush-caches
El primero muestra los servidores DNS reales de origen, incluidos los ajustes por interfaz. Vacía la caché cuando necesites descartar resultados almacenados al investigar un cambio.
Elige la herramienta de búsqueda
host web1.example.com consulta un nombre en DNS. host 203.0.113.10 realiza una búsqueda inversa; host -t MX example.com solicita registros de correo. dig example.com A +short imprime una respuesta IPv4 compacta y dig @1.1.1.1 example.com A selecciona explícitamente un servidor DNS. nslookup es una herramienta más antigua de consulta DNS. Las herramientas suelen distribuirse en los paquetes dnsutils o bind-utils.
getent hosts nas sigue el orden de búsqueda del sistema establecido en /etc/nsswitch.conf, como hace la mayoría de las aplicaciones. dig, host y nslookup no leen por sí mismos /etc/hosts. Sin embargo, consultar el resolvedor intermediario de systemd-resolved puede devolver una respuesta que el servicio obtiene de ese archivo. Selecciona explícitamente un servidor de origen conocido cuando quieras comparar sus datos DNS con la búsqueda local.
Interpreta el resultado antes de cambiar ajustes
NXDOMAIN significa que el servidor DNS consultado respondió que el nombre no existe. SERVFAIL significa que el servidor no pudo completar la búsqueda. Un tiempo de espera agotado significa que no llegó una respuesta utilizable antes del límite. «Name or service not known» de un programa es un error de búsqueda del sistema, no un código de respuesta DNS por sí mismo.
Supón que ping a una dirección externa funciona, pero la búsqueda de example.com informa de un fallo temporal. Inspecciona el mecanismo de resolución configurado y compara una consulta directa a este con una consulta a otro resolvedor conocido. Una respuesta válida del segundo servidor acota el problema hacia el servidor configurado, la ruta hasta él o los ajustes del mecanismo de resolución local. Si ambos fallan, distingue las respuestas de error reales de los tiempos de espera agotados antes de culpar a un cortafuegos. El tráfico DNS y el ping ICMP son distintos, aunque utilicen la misma red.
Puntos clave
- Los ajustes generados de
resolv.confdeben cambiarse mediante su gestor de red. 127.0.0.53suele indicar el resolvedor local intermediario de systemd-resolved;resolvectl statusrevela los servidores de origen.- Utiliza
getentpara la ruta de búsqueda del sistema ydig @SERVERpara consultar un servidor DNS elegido. - Una respuesta de error DNS, un tiempo de espera agotado y un error de búsqueda del sistema aportan indicios diferentes.
6Conéctate de forma segura a sistemas remotos con SSH
SSH te proporciona un intérprete de comandos remoto, una forma de ejecutar comandos individuales y transferencia segura de archivos. Una conexión correcta implica dos comprobaciones de identidad: tu cliente comprueba el servidor y el servidor comprueba tu cuenta. Configura las claves teniendo claras esas funciones y después prueba los ajustes del servidor mientras aún tengas una sesión que funcione. Interpretar los errores de conexión y la configuración efectiva te ayuda a corregir la etapa adecuada sin debilitar la protección que ofrece SSH.
6.1 Conéctate, verifica el servidor y transfiere archivos
SSH, Secure Shell, cifra sesiones remotas y transferencias de archivos. El cliente ssh se conecta a sshd, normalmente en el puerto TCP 22. OpenSSH es la implementación habitual en Linux. Herramientas antiguas como telnet y FTP exponen las contraseñas en texto sin cifrar.
Verifica el servidor y entra en la sesión remota
Conéctate con ssh lee@web1.example.com; omite lee@ para utilizar tu nombre de usuario local. Para otro puerto, utiliza ssh -p 2222 lee@web1.example.com. Comprueba la identidad de la máquina remota antes de ejecutar comandos; exit o Ctrl+D te devuelve al intérprete local.
En el primer contacto, SSH muestra la huella digital de la clave de servidor. Compárala por un medio de confianza con el administrador o proveedor del servidor. El administrador puede imprimirla con ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub. Al aceptarla, la clave se guarda en tu archivo ~/.ssh/known_hosts para comparaciones posteriores.
Un aviso de cambio de clave de servidor significa que la identidad presentada difiere de la guardada. Una reinstalación o una dirección reutilizada pueden explicarlo, pero también un atacante. Verifica primero la nueva huella. Una vez confirmado el cambio, ssh-keygen -R 203.0.113.10 elimina la entrada antigua de esa dirección para que puedas conectarte y registrar la nueva.
Ejecuta un comando sin mantener la sesión abierta
ssh lee@web1.example.com 'df -h /'
El comando se ejecuta remotamente, su salida aparece localmente y la conexión termina. Una tubería local posterior puede procesar esa salida. Los programas que necesitan un terminal, incluido sudo interactivo, pueden utilizar ssh -t, por ejemplo ssh -t lee@web1.example.com sudo systemctl restart nginx.
Elige una herramienta de transferencia
scp report.pdf lee@web1.example.com:/home/lee/ sube un archivo. scp lee@web1.example.com:/home/lee/results.csv . lo descarga en el directorio local actual. Los dos puntos marcan la ruta remota; sin ellos, lee@web1.example.com es un nombre de archivo local. -r copia directorios y -P 2222 selecciona un puerto, con P mayúscula. Las versiones modernas de scp utilizan SFTP internamente.
sftp lee@web1.example.com abre una sesión interactiva. Utiliza get para descargar, put para subir, cd para el directorio remoto, lcd para el local y bye para terminar. Para copias repetidas de directorios, rsync -av site/ lee@web1.example.com:/srv/site/ envía los cambios mediante SSH; rsync debe estar instalado en ambos extremos.
Guarda los datos de conexión que repites en ~/.ssh/config:
Host web1
HostName 203.0.113.10
User lee
Port 2222
IdentityFile ~/.ssh/id_ed25519
Después, ssh web1 y scp notes.txt web1: utilizan esos ajustes.
Identifica la etapa del fallo
«Connection refused» indica un rechazo activo, normalmente porque no hay ningún servicio en escucha en el puerto elegido. Un tiempo de espera agotado significa que no llegó respuesta; las causas posibles incluyen enrutamiento, filtrado o un equipo apagado. «Permission denied (publickey)» significa que la conexión llegó a la autenticación, pero no se aceptó tu cuenta o la clave ofrecida. ssh -v muestra el progreso de la conexión y la autenticación para que puedas investigar la etapa que falló.
Puntos clave
- Verifica la huella digital del servidor antes de confiar en su clave inicial o modificada.
known_hostsrecuerda identidades de servidores, no las claves autorizadas para entrar en tu cuenta.- Los comandos remotos entre comillas se ejecutan en el servidor; las tuberías locales posteriores se ejecutan en tu cliente.
- Los dos puntos marcan una ruta remota de scp; scp utiliza
-Py ssh utiliza-ppara los puertos. - Utiliza sftp de forma interactiva y rsync para transferencias repetidas de archivos modificados.
- Distingue entre rechazo, tiempo de espera agotado y fallo de autenticación antes de diagnosticar el problema.
6.2 Crea un par de claves e instala la clave pública
El inicio de sesión mediante clave demuestra que tu cliente tiene una clave privada correspondiente a una clave pública autorizada. El cliente firma los datos de autenticación; no envía la clave privada al servidor. Por tanto, los dos archivos tienen destinos y necesidades de protección diferentes.
Genera y protege el par
En tu propio equipo:
ssh-keygen -t ed25519 -C "lee@laptop"
Elige una frase de contraseña cuando se solicite. Los archivos predeterminados son ~/.ssh/id_ed25519, la clave privada, y ~/.ssh/id_ed25519.pub, la clave pública. El texto de -C es un comentario identificativo. Ed25519 es el valor predeterminado de ssh-keygen desde OpenSSH 9.5; indicarlo explícitamente aclara el ejemplo. Para un servidor antiguo que requiera RSA, ssh-keygen -t rsa -b 4096 genera una clave RSA de 4096 bits.
Una frase de contraseña cifra el archivo de la clave privada. Protege la clave almacenada si alguien obtiene el archivo; es distinta de la contraseña de la cuenta remota. Las tareas automatizadas a veces utilizan claves sin frase de contraseña, con permisos de cuenta limitados. Mantén la clave privada en el cliente y en secreto.
Un agente SSH mantiene las claves desbloqueadas en memoria para que no tengas que volver a introducir la frase de contraseña en cada conexión. Las sesiones de escritorio suelen iniciar un agente. Añade la clave con ssh-add ~/.ssh/id_ed25519 e introduce su frase de contraseña cuando se solicite.
Autoriza la clave pública en una cuenta
ssh-copy-id lee@web1.example.com
Después de autenticarte en la cuenta de Lee en el servidor, el comando añade una clave pública al final del archivo ~/.ssh/authorized_keys de esa cuenta. Si existen varias claves de cliente, ssh-copy-id -i ~/.ssh/id_ed25519.pub lee@web1.example.com selecciona explícitamente la clave pública. El aprovisionamiento en la nube puede instalarla cuando se crea el servidor.
Cada línea de authorized_keys contiene un tipo de clave, datos codificados de clave pública y normalmente un comentario. Varias claves pueden autorizar dispositivos o personas diferentes. Una clave en el archivo de Lee concede acceso a la cuenta de Lee, no a la del superusuario. Eliminar su línea revoca esa clave allí; después de una filtración, elimina su clave pública de todos los servidores afectados.
Comprueba la propiedad y los permisos
En el servidor, en la cuenta deseada:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Impide que el grupo u otros puedan escribir en el directorio personal. Con las comprobaciones estrictas normales, sshd rechaza archivos de autorización o directorios superiores con permisos de escritura inseguros. En el cliente, el modo 600 protege la clave privada; unos permisos demasiado abiertos pueden producir «UNPROTECTED PRIVATE KEY FILE!». El archivo público .pub puede ser legible con el modo 644.
Confirma el inicio de sesión
Abre una conexión nueva con ssh lee@web1.example.com. Una solicitud de frase de contraseña desbloquea la clave privada local; un agente que ya la tenga cargada puede hacer que no sea necesario. En la salida detallada, busca una autenticación correcta mediante «publickey».
Si falla el inicio de sesión, comprueba primero el nombre de la cuenta, después su entrada de clave pública, la propiedad y los permisos, y luego la clave ofrecida por el cliente. ssh -i ~/.ssh/other_key lee@web1.example.com selecciona una clave privada concreta; IdentityFile incorpora esa selección a una configuración de equipo guardada. Generar otra clave no repara una entrada de autorización ausente para la existente.
Puntos clave
- Mantén la clave privada en secreto en el cliente; instala la clave pública en la cuenta deseada del servidor.
- Una frase de contraseña protege la clave privada almacenada; un agente mantiene una clave desbloqueada en memoria.
- Utiliza 700 para
.sshy 600 paraauthorized_keysy la clave privada del cliente. - La autorización se concede por cuenta; eliminar una línea de clave pública revoca esa clave allí.
- Comprueba la cuenta, la clave autorizada, los permisos y la clave ofrecida cuando falle la autenticación.
6.3 Cambia los ajustes del servidor SSH sin perder el acceso
El programa servidor es sshd, proporcionado por openssh-server. Debian y Ubuntu llaman ssh a su servicio de systemd; Fedora, RHEL, openSUSE y Arch suelen llamarlo sshd. Utiliza el nombre que proporciona tu distribución al comprobar el estado, habilitar o recargar el servicio.
Localiza la configuración efectiva
Instálalo con sudo apt install openssh-server o sudo dnf install openssh-server. Para un servicio de Fedora o RHEL, sudo systemctl enable --now sshd lo inicia y habilita su inicio al arrancar. systemctl status sshd informa de su estado.
El servidor lee /etc/ssh/sshd_config. /etc/ssh/ssh_config es para el cliente. Muchos sistemas incluyen /etc/ssh/sshd_config.d/*.conf cerca del principio del archivo del servidor. Para la mayoría de las directivas, tiene prioridad el primer valor leído. Añadir un valor diferente al final del archivo principal puede no tener efecto.
Utiliza sudo sshd -T para imprimir los ajustes efectivos. Si muestra passwordauthentication yes pese a un no posterior, comprueba los archivos incluidos. En una imagen de Ubuntu en la nube, 50-cloud-init.conf puede proporcionar el valor anterior. Tras añadir un archivo aplicable que se lea antes, como 10-no-passwords.conf, o cambiar el ajuste que tiene prioridad, hay que validar y recargar.
Exige la autenticación deseada
Cuando funcione el inicio de sesión mediante clave, estos ajustes establecen el acceso exclusivo mediante claves:
PubkeyAuthentication yes
PasswordAuthentication no
KbdInteractiveAuthentication no
AuthenticationMethods publickey
PermitRootLogin no
El primero habilita las claves. Los dos siguientes desactivan los métodos con contraseña e interactivo por teclado, que pueden aceptar contraseñas. AuthenticationMethods publickey exige explícitamente la autenticación mediante clave pública. PermitRootLogin no bloquea el inicio de sesión SSH del superusuario; los administradores inician sesión con sus propias cuentas y utilizan sudo. El valor predeterminado prohibit-password es diferente: sigue permitiendo al superusuario iniciar sesión con clave. AllowUsers lee deploy puede restringir qué cuentas pueden entrar.
Aplica y prueba de forma segura
Mantén abierta la sesión que funciona y confirma el inicio de sesión mediante clave en un segundo terminal antes de eliminar el acceso con contraseña. Después de editar:
sudo sshd -t
sudo systemctl reload sshd
Utiliza reload ssh en Debian o Ubuntu. sshd -t no imprime nada si la configuración es válida; corrige los errores antes de recargar. Una recarga mantiene las sesiones existentes, por lo que una conexión nueva es la prueba de la política modificada. Mantén la sesión anterior hasta que esa prueba tenga éxito.
Comprueba el acceso y los registros
journalctl -u sshd o journalctl -u ssh muestra los intentos. Los archivos de registro tradicionales incluyen /var/log/auth.log en Debian/Ubuntu y /var/log/secure en RHEL. Los intentos repetidos con contraseña para usuarios no válidos son habituales en servidores accesibles desde internet; el acceso exclusivo mediante claves elimina la posibilidad de iniciar sesión adivinando contraseñas.
Permite el servicio SSH a través del cortafuegos activo: sudo ufw allow OpenSSH en Ubuntu, o sudo firewall-cmd --permanent --add-service=ssh seguido de sudo firewall-cmd --reload en Fedora/RHEL. Una regla del proveedor de la nube también debe permitir el puerto en escucha. Mover SSH al puerto 2222 puede reducir el ruido de los escaneos, pero las claves, el inicio de sesión restringido y las actualizaciones de OpenSSH proporcionan la protección real.
Puntos clave
- Utiliza el nombre de servicio de la distribución:
sshen Debian/Ubuntu, normalmentesshden otros sistemas. - Inspecciona los ajustes efectivos con
sshd -T; los valores incluidos que se leen antes pueden tener prioridad. - Desactiva ambos métodos que admiten contraseñas y exige publickey para el inicio de sesión exclusivo mediante claves.
- Confirma las claves, comprueba la sintaxis, recarga y prueba una conexión nueva mientras mantienes una sesión que funcione.
- Lee los registros del servidor y comprueba las reglas de acceso del equipo y de la nube.
Ejemplos de Almacenamiento y redes en Linux
1Sigue los archivos por un sistema Linux
16 pasos
- 1IntroducciónEmpieza por el propósito de la ruta
Un pequeño servicio de asistencia guarda su programa, sus ajustes y su historial de solicitudes en lugares diferentes (
/usr,/etcy/var). Su administrador también utiliza un directorio temporal compartido y un acceso directo al informe actual, que es un enlace simbólico.Sigue cada ruta haciéndote dos preguntas: ¿qué tipo de datos corresponde a este lugar y qué tipo de entrada del sistema de archivos es? Las respuestas determinan dónde buscas y qué modificará una operación sobre el archivo, como quién puede eliminar entradas (el sticky bit).
- 2ExplicaciónSepara programa, ajustes y salida
El propio programa normalmente va en
/usr, sus ajustes generales de la máquina en/etcy sus datos cambiantes en/var. Una copia de trabajo personal va en un directorio personal.Para una herramienta auxiliar instalada manualmente por un administrador,
/usr/local/binla mantiene separada de los comandos instalados mediante paquetes. Un historial de solicitudes va bajo/var/log, donde se esperan datos operativos que crecen. - 3DesafíoUbica los archivos del servicio
Un servicio de soporte tiene tres archivos: su ejecutable instalado desde un paquete, su configuración local y un registro que crece cada día. Asígnalos a
/usr,/etcy/var.---reveal---
El ejecutable va en
/usr, los ajustes locales en/etcy el registro cambiante en/var, normalmente en/var/log. Un nombre terminado en.confes una pista útil, pero el propósito del archivo es la razón de su ubicación. - 4ExplicaciónElige dónde guardar el trabajo temporal
Una tarea corta de conversión puede utilizar
/tmp. Una tarea más larga que deba reanudarse después de reiniciar necesita/var/tmp. Ninguno es un lugar permanente para el resultado final.Un
/tmprespaldado por memoria pierde sus archivos al apagar el equipo, mientras que las reglas de limpieza pueden eliminar entradas antiguas en cualquiera de las dos ubicaciones. Utilizamktemppara crear un archivo privado con un nombre único y conserva la ruta que imprime para comandos posteriores. - 5EjemploInterpreta el bit de permanencia
El directorio compartido, propiedad del superusuario, muestra
drwxrwxrwt. Todos pueden crear entradas, pero latfinal cambia quién puede eliminarlas o cambiarles el nombre.Jo crea un archivo con modo 644. Pat puede leer su contenido porque el archivo permite la lectura a otros. Pat no puede eliminar su entrada: el directorio con bit de permanencia reserva esa operación al propietario de la entrada, al propietario del directorio o al superusuario, con las comprobaciones habituales de acceso.
- 6DesafíoCambia la privacidad sin cambiar las reglas de eliminación
Jo quiere que Pat deje de poder leer el archivo temporal existente. El directorio compartido ya tiene el bit de permanencia. ¿Qué debe cambiar Jo?
---reveal---
Cambia los permisos del propio archivo, por ejemplo al modo 600. El bit de permanencia ya restringe la eliminación y el cambio de nombre; no elimina el permiso de lectura de un archivo con modo 644. Estas dos protecciones actúan sobre operaciones diferentes.
- 7EjemploCrea un enlace relativo
El directorio
/home/jo/exportsexiste y el informe es/home/jo/today.txt. Un enlace en/home/jo/exports/currentdebe llegar al informe.Utiliza
ln -s ../today.txt /home/jo/exports/current. Al seguir el destino almacenado, comienza dentro deexports, sube a/home/joy después leetoday.txt. El directorio de trabajo del intérprete de comandos no proporciona el punto de partida. - 8DesafíoRepara un destino que ha cambiado de nombre
Jo cambia el nombre de
today.txtaready.txtsin mover el enlace en/home/jo/exports/current. ¿Qué destino debe almacenar el enlace creado de nuevo?---reveal---
Almacena
../ready.txt. El primer..sigue subiendo desdeexportshasta el directorio personal de Jo, pero el nombre de archivo final debe coincidir con el nuevo nombre. Cambiar los permisos mostrados del enlace simbólico no puede reparar su ruta de destino inexistente. - 9ExplicaciónDa al archivo un segundo nombre mediante un enlace duro
Un enlace duro almacena otro nombre para el mismo registro de archivo, no una ruta a un nombre original preferente.
ln ready.txt kept.txthace que los dos nombres compartan un inodo en ese sistema de archivos.Eliminar
ready.txtdejakept.txtutilizable. En cambio, un enlace simbólico que almaceneready.txtquedaría roto. Un enlace duro no puede dar nombre a un directorio ni cruzar a otro sistema de archivos. - 10ConsejoElimina la entrada deseada
Para un enlace simbólico que apunta a un directorio, utiliza su nombre sin barra final:
rm currentounlink current. El directorio de destino permanece.Una barra final pide a los comandos que sigan el destino del directorio. Una eliminación recursiva puede entonces llegar a los archivos dentro de ese destino, por lo que la escritura exacta de la ruta importa. Inspecciona la flecha con
ls -lo lee el destino almacenado conreadlinkcuando tengas dudas. - 11ExplicaciónIdentifica los dispositivos antes de abrirlos
Una línea de listado que comienza por
bdescribe un dispositivo de bloques, como una partición de disco. Unacinicial identifica un dispositivo de caracteres, como un terminal. Los archivos ordinarios comienzan por-, independientemente de que su contenido sea texto o binario.Los números mayor y menor de un listado de dispositivo identifican el controlador y el dispositivo. Ocupan la posición en la que un archivo ordinario mostraría su longitud.
- 12EjemploConsulta el tiempo de funcionamiento actual
cat /proc/uptimedevuelve259200.0 710000.0. El primer valor son los segundos transcurridos desde el arranque: al dividir entre 3600 se obtienen 72 horas, o tres días.El segundo valor suma el tiempo de inactividad de los procesadores, por lo que puede ser mayor que el tiempo real transcurrido desde el arranque. Este texto procede del núcleo en funcionamiento; no es un registro ordinario guardado en disco cada segundo.
- 13DesafíoExplica un archivo de información con tamaño cero
Una persona en formación ve el tamaño 0 de una entrada bajo
/procy supone que no puede contener información útil. Al leerla se obtienen varias líneas. ¿Cómo pueden ser correctas ambas observaciones?---reveal---
El núcleo genera la información cuando se solicita. El tamaño del listado no es la longitud almacenada de un archivo ordinario en disco, por lo que un cero ahí no indica que la lectura vaya a estar vacía. Utiliza la función documentada de la entrada para interpretar el texto que devuelve.
- 14ConexiónConsulta una interfaz mediante sysfs
ls /sys/class/net/lista las interfaces conocidas por el núcleo. Leer/sys/class/net/enp0s3/addressdevuelve la dirección MAC de esa interfaz Ethernet.Esto conecta una ruta familiar con información actual del hardware.
/procse centra en los datos de procesos y del sistema, mientras que/sysorganiza dispositivos, controladores y buses. El sistema en funcionamiento vuelve a crear su contenido. - 15DesafíoMantén el acceso después de que desaparezca un nombre de archivo
Un informe está en un directorio compartido con bit de permanencia, propiedad del superusuario. Jo es su propietario; Pat puede leerlo, pero no puede cambiarle el nombre. Un enlace simbólico en otro lugar almacena su ruta. Jo elimina ese nombre del informe, pero queda un enlace duro en el mismo sistema de archivos. ¿Qué nombre restante sigue abriendo el informe y por qué?
---reveal---
El nombre del enlace duro sigue abriéndolo porque identifica el mismo registro de archivo. El enlace simbólico queda roto porque su ruta almacenada desapareció. La protección del bit de permanencia controla quién puede eliminar la entrada original, no si otro nombre sobrevive.
- 16RepasoUtiliza el propósito, los permisos y el tipo de entrada
Localiza el archivo por su propósito, interpreta su tipo y sus permisos y después sigue cualquier enlace desde el directorio correcto. Para obtener datos actuales del sistema, inspecciona
/procy/sys. Para el trabajo temporal compartido, elige tanto una duración como la privacidad del archivo; la protección del bit de permanencia gestiona una regla de eliminación independiente.
2Monta una unidad opcional de archivos
14 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónEmpieza con una unidad de datos existente
- 2EjemploInterpreta el árbol de dispositivos
- 3ExplicaciónNo confundas la inspección con la preparación
- 4DesafíoElige el origen correcto
- 5EjemploCrea el directorio y monta el sistema de archivos
- 6ConsejoElige un montaje restringido para inspeccionar
- 7DesafíoResuelve un desmontaje bloqueado por uso
- 8ExplicaciónRegistra la identidad en lugar del orden de detección
- 9EjemploConstruye la regla de seis campos
- 10EjemploVerifica la regla antes de reiniciar
- 11DesafíoDistingue nofail de noauto
- 12ConexiónAsigna la propiedad al sistema de archivos montado
- 13DesafíoRepara la entrada después de volver a formatear
- 14RepasoConfirma cada capa
3Descubre por qué un servidor no puede crear archivos
10 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónEmpieza por la ruta donde se produce el fallo
- 2EjemploConsulta el sistema de archivos que contiene la ruta
- 3EjemploComprueba los inodos disponibles
- 4DesafíoElige una limpieza para el recurso que falta
- 5EjemploEncuentra el directorio que crece
- 6ConsejoIncluye el almacenamiento oculto
- 7ExplicaciónSigue la referencia restante a un registro eliminado
- 8DesafíoExplica por qué no cambia el informe de espacio libre
- 9DesafíoComprueba el resultado de la limpieza del registro
- 10RepasoMide el recurso que has recuperado
4Sigue una conexión desde la interfaz hasta el servicio
15 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónSepara las partes de la conexión
- 2ExplicaciónInterpreta la red local a partir del prefijo
- 3DesafíoDecide si un destino es local
- 4ConexiónIdentifica las funciones separadas de dirección y router en IPv6
- 5EjemploInspecciona la vista breve de direcciones
- 6EjemploConsulta la ruta elegida para el destino
- 7DesafíoEncuentra el router sin adivinar
- 8EjemploAñade una dirección temporal completa
- 9ConsejoProtege el acceso al aplicar ajustes guardados
- 10DesafíoExplica un ajuste que ha desaparecido
- 11ExplicaciónInterpreta con precisión un resultado de ping
- 12EjemploInspecciona un servicio en escucha solo local
- 13DesafíoCombina los indicios de ruta y servicio
- 14ConexiónPrueba la aplicación deseada
- 15RepasoElige la siguiente prueba a partir del resultado
5Explica por qué un equipo resuelve una dirección antigua
11 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónUn nombre funciona de forma diferente en dos máquinas
- 2ExplicaciónSigue el orden de búsqueda del sistema
- 3EjemploEncuentra la asignación local desactualizada
- 4DesafíoPrevé el alcance de una edición local
- 5ConexiónTen en cuenta las respuestas DNS en caché
- 6ExplicaciónIdentifica el resolvedor local intermediario
- 7EjemploCompara dos rutas de búsqueda elegidas
- 8DesafíoInterpreta una respuesta negativa
- 9ExplicaciónDistingue los mensajes de fallo
- 10DesafíoExplica pruebas con resultados aparentemente coincidentes
- 11RepasoCompara las fuentes antes de cambiar ajustes
6Configura y verifica el acceso remoto exclusivo mediante claves
17 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónMantén separadas las identidades del servidor y del usuario
- 2EjemploVerifica la primera conexión
- 3DesafíoResponde a un cambio de clave de servidor
- 4EjemploEjecuta un comando remoto
- 5ConsejoMantén visible la dirección de la transferencia
- 6EjemploCrea el par en el cliente
- 7EjemploInstala solo la clave pública
- 8ConsejoProtege los archivos y utiliza el agente
- 9DesafíoCorrige una discrepancia de cuenta
- 10ExplicaciónConsulta los ajustes que rigen el servidor
- 11EjemploExige la autenticación mediante clave pública
- 12DesafíoExplica la distinción del inicio de sesión del superusuario
- 13EjemploValida, recarga y abre una sesión nueva
- 14ConexiónIdentifica dónde se detuvo la conexión
- 15DesafíoDescubre por qué no se aplicó un ajuste posterior
- 16DesafíoRevoca el acceso de un dispositivo perdido
- 17RepasoPrueba el nuevo inicio de sesión
Ejercicios de Almacenamiento y redes en Linux
Set 1: Encuentra archivos y comprende las entradas especiales10 Preguntas de Práctica
Pregunta 1 de 10
/home/ren/archive/current almacena ../draft.txt. ¿A qué ruta apunta?Mostrar respuestaOcultar respuesta
/home/ren/archive, y después aplica .. para llegar a /home/ren antes de añadir draft.txt. Un error tentador es partir del directorio actual del intérprete de comandos. El destino relativo se almacena en el enlace y no cambia con tu directorio de trabajo.Pregunta 2 de 10
brw-rw----. ¿Qué tipo de entrada es?Mostrar respuestaOcultar respuesta
b identifica un dispositivo de bloques, como un disco o una partición. No significa que un archivo ordinario contenga datos binarios. Los dispositivos de caracteres utilizan c y los enlaces simbólicos utilizan l; los demás caracteres de permisos describen el acceso, no el tipo de entrada.Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
/usr/local/bin mantiene los comandos instalados localmente separados del software gestionado mediante paquetes. /usr/share/doc contiene documentación, no comandos ejecutables. Colocar un comando instalado manualmente en el árbol de software local también evita mezclarlo con los archivos gestionados por las actualizaciones habituales de paquetes.Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
/var/log. /etc contiene la configuración que controla un servicio, no su historial de solicitudes creciente. La diferencia te ayuda a buscar la causa de un sistema de archivos lleno sin editar los ajustes ni los archivos instalados del programa.Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Pregunta 6 de 10
copy.txt es un enlace duro a source.txt y alias.txt es un enlace simbólico que almacena source.txt. Después de eliminar source.txt, ¿qué sigue siendo legible?Mostrar respuestaOcultar respuesta
copy.txt permanece legible. El enlace simbólico solo almacena la ruta source.txt, que ya no existe, y queda roto. Conservar un nombre unido mediante un enlace duro mantiene el acceso a los datos; conservar un enlace simbólico no conserva la ruta de destino que almacena.Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
/var/tmp está destinado a archivos temporales que necesitan sobrevivir al reinicio. /tmp es de corta duración y puede estar respaldado por memoria o vaciarse al arrancar, por lo que no puede proporcionar esa duración. Las políticas de limpieza aún pueden eliminar archivos antiguos de /var/tmp; los resultados permanentes deben ir en almacenamiento duradero.Pregunta 8 de 10
/usr/lib/systemd/system. ¿Dónde debe colocarse una configuración alternativa local admitida?Mostrar respuestaOcultar respuesta
/etc/systemd/system, separadas de los archivos de unidad suministrados. Editar el archivo perteneciente al paquete bajo /usr/lib deja el cambio expuesto a ser sustituido durante una actualización. /run también contiene datos de ejecución y se vacía al reiniciar, por lo que no es adecuado para esta configuración permanente.Pregunta 9 de 10
ls -l muestra una entrada de /proc con tamaño 0, pero cat imprime información actual. ¿Por qué?Mostrar respuestaOcultar respuesta
Pregunta 10 de 10
/home/eli/links/active almacena ../work.txt. El archivo de destino se mueve a /data/notes/final.txt en otro sistema de archivos. ¿Qué tipo de enlace y destino relativo restauran el acceso mediante el mismo nombre de enlace?Mostrar respuestaOcultar respuesta
/home/eli/links y sube tres niveles hasta / antes de descender a data/notes. Por tanto, el destino almacenado es ../../../data/notes/final.txt. Subir solo dos niveles llega a /home, y un enlace duro no puede llegar al archivo en otro sistema de archivos.Set 2: Identifica el almacenamiento y realiza montajes fiables10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
/dev/nvme1n1p3?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
/dev/vdc1 y /mnt/archive ya existe. ¿Qué comando la monta allí?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
/mnt/store/local.txt estaba presente antes de que montaras una unidad en /mnt/store. Ahora no aparece en el listado. ¿Qué ocurre después de desmontar correctamente?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
/dev/sdc1 a /dev/sdd1 después de añadir otra unidad. ¿Qué origen de fstab evita mejor este problema de orden de detección?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
/mnt/usb y ningún otro proceso lo utiliza. ¿Qué debes hacer?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
noauto, recargas systemd y ejecutas mount -a. El montaje no aparece. ¿Cuál es la siguiente prueba adecuada?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
noauto,nofail en /mnt/test. Ahora está conectada, pero mount -a no monta la unidad y deja visible allí un archivo local anterior. ¿Cómo puedes ver la unidad conservando ese archivo local?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 3: Diagnostica sistemas de archivos llenos y totales inesperados10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
/srv/uploads. ¿Qué comando proporciona ese informe?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
df -h muestra 18G disponibles, pero df -i muestra IFree como 0. ¿Qué limpieza resuelve mejor el fallo?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
du -sh * solo da cuenta de una pequeña parte. ¿Qué comando incluye sus subdirectorios ocultos?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
/var/cache, incluido su contenido. ¿Qué comando debes utilizar?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
lsof +L1, mantenido abierto por su servicio. ¿Por qué df no ha recuperado su espacio?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
lsof +L1 no muestra nada. Hay una unidad independiente montada sobre /srv/data, que antes contenía archivos grandes. ¿Qué explica la diferencia?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 4: Consulta el estado de la red y localiza fallos de conexión10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
/24 en una dirección IPv4?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
inet 192.168.8.44/24 brd 192.168.8.255. ¿Qué información requiere aún consultar la salida de rutas?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
ss muestra un servicio TCP en escucha en 127.0.0.1:8080. ¿Quién puede conectarse a esa dirección en escucha?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
ip desaparece después de reiniciar. ¿Cómo debes hacer que la dirección deseada sea permanente?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
192.168.12.70/26 y tiene una ruta conectada adecuada. ¿Qué destino está en su misma subred?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
portal.example.com, pero no recibe respuestas al eco. ¿Qué debes investigar a continuación?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
192.168.90.25 sin prefijo a una interfaz que no tenía dirección y la activas. Otro equipo es 192.168.90.30/24; no existen otras rutas. ¿Por qué el equipo local no puede llegar normalmente al otro equipo?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
192.168.6.0/24. Su servidor de destino es 192.168.7.40. En ese servidor, el servicio web funciona localmente, pero solo escucha en 127.0.0.1:80. ¿Qué par de correcciones resuelve ambos obstáculos demostrados?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
192.168.55.130/26 y llega a otros equipos de la misma subred. Su perfil guardado selecciona la puerta de enlace 192.168.55.1, pero el router local previsto es 192.168.55.129. No se aplica ninguna otra ruta. ¿Qué corrección permanente se ajusta a las direcciones?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 5: Compara rutas DNS e indicios de conexión remota10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
resolv.conf indica 127.0.0.53 en un sistema que utiliza systemd-resolved. ¿Cómo puedes ver los servidores DNS de origen reales?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
Permission denied (publickey). ¿En qué etapa falló este intento?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
files dns. Una entrada hosts local asigna docs.example.com a una dirección antigua. Una consulta al servidor DNS autoritativo seleccionado explícitamente devuelve la dirección nueva. ¿Qué comparación explica el destino antiguo de una aplicación?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
NXDOMAIN. ¿Qué distingue este resultado de un tiempo de espera agotado?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
0.0.0.0:22, una dirección adecuada y una ruta adecuada. ¿Qué indicios deben comprobarse a continuación antes de cambiar las claves de usuario?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
vault.home.arpa. Tanto dig sin un servidor explícito como getent hosts la devuelven; resolv.conf apunta al resolvedor intermediario de systemd-resolved. ¿Por qué es coherente?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 6: Configura claves SSH y diagnostica el acceso de forma segura10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
deploy, pero te conectas como root con esa clave y recibes un mensaje de permiso denegado. ¿Qué debes probar primero?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
PasswordAuthentication yes antes de que el archivo principal lo establezca más adelante en no. No hay bloques Match. Después de recargar, los inicios de sesión con contraseña siguen funcionando. ¿Qué debes inspeccionar y corregir?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
.ssh del servidor. El cliente ofrece la clave correspondiente. ¿Qué reparación se ajusta a los indicios?Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
¿Te atascas con una pregunta tuya? Ayuda con Tareas
Términos Clave
A
Agente SSH
ssh-add, varias conexiones pueden utilizar la clave cargada sin pedirte que vuelvas a desbloquearla.Agotamiento de inodos
IFree de cero explica por qué falla la creación de un archivo nuevo a pesar de que haya gigabytes en la columna Avail.Archivo de registro de systemd archivado
Archivo disperso
du normal y du --apparent-size pueden dar totales muy diferentes para la misma imagen dispersa.Archivo eliminado que sigue abierto
lsof +L1 puede identificar un registro activo eliminado que sigue manteniendo lleno un sistema de archivos.Archivo hosts
/etc/hosts puede enviar solo tu equipo al servidor anterior de un sitio web.Archivo temporal
/var/tmp en lugar de /run.Autenticación interactiva por teclado
authorized_keys
Autoconfiguración de direcciones sin estado (SLAAC)
B
Bit de permanencia
/tmp, propiedad del superusuario, un usuario normal no puede eliminar el archivo de otro solo porque se pueda escribir en el directorio.Bloques reservados
Bucle de retorno
127.0.0.1 en IPv4 o ::1 en IPv6.C
Clave de servidor
Clave privada
id_ed25519 con el modo 600 para que otros usuarios normales no puedan leerlo.Clave pública
.pub puede añadirse al authorized_keys de la cuenta remota deseada.Configuración efectiva
sshd -T ayuda a comprobar qué valor tuvo prioridad cuando hay ajustes en varios archivos.Configuración incluida
sshd -T cuando un valor yes incluido anteriormente parezca prevalecer sobre un ajuste no posterior.Configuración temporal de red
ip puede desaparecer cuando NetworkManager vuelve a aplicar su perfil de conexión.Conmutador de servicios de nombres
hosts: files dns comprueba el archivo hosts local antes de consultar a DNS un nombre coincidente.D
Desmontaje
/mnt/usb antes de que ese montaje pueda desmontarse sin un error de destino ocupado.Destino relativo
Dirección de difusión
brd de ip addr no es la dirección del router que debes introducir como puerta de enlace predeterminada.Dirección IP
Dirección MAC
Directorio personal
/home para los usuarios normales.~ a tu directorio personal, donde las entradas ocultas pueden contener tus ajustes personales de aplicaciones.Directorio raíz
/, el punto de partida del árbol único de archivos, directorios y sistemas de archivos montados de Linux./data se incorpora al árbol en lugar de recibir una letra de unidad independiente.Disco
Dispositivo de bloques
/dev/sda1.b al principio de un listado de dispositivo distingue una partición de disco de un archivo ordinario.Dispositivo de caracteres
/dev/null./dev/null descarta esos bytes sin ocultar la salida normal.E
Eco ICMP
Enlace duro o enlace físico
Enlace simbólico
../notes.txt comienza su búsqueda en el directorio que contiene ese enlace.Enlace simbólico roto
readlink permite inspeccionar la ruta almacenada cuando falla la apertura de un acceso directo roto.Espacio de intercambio
swap se activa como espacio de intercambio en lugar de montarse para documentos.Espacio disponible
Avail puede ser menor que el tamaño total menos el espacio utilizado en un sistema de archivos ext4.Estado de la aplicación
/var/lib./var/lib puede contener una base de datos activa, así que identifica a quién pertenece antes de limpiarlo.Estándar de jerarquía del sistema de archivos
/var/log.F
Frase de contraseña
fstab
/etc/fstab si debe volver a montarse al arrancar.G
Gibibyte
G por las herramientas de almacenamiento de Linux en formato legible.lsblk muestra GiB.H
Huella digital de la clave
I
Identificador único universal (UUID)
lsblk -f en lugar de suponer que una partición USB siempre será /dev/sdb1.Inodo
Interfaz de red
ip -br addr lista interfaces Ethernet, Wi-Fi, de bucle de retorno y virtuales con sus direcciones.J
Jerarquía unificada en /usr
/usr es una estructura en la que rutas como /bin, /sbin y /lib son enlaces simbólicos a ubicaciones dentro de /usr./bin/ls y /usr/bin/ls pueden hacer referencia al mismo comando instalado.K
known_hosts
L
Longitud de prefijo
/26 de una dirección IPv4 deja seis bits de dirección y proporciona 64 direcciones en esa subred.M
Mecanismo de resolución de nombres
mktemp
mktemp crea un archivo o directorio temporal privado con un nombre único e imprime la ruta para que quien lo invoca la utilice.Montaje de solo lectura
ro cuando quieras inspeccionar un sistema de archivos sin escrituras normales de aplicaciones.N
Netplan
netplan try ofrece un plazo de reversión al probar un cambio que podría interrumpir el acceso.noauto
noauto excluye una entrada del montaje automático al arrancar y de mount -a, pero permite montarla explícitamente.sudo mount /archive en lugar de esperar que mount -a la monte.noexec
noexec impide la ejecución directa de archivos desde un montaje, pero no impide que un intérprete lea un guion allí.bash.nofail
nofail permite que el inicio continúe cuando no se puede montar un dispositivo de origen opcional, lo que resulta útil para unidades extraíbles o adicionales.nofail.Nombre de dominio completo
web1.example.com, en lugar de un nombre local corto.Número de enlaces
ls -l.Números mayor y menor de dispositivo
8, 1 en la posición del tamaño describe un dispositivo, no un archivo de ocho bytes.NXDOMAIN
O
Opción de montaje
uid y gid para mostrar sus archivos como pertenecientes al usuario deseado.Orden de comprobación de los sistemas de archivos
0 2: sin indicador de copia dump y después un orden de comprobación para un sistema que no es raíz.P
Partición
p2 de /dev/nvme0n1p2 selecciona una partición en lugar de todo el dispositivo NVMe.Perfil de NetworkManager
nmcli device status y después activa ese perfil.procfs
/proc, donde el núcleo proporciona información actual de procesos y del sistema cuando se solicita./proc/uptime devuelve valores de tiempo actuales aunque no sea un archivo de texto ordinario almacenado.Protocolo de configuración dinámica de hosts (DHCP)
ip addr.Protocolo de transferencia de archivos sobre SSH (SFTP)
lcd cambia el directorio de trabajo local mientras que cd cambia el remoto.Pseudodispositivo
/dev/zero puede proporcionar la entrada al crear una imagen de prueba ordinaria llena de ceros.Puerta de enlace predeterminada
Puerto de servicio
Punto de montaje
/mnt/usb, un archivo de ella aparece bajo ese directorio.R
Recarga del servicio
Registro de arranque maestro (MBR)
Resolvedor DNS local intermediario
127.0.0.53 suele enviar consultas a systemd-resolved en la misma máquina.rsync
S
scp
USER@HOST:PATH, con -P mayúscula para un puerto distinto del predeterminado.SERVFAIL
Servidor de nombres
dig @192.168.1.1 example.com A solicita explícitamente a ese servidor el registro IPv4 del nombre.Sistema de archivos
Sistema de nombres de dominio (DNS)
Socket en escucha
ss.127.0.0.1:8080 acepta tráfico local, pero no está vinculado a la dirección LAN del servidor.SSH
ssh aya@node.example.com inicia una sesión remota utilizando la cuenta de Aya en el servidor indicado.sshd
ssh en Debian o Ubuntu y el servicio sshd en Fedora o RHEL.Sufijo de búsqueda
search example.com, una búsqueda de web1 puede probar el nombre web1.example.com.sysfs
/sys, que muestra la visión del núcleo de los dispositivos, controladores, buses y ajustes relacionados./sys/class/net permiten inspeccionar qué interfaces de red conoce el núcleo.T
Tabla de enrutamiento
ip route get 203.0.113.18 muestra qué ruta seleccionaría Linux para ese destino.Tabla de particiones
sudo fdisk -l muestra el tipo de tabla y los sectores inicial y final de cada partición.Tabla de particiones GUID (GPT)
Tabla de vecinos
ip neigh dirige la atención a la comunicación en el enlace local.Tamaño lógico del archivo
ls -l, pero ocupar mucho menos espacio.Tiempo de espera de DNS agotado
Tiempo de ida y vuelta
time=0.8 ms también mide el recorrido de vuelta, no solo el paquete de ida.Tiempo de vida
tmpfs
/tmp aunque el disco principal aún tenga espacio libre.U
Uso del disco
du suma a través de las partes del árbol a las que puede acceder.sudo du -h -d 1 /var para comparar directorios grandes después de identificar el sistema de archivos lleno.Sobre esta unidad
Crea tus propios Materiales de Estudio
Convierte tus notas, diapositivas y documentos en Guías de Estudio, Preguntas de Práctica, Flashcards y 6 herramientas más.