17 Comandos SSH esenciales que debes conocer 

Secure Shell (SSH) es una potente herramienta utilizada para acceder y gestionar servidores remotos de forma segura. 

Tanto si eres un principiante como un usuario experimentado, dominar estos 17 comandos básicos de SSH mejorará tu eficacia y destreza a la hora de gestionar tus servidores con eficacia. 

Vamos a sumergirnos y explorar los comandos esenciales con los que todo usuario de SSH debería estar familiarizado.

Cómo acceder al servidor remoto

Antes de empezar, asegúrate de que tienes acceso a un servidor remoto. Si tienes un plan VPS de Hostinger, los datos de acceso se encuentran en la pestaña Servidores de hPanel. 

Sin embargo, si utilizas nuestro alojamiento web compartido, tienes que ir a Hosting -> Avanzado -> Acceso SSH.

Consejo profesional

SSH son las siglas de Secure Shell, un protocolo utilizado para conectarse de forma segura a un servidor o sistema remoto. Si quieres saber más sobre él, tenemos un tutorial detallado sobre cómo funciona SSH y cómo configurar claves SSH.

Ahora vamos a empezar a acceder a tu servidor remoto:

  1. Hay dos métodos recomendados para establecer una conexión SSH:
  • Utilizando un cliente SSH (PuTTY). Te pedirá que introduzcas la IP del servidor y el número de puerto en los campos correspondientes. 
Ajustes de Putty
  • Utiliza el símbolo del sistema integrado (Windows) o el intérprete de comandos terminal (Linux, macOS). Tendrás que escribir: ssh usuario@serverip. Recuerda sustituir “usuario” por tu nombre de usuario real y “serverip” por la dirección IP dedicada o compartida de tu servidor.
  1. Cuando pulses el botón Abrir en PuTTY o introduzcas el comando en el terminal, se te pedirá una contraseña. Si es la primera vez que te conectas al servidor, es posible que aparezca un mensaje de advertencia, indicándote que no se reconoce el servidor. Pulsa para continuar.

Ya está. Ahora estás conectado al servidor ssh y puedes empezar a ejecutar comandos SSH.

Lista de comandos SSH básicos

En esta parte, repasaremos los comandos SSH más conocidos, con sus sintaxis y opciones útiles. Aquí tienes un vistazo rápido a los comandos SSH básicos que cubriremos en este artículo:

Comando SSHFunción
lsMostrar el contenido del directorio (lista los nombres de los archivos).
cdCambiar directorio.
mkdirCrear una nueva carpeta (directorio).
touchCrear un nuevo archivo.
rmEliminar un archivo.
catMostrar el contenido de un archivo.
pwdMuestra el directorio actual (ruta completa hacia donde te encuentras en este momento).
cpCopiar archivo/carpeta.
mvMover archivo/carpeta.
grepBuscar una frase concreta en archivos/líneas.
encuentraBusca archivos y directorios.
vi/nanoEditores de texto.
historyMostrar los últimos 50 comandos utilizados.
clearBorrar la pantalla del terminal.
tarCrear y descomprimir archivos comprimidos.
wgetDescargar archivos de Internet.
duObtener el tamaño del archivo.

1. Comando ls

Este comando SSH se utiliza para listar todos los archivos y directorios. Después de introducir ls, verás una salida parecida a ésta:

Comando ls de SSH

También hay algunas opciones útiles que puedes combinar con él:

  • -l: muestra los detalles de los archivos, como el tamaño, la fecha y hora de modificación, el propietario y los permisos.
  • -a: muestra los archivos y directorios ocultos.

2. Comando cd

cd (cambiar directorio) es el comando que utilizamos para saltar entre directorios. Es un comando bastante sencillo: escribe cd seguido del nombre del directorio:

cd [directorio]

Así, si quieres entrar en el directorio raíz de tu servidor, puedes escribir:

cd /home

También puedes escribir la ruta completa de un directorio determinado si se encuentra a varios niveles de profundidad. Por ejemplo:

cd /home/DirectorioDePruebas/OtroDirectorio

Ahora estás en el OtroDirectorio.

Para retroceder un nivel, basta con introducir “..” (dos puntos) después del comando cd. Lo mejor es que puedes retroceder más añadiendo otros dos puntos y separándolos con una barra oblicua (/):

cd ../..

Al introducir esta línea, te encuentras de nuevo en el directorio home.

3. Comando mkdir

Puedes utilizar el comando mkdir (crear directorio) para crear un directorio. Esta es la sintaxis:

mkdir [nombredecarpeta]

