GNU/Linux >> Tutoriales Linux >  >> Linux

13 ejercicios para mejorar tus habilidades con Linux

Muchos autores han brindado a los lectores de Enable Sysadmin razones para crear un entorno de laboratorio doméstico u orientación sobre la creación de entornos de laboratorio utilizando virsh, Ansible e incluso contenedores. Entonces, ahora que sabe que un laboratorio en casa es bueno para usted y ha usado los artículos para construir una excelente configuración, ¿qué sigue?

Cuando enseño, proporciono a mis alumnos un libro de trabajo de laboratorio autodidacta que ofrece habilidades sugeridas en un orden lógico que pueden usar para mejorar su conocimiento de Linux o prepararse para los exámenes de certificación. Modifiqué ese libro de trabajo para este artículo para brindarle 13 cosas que hacer con su nuevo y brillante entorno de laboratorio de Linux.

Este es un inmenso conjunto de pautas. Además, no hay instrucciones paso a paso. De hecho, ese es el punto. Debes investigar y aprender por ti mismo estas tareas si aún no sabes cómo llevarlas a cabo, al igual que en el mundo real.

Hay artículos de Habilitar Sysadmin que cubren algunas de las tareas. La lección no es que debas conocer todas estas respuestas, sino que debes saber cómo encontrar todas estas respuestas. No tienes que hacer todas las secciones, aunque algunas dependen de otras.

1. Elija Linux

Un laboratorio doméstico puede servir para muchos propósitos, y necesita tener una idea de lo que quiere lograr con su laboratorio.

  • Si solo está explorando lo que es posible en Linux, la instalación de CentOS Stream o Fedora le ofrece un entorno flexible. Puede instalar cualquiera de estas distribuciones en una computadora de repuesto, una Raspberry Pi o como una máquina virtual (VM) o contenedor.
  • Si desea que su viaje comience en su destino, puede instalar Red Hat Enterprise Linux (RHEL) en una plataforma compatible. Esto lo inicia con Linux de calidad empresarial, lo que significa que una vez que perfeccione su configuración, estará listo para migrar a producción.

Todas estas distribuciones se derivan de Fedora, por lo que el proceso de instalación es básicamente el mismo independientemente de cuál elijas. Puede seguir nuestra guía introductoria si no está seguro de cómo empezar. Utilice esta información para seleccionar las distribuciones para instalar en la siguiente tarea y comprender mejor el panorama de Linux.

2. Instale al menos tres distribuciones

  • Cree particiones raíz separadas de arranque, var, inicio, intercambio y sistema de archivos (cinco particiones en total). Deje al menos 100 MB de espacio en disco duro vacío, sin usar y sin particiones para una tarea futura.
  • Elija las interfaces gráficas de usuario (GUI) de escritorio que estén disponibles para sus distribuciones seleccionadas.
  • Cree un usuario durante la instalación y conviértalo en administrador. Esto otorga al usuario sudo permisos.
  • Una vez completada la instalación, explore las funciones de ayuda integradas:
    • Use las páginas man para investigar el fstab archivo.
    • ¿Cuáles son las diferencias entre las distintas secciones de la página del manual? Los administradores utilizan principalmente las secciones 1, 5 y 8. ¿Por qué?
    • ¿Cómo se puede realizar una búsqueda de palabras clave en las páginas man?
    • Qué se puede encontrar en /usr/share/doc ?
    • Explore cualquier archivo de ayuda de GUI que pueda estar disponible.
  • Complete el tutorial de Vim (el comando es vimtutor ) para sentirse cómodo con Vim. Puedes usar Nano si lo prefieres. Estar seguro puede crear, abrir, editar, guardar y cerrar archivos de configuración antes de continuar con estas actividades.
  • Intente configurar las instalaciones para una zona horaria específica usando tzselect comando.
  • Seleccione una instalación como su computadora de laboratorio principal. Designarlo como "servidor" y seleccionar una segunda instalación como "cliente". Utilizará estos dos sistemas en las actividades restantes.

[ Tenga siempre a mano la hoja de trucos de los comandos de Linux mientras aprende y trabaja. ]

3. Ajustar permisos de usuario

  • Inicie sesión con la cuenta de usuario que creó durante la instalación. Usa el sudo comando para obtener privilegios de root cuando necesite realizar tareas administrativas en todo el sistema. Esta es una práctica recomendada importante en la administración de Linux.
  • Ajuste los privilegios asignados a su cuenta de usuario usando sudo dominio. Debes editar el /etc/sudoers archivo usando el visudo comando.

