NovaHacking
  • Whoami
  • Artículos
    • Panamá Papers
    • Tratamiento para la TTY
    • Introducción a la Ciberseguridad
    • Introducción al Buffer Overflow
    • Introducción al Pivoting
    • IDS - IPS (Suricata)
    • Colisión de Hash
    • RSA Cracker
  • Herramientas
    • Explotación
      • Hydra
      • pwncat-cs
    • Reconocimiento
      • Nmap
      • Arp scan
  • CTF
    • Dockerlabs
      • Amor
      • BreakMySSH
      • DockHackLab
      • FirstHacking
      • sjd
      • WhereIsMyWebShell
      • Dark
      • Queuemedic
      • Buffered
      • Pn
      • Canario
      • Domain
      • HereBash
  • Linux
    • 🐧Inicio Linux
Powered by GitBook
On this page
  • ¿Por qué aprender Linux? 🐧
  • Distribuciones Linux más usadas:
  • Concluciones
  • Comandos comunes
  • Estructura de carpetas en Linux
  1. Linux

Inicio Linux

¿Por qué aprender Linux? 🐧

  • Entorno amigable: Su estructura, código abierto, y pocos requisitos de hardware te permiten desarrollar con más fluidez.

  • Confiable: Puedes modificarlo y adaptarlo a las necesidades de tu empresa o hardware.

  • Seguridad: Conocer la terminal y restricciones del SO es clave para el mundo de la seguridad informática.

  • Terminal: Realiza tareas específicas de manera rápida a través de comandos.

  • Rey de los servidores: Los grandes servidores están basados en distros Linux.

  • Comunidad: Cuenta con una gran comunidad dispuesta a colaborar en proyectos Linux.

Linux fue lanzado en 1992, es Open Source y tiene sabores para todos los gustos (distribuciones).

Distribuciones Linux más usadas:

  • redhat: Red Hat Enterprise Linux (RHEL) es la distro empresarial más importante (no es gratis).

  • CentOS: Community ENTerprise Operating System. Es un fork gratuito de Red Hat.

  • SUSE: Suse ofrece soluciones de servidores, desktop y sistemas embebidos para empresas.

  • Linux Mint: Basada en Ubuntu, intenta dar experiencia cercana a Windows.

  • fedora: Distro para usuario final basada en Red Hat, pero desarrollada por la comunidad.

  • ubuntu: Basado en Debian es la distro más famosa de Linux.

  • Debian: Es una de las distros más completas, antiguas y estables de Linux.

  • Kali: Basada en Debian, trae herramientas para auditoría y seguridad informática al igual que parrot.

Información adicional:

Shell

  • Definición: La shell es el intérprete de comandos donde el usuario puede interactuar con el sistema ingresando comandos.

  • Ejemplo: La shell predeterminada en muchos sistemas Unix es la "Bourne Shell" (sh), Bash o incluso la zsh en sistemas como Manjaro. Cuando ingresamos comandos en la terminal, se está utilizando una shell. Tenemos ejemplos como Zsh, Bash o Powershell.

Bash (Bourne Again Shell)

  • Definición: Bash es una mejora de la Bourne Shell (sh). Es una shell de Unix que incluye características adicionales, como historial de comandos.

  • Ejemplo: Si usamos un sistema Linux, es probable que estemos interactuando con Bash, ya que se trata de la shell que viene por defecto en muchas distribuciones de Linux, como en Ubuntu.

Concluciones

  • La shell es un término más amplio que incluye varios intérpretes de comandos, mientras que Bash es un tipo específico de shell.

  • Bash es ampliamente utilizado y es la shell predeterminada en muchos sistemas Unix.