Supongamos que quieres crear una nueva carpeta llamada “micarpeta“. Tendrás que escribir:

mkdir micarpeta

4. Comando touch

El comando touch en SSH se utiliza para crear un nuevo archivo. Ésta es la sintaxis:

touch [nombredearchivo]

Si quieres crear un archivo .txt llamado “miarchivo“, esto es lo que tienes que escribir:

touch miarchivo.txt.

La extensión del archivo puede ser la que quieras. Incluso puedes crear un archivo sin extensión.

5. Comando rm

El comando rm elimina un archivo o directorio elegido. Para eliminar un archivo, introduce:

rm [nombredearchivo]

Por ejemplo, si quieres eliminar miarchivo.txt, simplemente ejecuta:

rm miarchivo.txt

Para eliminar una carpeta, debes utilizar la opción -r para eliminar todos los archivos y subcarpetas que contenga:

rm -r home/hostinger/micarpeta

6. Comando cat

El comando cat se utiliza para mostrar el contenido de un archivo. A continuación se muestra la sintaxis:

cat [nombredearchivo]

También te permite crear un nuevo archivo fusionando varios archivos. Por ejemplo:

cat info.txt info2.txt > mergedinfo.text

Al ejecutar esta línea, el contenido de info.txt e info2.txt se guardará en mergedinfo.txt.

7. Comando pwd

pwd es un comando sencillo que muestra la ruta completa de tu directorio de trabajo. Una vez introducido, deberías ver un resultado como éste:

home/usuario/public_html

El comando pwd puede resultarte muy útil cuando accedes a tu cuenta de alojamiento web a través de SSH. A menudo, los servidores compartidos no te indican el directorio en el que te encuentras.

8. Comando cp

Este comando SSH copiará archivos y carpetas. La sintaxis es:

cp [opciones] [origen] [destino]

El [origen] es el archivo o carpeta que quieres copiar y el [destino] es el duplicado.

Supongamos que tienes miarchivo.txt en tu directorio de trabajo y quieres hacer una copia de él. La sintaxis sería:

cp miarchivo.txt miarchivo2.txt

Si quieres hacer una copia en una carpeta diferente, ejecuta el siguiente comando:

cp /home/hostinger/miarchivo.txt /home/etc/

Ten cuidado al escribir el nombre del destino. Si proporcionas dos nombres de archivo, el comando cp copiará el contenido del archivo de origen en el de destino.

Así, el archivo de destino se sobrescribirá sin ninguna advertencia. Sin embargo, si el archivo de destino no existe, el comando creará un archivo nuevo.

Las [opciones] no son obligatorias. Sin embargo, hay varias opciones que puedes utilizar:

  • -f: si no tienes permiso de escritura en el archivo de destino, se borrará y el comando creará un archivo nuevo
  • -u: copia el archivo de origen si es más nuevo que el de destino.
  • -n: no sobrescribirá un archivo existente.
  • -a: archiva los ficheros.

A diferencia de la duplicación de archivos, la copia de carpetas requiere que utilices la opción -R (recursiva). Esta opción permite copiar todas las carpetas y archivos que contenga.

cp -R /home/hostinger/micarpeta /home/etc/

9. Comando mv

Este comando funciona de forma similar a cp. Sin embargo, el comando mv moverá el archivo o carpeta en lugar de copiarlo. Esta es la sintaxis:

mv [origen] [destino]

Supongamos que queremos mover miarchivo.txt de /home/hostinger/ftp a /home/hostinger/micarpeta/. El comando debería ser:

mv /home/hostinger/ftp/miarchivo.txt /home/hostinger/micarpeta

A diferencia del comando cp, no necesitas la opción -R para mover una carpeta. Por ejemplo:

mv /home/hostinger/ftp/ /home/hostinger/micarpeta/

Esto moverá automáticamente todos los archivos y subcarpetas dentro de ftp a micarpeta.

10. Comando grep

El comando grep busca una cadena determinada en los archivos. Por ejemplo:

grep 'línea' info.txt

El comando anterior buscaría ‘línea’ en un archivo llamado “info.txt“. Lo mejor es que el comando imprimirá toda la línea que contenga el texto buscado.

Comando grep

Ten en cuenta que este comando distingue entre mayúsculas y minúsculas. Si quieres ignorar las mayúsculas y minúsculas, utiliza la opción -i.

11. Comando find

Introducimos el comando find SSH para buscar un archivo o archivos que cumplan los criterios dados (nombre, tamaño, tipo de archivo, etc.). La sintaxis básica es la siguiente:

find [directorio inicial] [opciones] [término de búsqueda]