4. Usar editores de texto

  • Cree un plan de estudios de certificación mediante Vim. Enumere las tareas que pretende realizar como parte del desarrollo de sus habilidades en Linux.
  • Enumere tres (o más) recursos usando el editor de texto Nano.
  • Enumere tres habilidades de Linux en las que confía y tres habilidades de Linux en las que no confía en el uso de un editor de texto GUI. Esta debería ser la única vez que use un editor de GUI durante toda esta actividad.

5. Administrar usuarios y grupos

  • Use el /etc/skel directorio para definir la configuración del perfil antes de agregar cualquier cuenta de usuario.
  • Establezca la caducidad de la contraseña y la cuenta mediante /etc/login.defs archivo antes de agregar cualquier cuenta de usuario. Utilice los siguientes requisitos de contraseña:
    • Las contraseñas deben caducar después de 90 días, con un período de advertencia de cinco días.
  • Use la línea de comando para crear cinco cuentas de usuario para usar en actividades posteriores. Experimentará con los permisos y la propiedad al utilizar estas cuentas. Asigne a cada usuario un nombre único, pero configúrelos a todos con la misma contraseña (por su propia cordura).
  • Utilice la línea de comandos para crear cinco grupos basados ​​en departamentos ficticios:ventas, marketing, recursos humanos, TI, ingeniería. Coloque un usuario desde arriba en cada grupo.
  • Delegue la capacidad de reiniciar el sistema a un solo usuario mediante sudo .

6. Administrar archivos

  • Cree directorios para cada departamento (ventas, marketing, recursos humanos, TI, ingeniería) en la raíz del sistema de archivos.
  • Configure los permisos y la propiedad estándar de Linux de modo que cada grupo solo tenga acceso a sus propios directorios departamentales. Por ejemplo, el grupo de ventas tiene acceso a /sales directorio, pero no a los directorios de otros departamentos.
    • Después de completar y probar el paso anterior, configure los permisos de ACL para permitir que el departamento de marketing tenga acceso de lectura a /sales directorio.
    • Utilice los permisos de ACL para permitir que una cuenta de usuario tenga permiso de lectura para /IT directorio.
    • Configure SGID y el sticky bit en /marketing directorio.
  • Asegúrese de que dos de sus cuentas de usuario existentes ahora sean miembros del grupo de marketing.
    • Utilice cada cuenta para crear un archivo en /marketing directorio.
    • Pruebe si una de esas cuentas puede eliminar el archivo creado por la otra cuenta (no deberían poder hacerlo, debido a la parte adhesiva).
  • Cree un archivo llamado unchangeable.txt , establezca el atributo inmutable en él y luego elimine el archivo.
  • Configurar enlaces de archivos.
    • Cree un archivo llamado LinksTest.txt en el /opt directorio, y luego crea un enlace duro a él en el /tmp directorio. Use Vim para agregar una línea de texto al archivo a través de /opt/LinksTest.txt y luego muestre el contenido del archivo usando el /tmp/LinksTest.txt ruta del archivo.
    • Cree un enlace simbólico a /tmp/LinksTest.txt en el directorio de inicio del usuario raíz y ver el contenido del archivo.
    • Elimine el /tmp/LinksTest.txt y luego intente ver el contenido del archivo a través de /root/LinksTest.txt enlace simbólico.
  • Cree 10 archivos en el /tmp directorio, y luego use tar y gzip para agrupar y comprimir los archivos.
    • Elimine los 10 archivos originales y luego restáurelos desde su tarball.
  • Use el find comando para buscar los archivos de prueba en los directorios del departamento. Realice esta tarea primero como usuario raíz, luego como un usuario que es miembro del grupo propietario del directorio y finalmente como un usuario que no es miembro del grupo propietario del directorio.
  • Solo en la línea de comando, practique montar y desmontar imágenes ISO.
  • Copie un archivo de la ISO a un directorio en la instalación de Linux.
  • Configurar LVM:
    • Designe dos secciones de 50 MB cada una de su espacio vacío restante en el disco duro para que sean volúmenes físicos (PV) utilizados por LVM.
    • Combínalos con PV en un solo grupo de volúmenes y luego configura un solo volumen lógico (LV) de 100 MB.
    • Cree un directorio que sirva como punto de montaje para este LV y agregue una entrada a /etc/fstab para que se monte durante el arranque del sistema.

