{"id":41560,"date":"2024-08-16T04:06:21","date_gmt":"2024-08-16T02:06:21","guid":{"rendered":"\/tutoriales\/?p=41560"},"modified":"2026-09-09T11:34:01","modified_gmt":"2026-09-09T09:34:01","slug":"comandos-ssh-esenciales","status":"publish","type":"post","link":"\/co\/tutoriales\/comandos-ssh-esenciales\/","title":{"rendered":"Comandos b\u00e1sicos de SSH: ejemplos, opciones y hoja de referencia r\u00e1pida"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Los comandos SSH te permiten conectarte de forma segura a un servidor remoto, ejecutar comandos de Linux, transferir archivos, gestionar claves SSH y solucionar problemas de acceso desde la l&iacute;nea de comandos.<\/p><p class=\"wp-block-paragraph\">Las instrucciones se env&iacute;an mediante el protocolo Secure Shell, que cifra todo lo que se transmite entre tu ordenador y el servidor. As&iacute;, puedes iniciar sesi&oacute;n en un VPS, editar archivos de configuraci&oacute;n, reiniciar servicios y transferir backups sin exponer tu contrase&ntilde;a.<\/p><p class=\"wp-block-paragraph\">Una vez que conozcas la sintaxis y las principales opciones de SSH, podr&aacute;s conectarte a un servidor y ejecutar comandos de Linux. A partir de ah&iacute;, podr&aacute;s gestionar claves SSH, transferir archivos con SCP, SFTP y rsync, guardar los datos del servidor en un archivo de configuraci&oacute;n, crear t&uacute;neles y solucionar problemas de conexi&oacute;n.<\/p><p class=\"wp-block-paragraph\">Estos son algunos de los comandos SSH m&aacute;s &uacute;tiles:<\/p><ul class=\"wp-block-list\">\n<li><strong>ssh usuario@servidor<\/strong> &ndash; se conecta a un servidor remoto.<\/li>\n\n\n\n<li><strong>ssh -p puerto usuario@servidor<\/strong> &ndash; se conecta mediante un puerto SSH personalizado.<\/li>\n\n\n\n<li><strong>ssh -i archivo_de_clave usuario@servidor<\/strong> &ndash; se conecta con una clave privada.<\/li>\n\n\n\n<li><strong>ssh usuario@servidor comando<\/strong> &ndash; ejecuta un comando remoto sin abrir una sesi&oacute;n completa.<\/li>\n\n\n\n<li><strong>ssh-keygen<\/strong> &ndash; genera claves SSH.<\/li>\n\n\n\n<li><strong>ssh-copy-id usuario@servidor<\/strong> &ndash; copia una clave p&uacute;blica en un servidor.<\/li>\n\n\n\n<li><strong>scp archivo usuario@servidor:\/ruta<\/strong> &ndash; copia archivos mediante SSH.<\/li>\n\n\n\n<li><strong>sftp usuario@servidor<\/strong> &ndash; abre una sesi&oacute;n segura de transferencia de archivos.<\/li>\n\n\n\n<li><strong>ssh -L local:host:remoto usuario@host<\/strong> &ndash; crea un t&uacute;nel SSH con reenv&iacute;o local de puertos.<\/li>\n\n\n\n<li><strong>ssh -v usuario@servidor<\/strong> &ndash; depura una conexi&oacute;n SSH.<\/li>\n<\/ul><h2 class=\"wp-block-heading\" id=\"h-que-son-los-comandos-ssh\">&iquest;Qu&eacute; son los comandos SSH?<\/h2><p class=\"wp-block-paragraph\">Los comandos SSH son instrucciones que se ejecutan para usar o configurar el protocolo Secure Shell, que cifra la conexi&oacute;n entre tu ordenador y un servidor remoto. El t&eacute;rmino engloba dos conceptos relacionados:<\/p><ul class=\"wp-block-list\">\n<li>Comandos que usan o configuran directamente <a href=\"\/co\/tutoriales\/que-es-ssh\/\">SSH<\/a>, como <strong>ssh<\/strong>, <strong>ssh-keygen<\/strong>, <strong>ssh-copy-id<\/strong>, <strong>scp<\/strong> y <strong>sftp<\/strong>. Los ejecutas en tu ordenador para iniciar una sesi&oacute;n, gestionar claves o transferir archivos.<\/li>\n\n\n\n<li>Comandos de Linux que se ejecutan despu&eacute;s de conectarte al servidor remoto, como <strong>ls<\/strong>, <strong>cd<\/strong>, <strong>cat<\/strong> y <strong>rm<\/strong>. Funcionan igual que en cualquier sistema Linux, pero act&uacute;an sobre el servidor en lugar de hacerlo en tu ordenador.<\/li>\n<\/ul><p class=\"wp-block-paragraph\">En ambos casos, el protocolo SSH cifra todo lo que env&iacute;as y recibes. Por eso puedes gestionar servidores de forma segura a trav&eacute;s de internet.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-conectarte-a-un-servidor-remoto-con-ssh\">C&oacute;mo conectarte a un servidor remoto con SSH<\/h2><p class=\"wp-block-paragraph\">Para conectarte a un servidor remoto mediante SSH, ejecuta el comando ssh seguido del nombre de usuario y del nombre de host o la direcci&oacute;n IP del servidor. Tambi&eacute;n puedes indicar un n&uacute;mero de puerto espec&iacute;fico. Esta es la sintaxis b&aacute;sica:<\/p><pre class=\"wp-block-preformatted\">ssh [opciones] usuario@host<\/pre><p class=\"wp-block-paragraph\">Por ejemplo:<\/p><pre class=\"wp-block-preformatted\">ssh -p 2222 usuario@servidor<\/pre><p class=\"wp-block-paragraph\">Cada parte del comando tiene una funci&oacute;n:<\/p><ul class=\"wp-block-list\">\n<li><strong>Nombre de usuario<\/strong> &ndash; el nombre de la cuenta con la que inicias sesi&oacute;n en el servidor, como root o admin.<\/li>\n\n\n\n<li><strong>Nombre de host<\/strong> &ndash; la direcci&oacute;n IP o el nombre de dominio del servidor, como <strong>203.0.113.10<\/strong> o <strong>srv-123.example.com<\/strong>.<\/li>\n\n\n\n<li><strong>Puerto<\/strong> &ndash; el puerto SSH del servidor. El predeterminado es el <strong>22<\/strong>, aunque muchos proveedores utilizan uno personalizado por motivos de seguridad.<\/li>\n<\/ul><p class=\"wp-block-paragraph\">Si tienes un VPS de Hostinger, encontrar&aacute;s los datos de SSH en hPanel. Ve a &ldquo;VPS&rdquo;, haz clic en &ldquo;Gestionar&rdquo; y abre la pesta&ntilde;a &ldquo;Resumen&rdquo;. En &ldquo;Detalles del VPS&rdquo; aparecen la direcci&oacute;n IP, el nombre de usuario y la contrase&ntilde;a, listos para copiar.<\/p><div class=\"wp-block-image\"><figure data-wp-context='{\"imageId\":\"6aa2b821e687f\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6aa2b821e687f\" class=\"aligncenter size-large is-resized wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2026\/08\/vps-detail-detalles-hpanel.png\/w=1024,h=1024,fit=scale-down\" alt='Secci&oacute;n \"Detalles del VPS\" en la p&aacute;gina \"Resumen\" de hPanel' class=\"wp-image-55953\" style=\"width:840px;height:auto\" title=\"hpanel-vps-overview-panelaccess\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><figure class=\"wp-block-image size-large\"><a href=\"\/co\/servidor-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,h=1024,fit=scale-down\" alt=\"\" class=\"wp-image-29287\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p class=\"wp-block-paragraph\">En macOS, Linux y Windows 10 o versiones posteriores, abre el terminal y pega el comando <strong>ssh<\/strong>. Si utilizas una versi&oacute;n anterior de Windows o prefieres un cliente gr&aacute;fico, usa <a href=\"\/co\/tutoriales\/conectar-usando-terminal-putty-ssh\/\">PuTTY para SSH<\/a> e introduce el nombre de host, el puerto y los datos de inicio de sesi&oacute;n en la ventana de sesi&oacute;n.<\/p><div class=\"wp-block-image\"><figure data-wp-context='{\"imageId\":\"6aa2b821e91ad\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6aa2b821e91ad\" class=\"aligncenter size-full is-resized wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2026\/09\/imagen1.png\/public\" alt=\"Configuraci&oacute;n de PuTTY en Windows\" class=\"wp-image-56389\" style=\"aspect-ratio:1.0716848736145443;width:650px;height:auto\" title=\"putty-config-windows\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p class=\"wp-block-paragraph\">La primera vez que te conectes, SSH mostrar&aacute; una advertencia con la huella digital del servidor para que confirmes su identidad. Escribe <strong>yes<\/strong> solo si conf&iacute;as en el servidor. La huella digital se guardar&aacute; en el archivo <strong>known_hosts<\/strong> y la advertencia no volver&aacute; a aparecer a menos que cambie la clave del servidor.<\/p><h2 class=\"wp-block-heading\" id=\"h-sintaxis-y-opciones-basicas-de-los-comandos-ssh\">Sintaxis y opciones b&aacute;sicas de los comandos SSH<\/h2><p class=\"wp-block-paragraph\">Los comandos SSH siguen una estructura sencilla: el comando <strong>ssh<\/strong>, las opciones que quieras utilizar, el usuario y el servidor y, de forma opcional, el comando que quieras ejecutar en el servidor remoto:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ssh [opciones] usuario@servidor [comando]<\/pre><p class=\"wp-block-paragraph\">Las opciones modifican el comportamiento de SSH. Sirven, por ejemplo, para utilizar un puerto personalizado o una clave SSH concreta, mostrar informaci&oacute;n detallada para depurar la conexi&oacute;n o redirigir puertos. Estas son algunas de las m&aacute;s &uacute;tiles para empezar:<\/p><figure tabindex=\"0\" class=\"wp-block-table\"><table><thead><tr><th><strong>Opci&oacute;n<\/strong><\/th><th><strong>Para qu&eacute; sirve<\/strong><\/th><th><strong>Ejemplo<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>-p<\/strong><\/td><td>Se conecta mediante un puerto SSH personalizado. Es &uacute;til si has cambiado el puerto SSH por motivos de seguridad.<\/td><td><strong>ssh -p 2222 usuario@servidor<\/strong><\/td><\/tr><tr><td><strong>-i<\/strong><\/td><td>Utiliza un archivo de clave privada concreto.<\/td><td><strong>ssh -i ~\/.ssh\/id_ed25519 usuario@servidor<\/strong><\/td><\/tr><tr><td><strong>-v<\/strong><\/td><td>Activa el modo detallado para depurar la conexi&oacute;n. A&ntilde;ade m&aacute;s <strong>v<\/strong> para obtener m&aacute;s informaci&oacute;n (<strong>-vv<\/strong>, <strong>-vvv<\/strong>).<\/td><td><strong>ssh -v usuario@servidor<\/strong><\/td><\/tr><tr><td><strong>-C<\/strong><\/td><td>Comprime los datos durante la sesi&oacute;n, lo que puede ayudar en conexiones lentas.<\/td><td><strong>ssh -C usuario@servidor<\/strong><\/td><\/tr><tr><td><strong>-4 o -6<\/strong><\/td><td>Fuerza el uso de IPv4 o IPv6.<\/td><td><strong>ssh -4 usuario@servidor<\/strong><\/td><\/tr><tr><td><strong>-J<\/strong><\/td><td>Se conecta a trav&eacute;s de un servidor de salto.<\/td><td><strong>ssh -J jump@bastion user@target<\/strong><\/td><\/tr><tr><td><strong>-L<\/strong><\/td><td>Configura el reenv&iacute;o de puertos local.<\/td><td><strong>ssh -L 8080:localhost:80 usuario@servidor<\/strong><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Puedes combinar varias opciones. Por ejemplo, <strong>ssh -p 2222 -i ~\/.ssh\/id_ed25519 usuario@servidor<\/strong> se conecta mediante un puerto personalizado y utiliza una clave concreta.<\/p><h2 class=\"wp-block-heading\" id=\"h-comandos-basicos-de-linux-que-puedes-usar-despues-de-conectarte-por-ssh\">Comandos b&aacute;sicos de Linux que puedes usar despu&eacute;s de conectarte por SSH<\/h2><p class=\"wp-block-paragraph\">Una vez que hayas iniciado sesi&oacute;n, utilizar&aacute;s <a href=\"\/co\/tutoriales\/linux-comandos\/?utm_source=chatgpt.com\">comandos de Linux<\/a> para desplazarte por el servidor, gestionar archivos y comprobar el estado del sistema. Estos comandos se ejecutan en el servidor remoto, no en tu ordenador. A continuaci&oacute;n, encontrar&aacute;s los m&aacute;s habituales agrupados seg&uacute;n su funci&oacute;n.<\/p><h3 class=\"wp-block-heading\">Navegaci&oacute;n<\/h3><p class=\"wp-block-paragraph\">Despu&eacute;s de iniciar sesi&oacute;n, lo primero es saber en qu&eacute; directorio te encuentras y c&oacute;mo desplazarte de uno a otro.<\/p><ul class=\"wp-block-list\">\n<li><strong>pwd<\/strong> muestra la ruta completa del directorio actual. Es especialmente &uacute;til como primer comando cuando accedes a un servidor que no conoces.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">pwd<\/pre><ul class=\"wp-block-list\">\n<li><strong>ls<\/strong> muestra los archivos y directorios del directorio actual. A&ntilde;ade <strong>-la<\/strong> para ver tambi&eacute;n los archivos ocultos, los permisos, los propietarios y los tama&ntilde;os. Esta informaci&oacute;n resulta &uacute;til al revisar archivos de configuraci&oacute;n o directorios de registros.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">ls -la \/var\/log<\/pre><ul class=\"wp-block-list\">\n<li><strong>cd<\/strong> cambia el directorio actual. Usa <strong>cd ..<\/strong> para subir un nivel, <strong>cd ~<\/strong> para ir a tu directorio principal y <strong>cd &ndash;<\/strong> para volver al directorio anterior.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">cd \/var\/www\/html<\/pre><h3 class=\"wp-block-heading\">Creaci&oacute;n de archivos y directorios<\/h3><p class=\"wp-block-paragraph\">A menudo tendr&aacute;s que crear directorios para proyectos, backups o archivos de configuraci&oacute;n.<\/p><ul class=\"wp-block-list\">\n<li><strong>mkdir<\/strong> crea un directorio. A&ntilde;ade <strong>-p<\/strong> para crear directorios anidados de una sola vez sin que se produzca un error si alguno de los directorios superiores ya existe.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">mkdir -p \/home\/user\/backups\/2025<\/pre><ul class=\"wp-block-list\">\n<li><strong>touch<\/strong> crea un archivo vac&iacute;o o actualiza la marca de tiempo de uno existente. Resulta &uacute;til para crear archivos provisionales o comprobar los permisos de escritura.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">touch \/var\/www\/html\/test.txt<\/pre><h3 class=\"wp-block-heading\">Visualizaci&oacute;n y edici&oacute;n de archivos<\/h3><p class=\"wp-block-paragraph\">Al solucionar problemas en un servidor, es habitual consultar registros y editar archivos de configuraci&oacute;n.<\/p><ul class=\"wp-block-list\">\n<li><strong>cat<\/strong> muestra todo el contenido de un archivo en pantalla. Es adecuado para archivos cortos. Para registros extensos, utiliza <strong>less<\/strong> para poder desplazarte por el contenido.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">cat \/etc\/hostname<\/pre><ul class=\"wp-block-list\">\n<li><strong>less<\/strong> abre un archivo y permite desplazarte por su contenido. Usa las teclas de flecha o <strong>Re P&aacute;g<\/strong> y <strong>Av P&aacute;g<\/strong> para moverte, <strong>\/palabra<\/strong> para buscar y <strong>q<\/strong> para salir.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">less \/var\/log\/nginx\/error.log<\/pre><ul class=\"wp-block-list\">\n<li><strong>tail<\/strong> muestra las &uacute;ltimas l&iacute;neas de un archivo. A&ntilde;ade <strong>-f<\/strong> para ver las nuevas l&iacute;neas a medida que se escriben, una forma habitual de consultar registros en tiempo real.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">tail -f \/var\/log\/nginx\/access.log<\/pre><ul class=\"wp-block-list\">\n<li><strong>head<\/strong> muestra las primeras l&iacute;neas de un archivo. Resulta &uacute;til para consultar el inicio de archivos CSV o de registro grandes sin cargar todo su contenido.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">head -n 20 \/var\/log\/syslog<\/pre><ul class=\"wp-block-list\">\n<li><strong>nano<\/strong> abre un editor de texto sencillo directamente en el terminal. Pulsa <strong>Ctrl+O<\/strong> para guardar y <strong>Ctrl+X<\/strong> para salir. Es uno de los editores m&aacute;s sencillos para principiantes.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">nano \/etc\/nginx\/nginx.conf<\/pre><h3 class=\"wp-block-heading\">Gesti&oacute;n de archivos<\/h3><p class=\"wp-block-paragraph\">Estos comandos sirven para copiar, mover, renombrar y eliminar archivos. Algunos pueden sobrescribir datos sin pedir confirmaci&oacute;n, as&iacute; que presta atenci&oacute;n antes de ejecutarlos.<\/p><ul class=\"wp-block-list\">\n<li><strong>cp<\/strong> copia un archivo o directorio. A&ntilde;ade <strong>-r<\/strong> para copiar un directorio y todo su contenido, o <strong>-i<\/strong> para pedir confirmaci&oacute;n antes de sobrescribir archivos.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">cp -r \/var\/www\/html \/var\/www\/html_backup<\/pre><ul class=\"wp-block-list\">\n<li><strong>mv<\/strong> mueve un archivo o le cambia el nombre. No hay un comando espec&iacute;fico para cambiar el nombre de los archivos en Linux. Ten cuidado: si el archivo de destino ya existe, <strong>mv<\/strong> lo sobrescribe sin avisar.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">mv config.old.conf config.bak<\/pre><ul class=\"wp-block-list\">\n<li><strong>rm<\/strong> elimina archivos. A&ntilde;ade <strong>-r<\/strong> para eliminar un directorio y todo su contenido. <strong>rm<\/strong> no env&iacute;a los archivos a la papelera, sino que los elimina inmediatamente.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">rm \/tmp\/old-log.txt<\/pre><p>    <div class=\"announcement-block announcement-block--warning\">\n        <span class=\"announcement-block__heading\">\n            <svg width=\"24\" height=\"26\" viewBox=\"0 0 24 26\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                d=\"M12 23.5C17.799 23.5 22.5 18.799 22.5 13C22.5 7.20101 17.799 2.5 12 2.5C6.20101 2.5 1.5 7.20101 1.5 13C1.5 18.799 6.20101 23.5 12 23.5ZM13.637 8.65198C13.637 7.74791 12.9041 7.01501 12 7.01501C11.0959 7.01501 10.363 7.74791 10.363 8.65198C10.5335 10.5375 10.875 14.383 10.875 14.383C10.875 15.0043 11.3787 15.508 12 15.508C12.6213 15.508 13.125 15.0043 13.125 14.383V14.38L13.637 8.65198ZM11.9927 16.714C11.3714 16.714 10.8677 17.2177 10.8677 17.839C10.8677 18.4603 11.3714 18.964 11.9927 18.964H12.0073C12.6286 18.964 13.1323 18.4603 13.1323 17.839C13.1323 17.2177 12.6286 16.714 12.0073 16.714H11.9927Z\"\n                fill=\"#BE1025\"\/>\n            <\/svg>\n            Warning        <\/span>\n        <p class=\"announcement-block__content\">\n            Nunca ejecutes <strong>rm -rf \/<\/strong> ni <strong>rm -rf \/*<\/strong>. Estos comandos eliminan todos los archivos del servidor. Comprueba siempre la ruta antes de ejecutar <strong>rm -r<\/strong>, especialmente si utilizas comodines como <strong>*<\/strong>.        <\/p>\n    <\/div>\n\n    \n\n\n\n<\/p><h3 class=\"wp-block-heading\">B&uacute;squeda<\/h3><p class=\"wp-block-paragraph\">Encontrar r&aacute;pidamente un archivo o una l&iacute;nea concreta dentro de un archivo grande evita tener que revisar todo el contenido manualmente.<\/p><ul class=\"wp-block-list\">\n<li><strong>find<\/strong> busca archivos por nombre, tipo, tama&ntilde;o o fecha. Es una de las herramientas de b&uacute;squeda m&aacute;s flexibles de Linux.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">find \/var\/www -name \"*.php\" -mtime -7<\/pre><ul class=\"wp-block-list\">\n<li><strong>grep<\/strong> busca una palabra o un patr&oacute;n dentro de los archivos. A&ntilde;ade <strong>-r<\/strong> para buscar de forma recursiva y <strong>-i<\/strong> para ignorar la diferencia entre may&uacute;sculas y min&uacute;sculas.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">grep -ri \"error\" \/var\/log\/nginx<\/pre><h3 class=\"wp-block-heading\">Archivos comprimidos y descargas<\/h3><p class=\"wp-block-paragraph\">A menudo tendr&aacute;s que comprimir archivos para crear backups o descargar instaladores de internet.<\/p><ul class=\"wp-block-list\">\n<li><strong>tar<\/strong> crea y extrae archivos comprimidos. Uno de sus usos m&aacute;s habituales es <strong>tar -czvf<\/strong> para crear un archivo <strong>.tar.gz<\/strong> y <strong>tar -xzvf<\/strong> para extraerlo.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">tar -czvf backup.tar.gz \/var\/www\/html<\/pre><ul class=\"wp-block-list\">\n<li><strong>wget<\/strong> descarga archivos desde una URL directamente al servidor.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">wget https:\/\/example.com\/installer.sh<\/pre><ul class=\"wp-block-list\">\n<li><strong>curl<\/strong> tambi&eacute;n permite descargar archivos y es una herramienta habitual para probar API y respuestas HTTP.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">curl -O https:\/\/example.com\/file.zip<\/pre><h3 class=\"wp-block-heading\">Comprobaciones del sistema<\/h3><p class=\"wp-block-paragraph\">Si algo falla, conviene comprobar el espacio en disco, los procesos en ejecuci&oacute;n y los servicios activos.<\/p><ul class=\"wp-block-list\">\n<li><strong>df<\/strong> muestra el espacio utilizado y disponible en cada sistema de archivos montado. A&ntilde;ade <strong>-h<\/strong> para mostrar los tama&ntilde;os en un formato m&aacute;s f&aacute;cil de leer, como GB o MB.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">df -h<\/pre><ul class=\"wp-block-list\">\n<li><strong>du<\/strong> muestra el tama&ntilde;o de los archivos y directorios. <strong>du -sh *<\/strong> permite identificar r&aacute;pidamente qu&eacute; directorios ocupan m&aacute;s espacio.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">du -sh \/var\/log\/*<\/pre><ul class=\"wp-block-list\">\n<li><strong>top<\/strong> muestra los procesos en ejecuci&oacute;n en tiempo real, ordenados por uso de CPU. Pulsa <strong>q<\/strong> para salir. Si prefieres una interfaz m&aacute;s visual, puedes instalar y utilizar <strong>htop<\/strong>.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">top<\/pre><ul class=\"wp-block-list\">\n<li><strong>systemctl<\/strong> controla los servicios en los sistemas que utilizan systemd, como la mayor&iacute;a de las distribuciones modernas de Linux. Sirve para iniciar, detener y reiniciar servicios como NGINX o MySQL, adem&aacute;s de comprobar su estado.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">systemctl status nginx<\/pre><h2 class=\"wp-block-heading\" id=\"h-comandos-para-gestionar-claves-ssh\">Comandos para gestionar claves SSH<\/h2><p class=\"wp-block-paragraph\">Las claves SSH son un par de archivos que permiten iniciar sesi&oacute;n sin contrase&ntilde;a. La clave privada permanece en tu ordenador y la p&uacute;blica se guarda en el servidor. Cuando te conectas, el servidor utiliza la clave p&uacute;blica para comprobar que tu ordenador dispone de la clave privada correspondiente. Este m&eacute;todo es m&aacute;s seguro que utilizar contrase&ntilde;as, ya que una clave SSH no se puede adivinar mediante ataques de fuerza bruta como una contrase&ntilde;a.<\/p><p class=\"wp-block-paragraph\">Puedes <a href=\"\/co\/tutoriales\/como-configurar-claves-ssh\/\">configurar claves SSH<\/a> en tres pasos.<\/p><h3 class=\"wp-block-heading\">Genera un par de claves SSH<\/h3><p class=\"wp-block-paragraph\">Utiliza <strong>ssh-keygen<\/strong> para crear un par de claves SSH. <strong>Ed25519<\/strong> es una opci&oacute;n moderna, m&aacute;s r&aacute;pida y segura que las claves RSA antiguas:<\/p><pre class=\"wp-block-preformatted\">ssh-keygen -t ed25519 -C \"your_email@example.com\"<\/pre><p class=\"wp-block-paragraph\">El comando te pregunta d&oacute;nde quieres guardar la clave. Pulsa <strong>Enter<\/strong> para utilizar la ubicaci&oacute;n predeterminada <strong>~\/.ssh\/id_ed25519<\/strong>. Tambi&eacute;n puedes a&ntilde;adir una frase de contrase&ntilde;a como protecci&oacute;n adicional.<\/p><h3 class=\"wp-block-heading\">Copia la clave p&uacute;blica en el servidor<\/h3><p class=\"wp-block-paragraph\"><strong>ssh-copy-id<\/strong> es la forma m&aacute;s sencilla de instalar la clave p&uacute;blica en un servidor remoto.<\/p><pre class=\"wp-block-preformatted\">ssh-copy-id usuario@servidor<\/pre><p class=\"wp-block-paragraph\">Despu&eacute;s, puedes <a href=\"\/co\/tutoriales\/configurar-ssh-sin-contrasena-linux\/\">configurar SSH sin contrase&ntilde;a<\/a> e iniciar sesi&oacute;n sin tener que introducir tu contrase&ntilde;a.<\/p><h3 class=\"wp-block-heading\">Con&eacute;ctate con una clave privada concreta<\/h3><p class=\"wp-block-paragraph\">Si tienes varias claves, utiliza <strong>-i<\/strong> para indicar cu&aacute;l quieres usar.<\/p><pre class=\"wp-block-preformatted\">ssh -i ~\/.ssh\/id_ed25519 usuario@servidor<\/pre><h3 class=\"wp-block-heading\">Gestiona las claves con ssh-agent<\/h3><p class=\"wp-block-paragraph\"><strong>ssh-agent<\/strong> mantiene las claves descifradas en memoria para que no tengas que escribir la frase de contrase&ntilde;a cada vez que te conectes.<\/p><pre class=\"wp-block-preformatted\">eval \"$(ssh-agent -s)\"<br><br>ssh-add ~\/.ssh\/id_ed25519<\/pre><p class=\"wp-block-paragraph\">Cuando compruebes que las claves funcionan correctamente, puedes desactivar el inicio de sesi&oacute;n con contrase&ntilde;a mediante SSH para impedir los intentos de acceso mediante contrase&ntilde;a.<\/p><p>    <div class=\"announcement-block announcement-block--warning\">\n        <span class=\"announcement-block__heading\">\n            <svg width=\"24\" height=\"26\" viewBox=\"0 0 24 26\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                d=\"M12 23.5C17.799 23.5 22.5 18.799 22.5 13C22.5 7.20101 17.799 2.5 12 2.5C6.20101 2.5 1.5 7.20101 1.5 13C1.5 18.799 6.20101 23.5 12 23.5ZM13.637 8.65198C13.637 7.74791 12.9041 7.01501 12 7.01501C11.0959 7.01501 10.363 7.74791 10.363 8.65198C10.5335 10.5375 10.875 14.383 10.875 14.383C10.875 15.0043 11.3787 15.508 12 15.508C12.6213 15.508 13.125 15.0043 13.125 14.383V14.38L13.637 8.65198ZM11.9927 16.714C11.3714 16.714 10.8677 17.2177 10.8677 17.839C10.8677 18.4603 11.3714 18.964 11.9927 18.964H12.0073C12.6286 18.964 13.1323 18.4603 13.1323 17.839C13.1323 17.2177 12.6286 16.714 12.0073 16.714H11.9927Z\"\n                fill=\"#BE1025\"\/>\n            <\/svg>\n            Warning        <\/span>\n        <p class=\"announcement-block__content\">\n            El archivo de la clave privada equivale a una contrase&ntilde;a. No lo compartas, lo env&iacute;es por email, lo pegues en un chat ni lo subas a un repositorio p&uacute;blico. Si crees que una clave privada ha quedado expuesta, elimina la clave p&uacute;blica correspondiente de todos los servidores donde est&eacute; instalada y genera un par nuevo.        <\/p>\n    <\/div>\n\n    \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-como-ejecutar-comandos-remotos-mediante-ssh\">C&oacute;mo ejecutar comandos remotos mediante SSH<\/h2><p class=\"wp-block-paragraph\">Puedes ejecutar un &uacute;nico comando en un servidor remoto sin abrir una sesi&oacute;n interactiva completa. Solo tienes que a&ntilde;adirlo al final del comando <strong>ssh<\/strong>. El servidor lo ejecutar&aacute;, mostrar&aacute; el resultado y cerrar&aacute; la conexi&oacute;n.<\/p><pre class=\"wp-block-preformatted\">ssh usuario@servidor \"df -h\"<\/pre><p class=\"wp-block-paragraph\">Esto resulta &uacute;til para hacer comprobaciones r&aacute;pidas y crear scripts. Estos son algunos ejemplos habituales:<\/p><ul class=\"wp-block-list\">\n<li>Comprobar el espacio en disco: <strong>ssh usuario@servidor &ldquo;df -h&rdquo;<\/strong>.<\/li>\n\n\n\n<li>Mostrar los archivos de un directorio: <strong>ssh usuario@servidor &ldquo;ls -la \/var\/www&rdquo;<\/strong>.<\/li>\n\n\n\n<li>Comprobar el estado de un servicio: <strong>ssh usuario@servidor &ldquo;systemctl status nginx&rdquo;<\/strong>.<\/li>\n\n\n\n<li>Reiniciar un servicio: <strong>ssh usuario@servidor &ldquo;sudo systemctl restart nginx&rdquo;<\/strong>.<\/li>\n<\/ul><p class=\"wp-block-paragraph\">Escribe los comandos m&aacute;s largos entre comillas para que el shell local los env&iacute;e como una sola cadena. Por ejemplo, <strong>ssh usuario@servidor<\/strong> &ldquo;<strong>ls -la \/var\/log<\/strong>&rdquo; ejecuta todo el comando ls -la \/var\/log en el servidor remoto en lugar de interpretarlo en el ordenador antes de enviarlo.<\/p><p class=\"wp-block-paragraph\">Si el comando contiene sus propias comillas, utiliza comillas simples en el exterior y dobles en el interior, o escapa las comillas internas con una barra invertida. Tanto <strong>ssh usuario@servidor &lsquo;grep &ldquo;error&rdquo; \/var\/log\/syslog&rsquo;<\/strong> como <strong>ssh usuario@servidor &ldquo;grep &ldquo;error&rdquo; \/var\/log\/syslog&rdquo;<\/strong> funcionan de la misma forma.<\/p><h2 class=\"wp-block-heading\" id=\"h-comandos-para-transferir-archivos-mediante-ssh\">Comandos para transferir archivos mediante SSH<\/h2><p class=\"wp-block-paragraph\">SSH no solo sirve para ejecutar comandos. Tambi&eacute;n permite transferir archivos de forma segura entre tu ordenador y el servidor. Hay tres herramientas principales, cada una indicada para un tipo de tarea.<\/p><h3 class=\"wp-block-heading\">Copia archivos con SCP<\/h3><p class=\"wp-block-paragraph\">SCP (secure copy) es una de las formas m&aacute;s sencillas de transferir un archivo o directorio mediante SSH. El <a href=\"\/co\/tutoriales\/comando-scp\/\">comando SCP<\/a> sigue un patr&oacute;n parecido al de <strong>cp<\/strong>, pero uno de los extremos de la transferencia se encuentra en un servidor remoto.<\/p><p class=\"wp-block-paragraph\">Para copiar un archivo local al servidor:<\/p><pre class=\"wp-block-preformatted\">scp report.pdf usuario@servidor:\/home\/usuario\/<\/pre><p class=\"wp-block-paragraph\">Para copiar un archivo del servidor a tu ordenador:<\/p><pre class=\"wp-block-preformatted\">scp user@host:\/var\/log\/nginx\/access.log .\/<\/pre><p class=\"wp-block-paragraph\">Para copiar un directorio completo con <strong>-r<\/strong>:<\/p><pre class=\"wp-block-preformatted\">scp -r .\/website user@host:\/var\/www\/<\/pre><p class=\"wp-block-paragraph\">Las versiones modernas de OpenSSH utilizan SFTP internamente al ejecutar <strong>scp<\/strong>, ya que OpenSSH 9.0 dej&oacute; de utilizar el protocolo SCP original de forma predeterminada. El comando y su sintaxis siguen funcionando de la misma forma.<\/p><h3 class=\"wp-block-heading\">Transfiere archivos con SFTP<\/h3><p class=\"wp-block-paragraph\">SFTP (SSH File Transfer Protocol) abre una sesi&oacute;n interactiva en la que puedes consultar, subir, descargar y cambiar el nombre de los archivos mediante comandos como <strong>ls<\/strong>, <strong>get<\/strong>, <strong>put<\/strong> y <strong>cd<\/strong>. Resulta &uacute;til cuando quieres explorar el sistema de archivos remoto antes de decidir qu&eacute; transferir.<\/p><p class=\"wp-block-paragraph\">Puedes <a href=\"\/co\/tutoriales\/como-usar-sftp\/\">usar SFTP para transferir archivos de forma segura<\/a> tanto desde la l&iacute;nea de comandos como con clientes gr&aacute;ficos como FileZilla.<\/p><pre class=\"wp-block-preformatted\">sftp usuario@servidor<\/pre><p class=\"wp-block-paragraph\">Una vez conectado, prueba estos comandos:<\/p><pre class=\"wp-block-preformatted\">ls<br><br>cd \/var\/www<br><br>get index.html<br><br>put new-page.html<br><br>exit<\/pre><h3 class=\"wp-block-heading\">Sincroniza directorios con <strong>rsync<\/strong><\/h3><p class=\"wp-block-paragraph\">Para transferencias grandes, backups peri&oacute;dicos o para mantener dos directorios sincronizados, el <a href=\"\/co\/tutoriales\/rsync-linux\/\">comando rsync<\/a> es una buena opci&oacute;n. Solo copia los archivos que han cambiado, lo que reduce el tiempo de transferencia y el uso de ancho de banda.<\/p><pre class=\"wp-block-preformatted\">rsync -avz .\/carpeta-local\/ usuario@servidor:\/var\/www\/web\/<\/pre><p class=\"wp-block-paragraph\">La opci&oacute;n <strong>-a<\/strong> conserva los permisos y las marcas de tiempo, <strong>-v<\/strong> muestra qu&eacute; se est&aacute; transfiriendo y <strong>-z<\/strong> comprime los datos durante la transferencia.<\/p><p class=\"wp-block-paragraph\">La barra al final del directorio de origen tambi&eacute;n es importante. Si la incluyes, <strong>rsync<\/strong> copia su contenido. Si no, copia el propio directorio dentro del destino.<\/p><h2 class=\"wp-block-heading\" id=\"h-atajos-con-el-archivo-de-configuracion-de-ssh\">Atajos con el archivo de configuraci&oacute;n de SSH<\/h2><p class=\"wp-block-paragraph\">El archivo de configuraci&oacute;n de SSH permite guardar datos de cada servidor, como el nombre de host, el nombre de usuario, el puerto y la ruta de la clave SSH. As&iacute;, puedes conectarte mediante un alias corto en lugar de escribir el comando completo cada vez.<\/p><p class=\"wp-block-paragraph\">El archivo se encuentra en <strong>~\/.ssh\/config<\/strong> en tu ordenador. Si no existe, cr&eacute;alo. Este es un ejemplo:<\/p><pre class=\"wp-block-preformatted\">Host myvps<br><br>HostName 203.0.113.10<br><br>User admin<br><br>Port 2222<br><br>IdentityFile ~\/.ssh\/id_ed25519<\/pre><p class=\"wp-block-paragraph\">Despu&eacute;s de guardarlo, puedes conectarte escribiendo:<\/p><pre class=\"wp-block-preformatted\">ssh myvps<\/pre><p class=\"wp-block-paragraph\">Puedes a&ntilde;adir tantos bloques <strong>Host<\/strong> como necesites, uno por servidor. Esta configuraci&oacute;n tambi&eacute;n resulta &uacute;til si utilizas servidores de salto o claves diferentes para cada servidor.<\/p><h2 class=\"wp-block-heading\" id=\"h-comandos-para-crear-tuneles-ssh-y-redirigir-puertos\">Comandos para crear t&uacute;neles SSH y redirigir puertos<\/h2><p class=\"wp-block-paragraph\">Los t&uacute;neles SSH redirigen el tr&aacute;fico de red a trav&eacute;s de una conexi&oacute;n SSH cifrada. Son &uacute;tiles para acceder a servicios que no est&aacute;n expuestos a internet, como una base de datos que solo acepta conexiones desde la interfaz local del servidor.<\/p><p class=\"wp-block-paragraph\">Hay tres tipos principales de t&uacute;neles:<\/p><ul class=\"wp-block-list\">\n<li><strong>Reenv&iacute;o local de puertos<\/strong>: env&iacute;a el tr&aacute;fico desde un puerto de tu ordenador a un puerto del entorno remoto. Sirve para acceder a un servicio remoto como si se ejecutara en tu ordenador.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">ssh -L 3306:localhost:3306 usuario@servidor<\/pre><ul class=\"wp-block-list\">\n<li><strong>Reenv&iacute;o remoto de puertos<\/strong>: hace lo contrario y env&iacute;a el tr&aacute;fico desde un puerto del servidor remoto a uno de tu ordenador.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">ssh -R 8080:localhost:80 usuario@servidor<\/pre><ul class=\"wp-block-list\">\n<li><strong>Reenv&iacute;o din&aacute;mico de puertos<\/strong>: convierte SSH en un proxy SOCKS que puedes configurar en tu navegador para dirigir el tr&aacute;fico a trav&eacute;s del servidor.<\/li>\n<\/ul><pre class=\"wp-block-preformatted\">ssh -D 1080 usuario@servidor<\/pre><p>    <div class=\"announcement-block announcement-block--warning\">\n        <span class=\"announcement-block__heading\">\n            <svg width=\"24\" height=\"26\" viewBox=\"0 0 24 26\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                d=\"M12 23.5C17.799 23.5 22.5 18.799 22.5 13C22.5 7.20101 17.799 2.5 12 2.5C6.20101 2.5 1.5 7.20101 1.5 13C1.5 18.799 6.20101 23.5 12 23.5ZM13.637 8.65198C13.637 7.74791 12.9041 7.01501 12 7.01501C11.0959 7.01501 10.363 7.74791 10.363 8.65198C10.5335 10.5375 10.875 14.383 10.875 14.383C10.875 15.0043 11.3787 15.508 12 15.508C12.6213 15.508 13.125 15.0043 13.125 14.383V14.38L13.637 8.65198ZM11.9927 16.714C11.3714 16.714 10.8677 17.2177 10.8677 17.839C10.8677 18.4603 11.3714 18.964 11.9927 18.964H12.0073C12.6286 18.964 13.1323 18.4603 13.1323 17.839C13.1323 17.2177 12.6286 16.714 12.0073 16.714H11.9927Z\"\n                fill=\"#BE1025\"\/>\n            <\/svg>\n            Warning        <\/span>\n        <p class=\"announcement-block__content\">\n            Antes de abrir un t&uacute;nel, comprueba qu&eacute; servicio vas a exponer y qui&eacute;n podr&aacute; acceder a &eacute;l. Puedes redirigir una base de datos o un panel de administraci&oacute;n para uso propio, pero dejar un t&uacute;nel abierto o apuntar al puerto equivocado puede exponer servicios sensibles en una red en la que no deber&iacute;an estar disponibles.        <\/p>\n    <\/div>\n\n    \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-como-solucionar-errores-de-conexion-ssh\">C&oacute;mo solucionar errores de conexi&oacute;n SSH<\/h2><p class=\"wp-block-paragraph\">La mayor&iacute;a de los errores de SSH pertenecen a unas pocas categor&iacute;as. La opci&oacute;n de modo detallado <strong>-v<\/strong> es una de las mejores herramientas para identificar la causa. Ejecuta <strong>ssh -v usuario@servidor<\/strong> para comprobar en qu&eacute; punto falla la conexi&oacute;n.<\/p><figure tabindex=\"0\" class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Error<\/strong><\/th><th><strong>Posible causa<\/strong><\/th><th><strong>Qu&eacute; probar<\/strong><\/th><\/tr><\/thead><tbody><tr><td><a href=\"\/co\/tutoriales\/ssh-connection-refused\/\"><strong>Conexi&oacute;n SSH rechazada<\/strong><\/a><\/td><td>El servicio SSH no est&aacute; en ejecuci&oacute;n o el firewall bloquea el puerto.<\/td><td>Comprueba el estado del servidor y confirma que el puerto est&eacute; abierto.<\/td><\/tr><tr><td><strong>Se ha agotado el tiempo de espera de la conexi&oacute;n<\/strong><\/td><td>La direcci&oacute;n IP o el nombre de host son incorrectos, o no se puede acceder al servidor.<\/td><td>Comprueba que utilizas la direcci&oacute;n IP o el nombre de host correctos y que puedes acceder al servidor.<\/td><\/tr><tr><td><strong>Permiso denegado (clave p&uacute;blica)<\/strong><\/td><td>La clave no est&aacute; autorizada en el servidor o el archivo de la clave tiene permisos incorrectos.<\/td><td>Ejecuta <strong>chmod 600 ~\/.ssh\/id_ed25519<\/strong> en tu ordenador. En el servidor, comprueba que la clave p&uacute;blica est&eacute; en <strong>~\/.ssh\/authorized_keys<\/strong>, que <strong>~\/.ssh<\/strong> tenga permisos <strong>700<\/strong> y que <strong>authorized_keys<\/strong> tenga permisos <strong>600<\/strong>.<\/td><\/tr><tr><td><strong>Permiso denegado (contrase&ntilde;a)<\/strong><\/td><td>El nombre de usuario o la contrase&ntilde;a son incorrectos, o el inicio de sesi&oacute;n con contrase&ntilde;a est&aacute; desactivado.<\/td><td>Comprueba las credenciales y el ajuste <strong>PasswordAuthentication<\/strong> de <strong>\/etc\/ssh\/sshd_config<\/strong>.<\/td><\/tr><tr><td><strong>Puerto 22: conexi&oacute;n rechazada<\/strong><\/td><td>Est&aacute;s utilizando el puerto predeterminado, pero el servidor usa uno personalizado.<\/td><td>A&ntilde;ade <strong>-p<\/strong> con el puerto correcto.<\/td><\/tr><tr><td><strong>Error en la verificaci&oacute;n de la clave del servidor<\/strong><\/td><td>La clave del servidor ha cambiado desde la &uacute;ltima conexi&oacute;n.<\/td><td>Si sabes que el cambio es leg&iacute;timo, por ejemplo, porque se ha reconstruido el servidor, elimina la entrada anterior con <strong>ssh-keygen -R host<\/strong>. Si no esperabas el cambio, investiga la causa antes de conectarte.<\/td><\/tr><\/tbody><\/table><\/figure><p>    <div class=\"announcement-block announcement-block--warning\">\n        <span class=\"announcement-block__heading\">\n            <svg width=\"24\" height=\"26\" viewBox=\"0 0 24 26\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                d=\"M12 23.5C17.799 23.5 22.5 18.799 22.5 13C22.5 7.20101 17.799 2.5 12 2.5C6.20101 2.5 1.5 7.20101 1.5 13C1.5 18.799 6.20101 23.5 12 23.5ZM13.637 8.65198C13.637 7.74791 12.9041 7.01501 12 7.01501C11.0959 7.01501 10.363 7.74791 10.363 8.65198C10.5335 10.5375 10.875 14.383 10.875 14.383C10.875 15.0043 11.3787 15.508 12 15.508C12.6213 15.508 13.125 15.0043 13.125 14.383V14.38L13.637 8.65198ZM11.9927 16.714C11.3714 16.714 10.8677 17.2177 10.8677 17.839C10.8677 18.4603 11.3714 18.964 11.9927 18.964H12.0073C12.6286 18.964 13.1323 18.4603 13.1323 17.839C13.1323 17.2177 12.6286 16.714 12.0073 16.714H11.9927Z\"\n                fill=\"#BE1025\"\/>\n            <\/svg>\n            Warning        <\/span>\n        <p class=\"announcement-block__content\">\n            Un cambio repentino en la clave del servidor puede deberse a que el servidor se haya reconstruido, pero tambi&eacute;n puede indicar que alguien est&aacute; interceptando la conexi&oacute;n. No aceptes una nueva clave sin comprobarla si ya te hab&iacute;as conectado antes a ese servidor. Confirma primero el cambio con tu proveedor de hosting.        <\/p>\n    <\/div>\n\n    \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-proximos-pasos-para-usar-ssh-en-tu-servidor\">Pr&oacute;ximos pasos para usar SSH en tu servidor<\/h2><p class=\"wp-block-paragraph\">Ya conoces los principales comandos SSH y los conceptos b&aacute;sicos de Linux necesarios para gestionar un servidor remoto. Ahora puedes iniciar sesi&oacute;n y practicar: cambia de directorio con <strong>cd<\/strong>, muestra los archivos con <strong>ls<\/strong> y consulta los registros en tiempo real con <strong>tail -f<\/strong> hasta familiarizarte con estos comandos.<\/p><p class=\"wp-block-paragraph\">Despu&eacute;s, adopta tres h&aacute;bitos: utiliza claves SSH en lugar de contrase&ntilde;as, crea backups locales de los archivos de configuraci&oacute;n importantes con SCP o rsync antes de hacer cambios en el servidor y ejecuta <strong>ssh -v<\/strong> siempre que falle una conexi&oacute;n.<\/p><p class=\"wp-block-paragraph\">Tambi&eacute;n puedes explorar estas opciones:<\/p><ul class=\"wp-block-list\">\n<li>Ejecuta tareas largas sin perderlas si se interrumpe la sesi&oacute;n SSH con <a href=\"\/co\/tutoriales\/instalar-usar-linux-screen\/\">Linux Screen<\/a> o <strong>tmux<\/strong>.<\/li>\n\n\n\n<li>Guarda los datos habituales de cada servidor en <strong>~\/.ssh\/config<\/strong> para conectarte mediante alias cortos.<\/li>\n\n\n\n<li>Automatiza comprobaciones rutinarias con comandos remotos breves, como comprobar a diario el espacio en disco.<\/li>\n<\/ul><p class=\"wp-block-paragraph\">Cuanto m&aacute;s utilices SSH, m&aacute;s natural te resultar&aacute; trabajar con &eacute;l. Con la pr&aacute;ctica, podr&aacute;s centrarte en gestionar el servidor sin pensar en el protocolo que hay detr&aacute;s.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los comandos SSH te permiten conectarte de forma segura a un servidor remoto, ejecutar comandos de Linux, transferir archivos, gestionar claves SSH y solucionar problemas de acceso desde la l&iacute;nea de comandos. Las instrucciones se env&iacute;an mediante el protocolo Secure Shell, que cifra todo lo que se transmite entre tu ordenador y el servidor. As&iacute;, [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/co\/tutoriales\/comandos-ssh-esenciales\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":190,"featured_media":47956,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"Comandos SSH: ejemplos, opciones y gu\u00eda de uso","rank_math_description":"Aprende los comandos SSH m\u00e1s \u00fatiles con ejemplos pr\u00e1cticos. Con\u00e9ctate a servidores, gestiona claves, transfiere archivos y soluciona errores de conexi\u00f3n.","rank_math_focus_keyword":"comandos ssh","footnotes":""},"categories":[14501],"tags":[],"class_list":["post-41560","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vps"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/basic-ssh-commands\/","default":1},{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/lista-de-comandos-basicos-ssh\/","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/commandes-ssh-de-base-que-vous-devez-connaitre\/","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/comandos-ssh-esenciales\/","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/cara-menggunakan-command-ssh\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/basic-ssh-commands\/","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/comandos-ssh-esenciales\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/comandos-ssh-esenciales\/","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/comandos-ssh-esenciales\/","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/lista-de-comandos-basicos-ssh\/","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/41560","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/users\/190"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/comments?post=41560"}],"version-history":[{"count":8,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/41560\/revisions"}],"predecessor-version":[{"id":47955,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/41560\/revisions\/47955"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/media\/47956"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/media?parent=41560"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/categories?post=41560"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/tags?post=41560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}