El [directorio inicial] es el lugar donde te gustaría empezar tu proceso de búsqueda. Hay tres opciones principales:

  • / (barra oblicua): busca en todo el sistema
  • . (punto): busca en el directorio de trabajo
  • ~ (tilde): busca en el directorio principal

[Opciones] es un argumento adicional que puedes utilizar para afinar tu búsqueda. Algunas de las opciones más populares son:

  • -name: busca archivos basándote en sus nombres
  • -user: busca archivos que pertenezcan a un usuario determinado
  • -size: busca archivos en función de su tamaño

El [término de búsqueda] es la palabra clave o el número que utilizas para buscar archivos.

Mira este ejemplo:

find . -name "índice"

Este comando devolverá todos los archivos que tengan la palabra “índice” en su nombre. Y como utilizamos “.” (punto), el comando sólo buscará en el directorio de trabajo.

También tenemos un gran tutorial que explica en profundidad el comando find de SSH.

12. Comando vi/nano

Vi y Nano son dos populares editores de texto que puedes utilizar en la línea de comandos. Para abrir un archivo utilizando Vi o Nano, sólo tienes que introducir:

vi [nombredearchivo]

o

nano [nombredearchivo]

Si el archivo especificado no existe, ambos editores de texto lo crearán automáticamente por ti.

Por desgracia, algunas distribuciones de Linux no ofrecen Nano por defecto. No te preocupes, puedes leer nuestra guía sobre cómo instalar y utilizar Nano.

13. Comando history

Se utiliza para mostrar los últimos comandos utilizados. Debes introducir un número para limitar los resultados mostrados. Por ejemplo:

history 20

Como probablemente habrás adivinado, el ejemplo mostrará los 20 comandos introducidos más recientemente.

14. Comando borrar

La función del comando borrar es sencilla: borra todo el texto de la pantalla del terminal.

15. Comando tar

tar es un comando SSH que crea o extrae archivos .tar.gz. Es muy popular porque la mayoría de los binarios de software de terceros están en formato .tar.gz.

Para archivar una carpeta en formato .tar.gz, utiliza el siguiente comando:

tar -cvzf NombreArchivo.tar.gz /path/to/directorio

Para descomprimir un archivo .tar.gz, introduce este comando:

tar -xvzf NombreArchivo.tar.gz

Observa que ambos comandos utilizan opciones diferentes de cuatro caracteres: cvzf y xvzf.  Cada letra representa una instrucción específica:

  • x indica a tar que extraiga los archivos
  • c indica a tar que cree un archivo
  • v significa detallado. Esta opción indica a tar que muestre todos los nombres de archivo procesados por el comando.
  • z ordena a tar que descomprima el archivo
  • f indica a tar que estás proporcionando el nombre del archivo

16. Comando wget

wget se utiliza para descargar archivos de Internet. Por ejemplo, para obtener un archivo de un sitio web y almacenarlo en nuestro directorio actual, utilizaremos:

wget http://fileurl/nombredearchivo.ext

Si quieres descargar varios archivos, pon todas las URL en un archivo y utiliza la opción -i.

Digamos que el archivo que contiene los enlaces se llama descargas.txt. El comando tendrá el siguiente aspecto:

wget -i descargas.txt

17. Comando du

Puedes utilizar el comando du (utilización del disco) para ver el tamaño de los archivos y carpetas de un directorio concreto:

du [rutadeldirectorio]

Lamentablemente, el resumen mostrará números de bloque de disco en lugar de bytes, kilobytes y megabytes. Por tanto, para mostrarlo en un formato legible por humanos, debes insertar la opción -h después del comando du:

du -h /home

Los resultados serán más comprensibles:

Comando du

Consulta este artículo para saber más sobre el comando du.

Conclusión

Aprender comandos SSH es crucial para gestionar un servidor Linux o VPS. Es la forma más eficaz de navegar por tu sistema y modificar archivos o carpetas.

Afortunadamente, has aprendido 17 comandos SSH esenciales que todo webmaster debe conocer. Ahora puedes realizar fácilmente tareas básicas en tu máquina remota, como crear archivos, borrarlos, saltar entre directorios, etc.

Esperamos que esta guía te haya sido de utilidad. Si tienes algún comentario o pregunta, escríbela en la sección de abajo. ¡Buena suerte!

Author
El autor

Diego Vargas

Diego es comunicador social, especialista en publicidad digital que trabaja constantemente en mejorar sus conocimientos de marketing digital, enfocándose en contenido y SEO. Idiomas, series, libros y cursos en internet son sus hobbies principales, además de los deportes. Este es su perfil de LinkedIn.