[ Para obtener más consejos de preparación para el examen, descargue el libro electrónico Cómo prepararse para su examen remoto de Red Hat. ]

7. Administrar software

  • Usar las rpm comando para administrar el software:
    • Utilice las rpm comando para inventariar todo el software instalado y redirigir esta lista de inventario a un archivo de texto.
    • Instale un paquete RPM usando el rpm dominio. Por ejemplo, instale el zsh paquete. Descargue el paquete si es necesario.
    • Utilice las rpm comando para obtener información sobre el zsh paquete, y luego use rpm para desinstalar el paquete.
  • Usar dnf comando para administrar el software:
    • Instalar un paquete RPM con el dnf dominio. Por ejemplo, instale el ksh paquete.
    • Usar el dnf comando para obtener información sobre el ksh paquete, y luego use dnf para desinstalar el paquete.
  • Encuentre y descargue el software que debe compilar. Siga el proceso de compilación del software. (GitLab, GitHub y Sourceforge son repositorios de desarrollo populares).
  • Descargue una pieza de software que incluya una suma de verificación MD5 para verificar su integridad. Después de la descarga, compare sus resultados MD5 con el resultado en el sitio web.

8. Arranque desde la CLI y la GUI

  • Configure una de sus máquinas de laboratorio para que arranque en la interfaz de línea de comandos (CLI) mediante systemd y reinicie para confirmar que tuvo éxito.
  • Sin reiniciar ni cambiar la configuración predeterminada, inicie la GUI mediante systemd.
  • Vuelva a configurar la máquina virtual para que arranque en la GUI de forma predeterminada y luego reinicie para confirmar que tuvo éxito.
  • Configure la máquina virtual para que arranque en la CLI nuevamente y luego reiníciela para confirmar que tuvo éxito.

9. Administrar hardware

  • Use los siguientes comandos para documentar la información de hardware de las computadoras de su laboratorio:df , du , cat /proc/cpuinfo , cat /proc/meminfo , devices , partitions , ifconfig , ip addr , cat /etc/fstab , uname –a
  • Dirija la salida de estos comandos a archivos de texto (haga tantos archivos de texto como desee para organizar esta documentación razonablemente). Usa ambos > y >> para organizar los datos.
  • Redireccionar el dmesg salida a un archivo de texto, y luego use el grep utilidad para mostrar cualquier referencia a "memoria" o "CPU" en el archivo. ¿Qué más te dice este archivo?