Comandos comunes

  • man -> Este es un comando que por decirlo así, es el manual de la gran mayoría de comandos Linux o herramientas comunes, solo escribimos man y el nombre de la herramienta o comando a estudiar.

  • pwd -> Muestra el directorio de trabajo actual.

  • whoami -> Muestra el nombre del usuario que somos.

  • cd -> Para moverse entre directorios del sistema.

    • .. -> Para ir un directorio atrás, también podemos usar ../../../.

    • - -> Nos manda al directorio que estábamos antes.

    • ~ -> Para ir a nuestra home de usuario, también funciona si solo usamos cd.

  • cat -> Lee el contenido de texto de un archivo.

  • mkdir -> Crea una carpeta en la ubicación actual.

    • Podemos poner varios nombres a la vez separados con un espacio y mkdir creara todas las carpetas a la vez.

  • ls -> Muestra la lista de archivos y directorios en la ubicación actual.

    • -l -> Muestra el resultado en modo lista con información adicional de cada archivo.

    • -a -> Muestra archivos ocultos en el directorio actual.

Podemos usar varios parámetros a la vez.

  • rm -> Elimina archivos.

    • -r -> Para eliminar carpetas, también podemos usar rmdir aunque solo elimina carpetas vacías.

Podemos eliminar patrones usando * ya sea al principio para indicar que borre todo lo que termine en, o al final para borrar todo lo que empiece con, también podemos usar * al principio y final.

  • touch -> Crea uno o una secuencia de archivos rápidamente a través de la terminal (Linux).

touch file{1..4}.txt
.rw-r--r-- victor victor   0 B  Sun Dec 22 18:24:54 2024 file1.txt
.rw-r--r-- victor victor   0 B  Sun Dec 22 18:24:54 2024 file2.txt
.rw-r--r-- victor victor   0 B  Sun Dec 22 18:24:54 2024 file3.txt
.rw-r--r-- victor victor   0 B  Sun Dec 22 18:24:54 2024 file4.txt
  • cp -> Usa este comando para copiar directorios completos, archivos y subcarpetas internas.

    • -r -> Indica que haga lo mismo con archivos y subcarpetas.

cp -r directorio/ ruta_de_destino/nombre_copia
  • mv -> Mueve un directorio o archivo (lo elimina de su ubicación original) y lo coloca en una nueva ubicación.

    • -r -> Indica que haga lo mismo con archivos y subcarpetas.

mv directorio/ ruta_de_destino/

Ejemplo 1: Mover el directorio a un nivel superior sin cambiarle el nombre.

mv img/ ../../asstes

Ejemplo 2: Mover el directorio img a una carpeta interna (files) cambiándole el nombre a images

mv img/ files/images

El cambio de nombre depende si al final pone un nombre de una carpeta existente o nueva, si es existente se moverá hay con el mismo nombre, si es nueva mv renombrara la carpeta o archivo, ademas si solo queremos renombrar y no mover, solo indicamos el comando mv el archivo y el nuevo nombre.

mv img images

Estructura de carpetas en Linux

En el directorio raíz /, cada archivo y directorio comienza desde aquí. Estas son algunas de las carpetas más importantes que debemos conocer.

  • /boot: Archivos necesarios para el arranque del sistema (Kernel y grup).

  • /root: Directorio personal del usuario administrador.

  • /bin: Archivos binarios ejecutables necesarios para el funcionamiento del sistema.

  • /opt: Contiene software de aplicación de terceros como Chrome, Spotify, etc.

  • /media: Directorio de montaje temporal para dispositivos extraíbles como CD, cámaras, USB, etc.

  • /tmp: Almacena archivos temporales que se eliminan cada vez que se reinicia el sistema.

  • /proc: Almacena un sistema de archivos virtual y brinda información sobre los procesos y aplicaciones que se están ejecutando.

  • /etc: Archivos de configuración de aplicaciones. Inicio, apagado, detención de scripts, etc.

  • /home: Directorios de inicio para que los usuarios almacenen sus archivos personales.

  • /mnt: Almacena los puntos de montaje de diversos dispositivos, como los discos duros externos.

  • /srv: Almacena directorios y datos de los servidores (servidor web, FTP, etc) instalados en el sistema.

  • /var: Contiene archivos de registro, bloqueo, spool, correo y tmp.

/dev/null -> Es por decirlo así como un agujero negro, se usa generalmente para redirigir salida de comandos que dan error o para no ver cierta información en pantalla.

PreviousHereBash

Last updated 4 months ago

🐧