10. Crear guiones

  • Busque en Internet al menos tres scripts simples que le parezcan útiles.
    • ¿Cuál es el propósito de usar un "punto barra" (./ ) delante de un script al ejecutarlo?
    • ¿Cuál es el propósito de "sh-bang" (como #!/bin/bash ) al principio de un guión?
  • Utilice Vim para editar estos scripts. No utilice un editor de GUI.
  • Lea el artículo Learn Bash de Jim Hall y luego descargue el libro electrónico Bash scripting for sysadmins de David Both.
  • Cree y use una secuencia de comandos de respaldo para respaldar el contenido de los directorios de departamento que creó anteriormente.
    • Programe su secuencia de comandos de copia de seguridad para que se ejecute cada hora usando cron . ¡Desconfigure esto tan pronto como sepa que funciona!
  • Cree una cuenta gratuita con GitHub y luego almacene sus scripts allí para permitir el control de versiones.

[ Descargue la hoja de referencia de cron de Linux. ]

11. Configurar el sistema y los servicios de red

  • Documente las siete capas del modelo OSI (esto se supone que es conocimiento para las redes en general).
  • Documente la dirección IP y la dirección MAC de al menos uno de sus sistemas Linux en un archivo llamado networking.txt en el directorio de inicio del usuario raíz. ¿Qué clase es esta dirección IP?
  • Edite el /etc/hosts archivos en sus máquinas virtuales disponibles para permitir la funcionalidad de ping por nombre.
  • Si tiene dos o más máquinas virtuales conectadas en red, establezca la conectividad SSH.
    • Configure SSH solo para la autenticación basada en claves.
    • Establezca un mensaje de banner para cada servidor SSH que enumere el nombre de host de ese servidor. (En otras palabras, configure una VM como la estación de trabajo de administración y las VM restantes como servidores, y luego realice toda la administración desde una estación de trabajo mediante conexiones SSH). Es posible que deba configurar el firewall para la conectividad SSH.
  • Ejecutar un traceroute a la dirección IP 8.8.8.8 y documente el resultado en un archivo llamado traceroutegoogle.txt almacenado en el directorio de inicio del usuario raíz. Repita el proceso usando el tracepath comando.
  • Configure una máquina virtual como servidor DHCP con una dirección IP estática y la otra como cliente DHCP.
    • Usar ping para verificar la conectividad entre las dos máquinas virtuales.
  • Abra puertos en el cortafuegos para cualquier servicio de red que pruebe en esta sección, incluidos HTTP y FTP.
    • Utilice el firewall-cmd comando para administrar el servicio firewalld. Su distribución puede usar un servicio de firewall diferente, así que use los comandos apropiados.
  • Instale y habilite el servidor web Apache (el proceso para Apache se llama httpd ).
    • Configure Apache para que se inicie automáticamente en multi-user.target y el graphical.target configuraciones.
    • Cree un sitio web de prueba alojado en una de sus máquinas virtuales. Deberá crear un index.html página web. Verifique que el sitio web esté disponible desde su otra máquina virtual.
    • Utilice una combinación de ps y grep para mostrar información de proceso sobre Apache (httpd ) proceso.
  • Instale y configure la solución de servidor vsFTPd y configure el servicio vsFTPd para que se inicie automáticamente.
    • Haga disponible un sitio FTP de prueba y verifique que puede descargar un archivo de él.
  • Ver los archivos de registro rsyslog para los servicios HTTP y FTP anteriores.
  • Personalice el archivo de menú de GRUB2 para que su distribución lea "MyLinuxDistro" en el menú de inicio, en lugar de la entrada de menú predeterminada (que normalmente muestra el nombre oficial de la distribución especificado por el proveedor).
  • Utilice la top comando para renice un proceso.
  • Redirigir la salida de systemd-analyze comando a un archivo de texto y, a continuación, anote qué tres servicios tardan más en iniciarse.
  • Revise el contenido de /proc/cpuinfo y documente el nombre del modelo de su CPU.
  • Revise el contenido del /proc/meminfo y documente la cantidad total de memoria en el sistema.

12. Recuperar una contraseña de root olvidada

  • Restablezca la contraseña del usuario raíz interrumpiendo el proceso de inicio de GRUB2. Tómese el tiempo:¿cuánto tiempo le tomó explotar esta configuración? Esto no funciona si ha instalado Linux con cifrado de disco completo, por lo que si puede realizar esta tarea, ¡es hora de habilitar el cifrado!

13. Investigar la GUI

  • Explore las diversas GUI que están disponibles con diferentes distribuciones. Estos varían según las distribuciones que esté utilizando y las opciones de instalación que elija. Encuentre funciones dentro de las diversas GUI que le resulten familiares o útiles en el trabajo y en el hogar.
  • Tenga en cuenta cómo usa su computadora personal. ¿Hay aplicaciones de código abierto que se ejecutan en Linux que serían útiles? Por ejemplo, los músicos a menudo usan software de grabación. ¿Qué software está disponible en Linux para ese propósito? ¿O qué hay de los juegos? ¿Fotografía digital y edición de imágenes?
  • Lea las descripciones en línea de varios Fedora Spins.

Resumir

Estas son meras sugerencias. Agregue tareas de la lista de objetivos de su examen, descripciones de trabajo, guías de estudio y otros recursos para asegurarse de estar completamente preparado para lo que sea que se le presente. Reconozco que esta es una enorme lista de tareas. Acérquese a él de la misma manera que comería un elefante:un bocado a la vez.


Linux
  1. Cree su propio contenedor en Linux

  2. Cree su propia tecnología en Linux

  3. Escanee su seguridad Linux con Lynis

  4. Mejora la seguridad del cortafuegos de tu sistema Linux

  5. 10 tutoriales para mejorar tus habilidades de línea de comandos

Convierta su instalación de Windows en una VM en Linux

Ejecute aplicaciones de Linux en su Chromebook

Juega Tetris en tu terminal Linux

Cómo obtener su dirección IP en Linux

La mejor distribución de Linux:las 10 mejores recomendaciones para mejorar su experiencia con Linux

Las 5 mejores distribuciones ligeras de Linux para mejorar su computadora antigua