{"id":9242,"date":"2019-10-10T14:13:49","date_gmt":"2019-10-10T12:13:49","guid":{"rendered":"https:\/\/blog.hostinger.io\/co-tutoriales\/?p=9242"},"modified":"2024-12-23T16:50:25","modified_gmt":"2024-12-23T15:50:25","slug":"configurar-ssh-sin-contrasena-linux","status":"publish","type":"post","link":"\/co\/tutoriales\/configurar-ssh-sin-contrasena-linux","title":{"rendered":"C\u00f3mo configurar SSH sin contrase\u00f1a en Linux"},"content":{"rendered":"<p><a href=\"\/co\/tutoriales\/que-es-ssh\">SSH<\/a> significa Secure Shell, en ingl&eacute;s, que en espa&ntilde;ol ser&iacute;a &ldquo;Escudo de Seguridad&rdquo;. Se trata de un protocolo de red de c&oacute;digo abierto que se puede utilizar para iniciar sesi&oacute;n en servidores y ejecutar comandos de forma remota, &iexcl;lo cual es excelente para los usuarios de <a href=\"\/co\/servidor-vps\">VPS<\/a>!<\/p><p>Hay dos formas de habilitar SSH:<\/p><ul class=\"wp-block-list\">\n<li>Autenticaci&oacute;n basada en contrase&ntilde;a<\/li>\n\n\n\n<li>Autenticaci&oacute;n basada en clave p&uacute;blica<\/li>\n<\/ul><p>La autenticaci&oacute;n basada en clave p&uacute;blica tambi&eacute;n se le conoce como SSH sin contrase&ntilde;a. En este art&iacute;culo veremos c&oacute;mo configurar SSH en contrase&ntilde;a en un servidor Linux. <\/p><h2 class=\"wp-block-heading\" id=\"h-por-que-usar-ssh-sin-contrasena\">&iquest;Por qu&eacute; usar SSH sin contrase&ntilde;a?<\/h2><p>A veces nos puede parecer que las contrase&ntilde;as son dif&iacute;ciles de recordar e inc&oacute;modas, en especial si estamos en un entorno donde necesitamos ingresar una contrase&ntilde;a con frecuencia.<\/p><p>Algunas ventajas de usar SSH sin contrase&ntilde;a son:<\/p><ul class=\"wp-block-list\">\n<li>Ofrece un inicio de sesi&oacute;n f&aacute;cil y no interactivo. Los usuarios no tienen que escribir la contrase&ntilde;a para cada nueva sesi&oacute;n.<\/li>\n\n\n\n<li>Es una alternativa m&aacute;s segura en comparaci&oacute;n con las contrase&ntilde;as, ya que funciona con criptograf&iacute;a de clave p&uacute;blica-privada.<\/li>\n\n\n\n<li>Es m&aacute;s confiable.<\/li>\n\n\n\n<li>Brinda una mejor gesti&oacute;n de autenticaci&oacute;n y autorizaci&oacute;n.<\/li>\n\n\n\n<li>Es una buena soluci&oacute;n tanto para infraestructuras peque&ntilde;as como grandes.<\/li>\n\n\n\n<li>Es f&aacute;cil de construir y mantener.<\/li>\n<\/ul><p>Para comenzar a usar SSH sin <a href=\"\/co\/tutoriales\/cambiar-contrasena-linux\/\">contrase&ntilde;a en Linux<\/a>, debes generar una clave p&uacute;blica. En este tutorial, nos centraremos en explicar c&oacute;mo hacerlo en SSH versi&oacute;n 2, que es el protocolo m&aacute;s reciente y m&aacute;s seguro.<\/p><p>Inicia sesi&oacute;n en tu servidor VPS utilizando SSH, &iexcl;y estar&aacute;s listo para comenzar!<\/p><p>Primero, puedes verificar si la clave SSH para la m&aacute;quina cliente ya existe. Esto evitar&aacute; sobrescribir la configuraci&oacute;n actual. <\/p><p>Puedes usar el siguiente comando para averiguarlo:<\/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=\"\">ls -al ~\/.ssh\/id_*.pub<\/pre><p>Si encuentras una clave existente puedes: omitir los pasos de generaci&oacute;n de clave SSH, anular la configuraci&oacute;n actual o crear una copia de seguridad de la clave existente. Si la clave no existe, ver&aacute;s el siguiente resultado:<\/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=\"\">ls: cannot access \/users\/appsadm\/.ssh\/id_*.pub: No such file or directory<\/pre><p>Ahora podr&aacute;s pasar a <a href=\"\/co\/tutoriales\/como-configurar-claves-ssh\">generar la clave SSH<\/a>.<\/p><h2 class=\"wp-block-heading\" id=\"h-ssh-sin-contrasena-en-ubuntu-y-centos\">SSH sin contrase&ntilde;a en Ubuntu y CentOS<\/h2><p>Para generar una clave p&uacute;blica y privada en Ubuntu o CentOS, usa el comando:<\/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-keygen -t rsa<\/pre><p>La opci&oacute;n -t significa tipo, mientras que RSA es el protocolo utilizado para la generaci&oacute;n de claves. RSA es el tipo predeterminado, as&iacute; que tambi&eacute;n puedes usar la versi&oacute;n m&aacute;s simple del comando: <strong>ssh-keygen<\/strong>.<\/p><p>La clave predeterminada es de 2048 bits. Sin embargo, si deseas una seguridad m&aacute;s fuerte, puedes cambiar el valor a 4096 bits. En ese caso, el comando ser&aacute;:<\/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-keygen -t rsa -b 4096<\/pre><p>Este es un proceso interactivo de generaci&oacute;n de claves y se te har&aacute;n algunas preguntas, como:<\/p><ul class=\"wp-block-list\">\n<li>Ingresa el archivo en el que guardar&aacute;s la clave (\/home\/.ssh.id_rsa)<\/li>\n\n\n\n<li>Ingresa la passphrase (vac&iacute;a si quieres dejarlo sin passphrase)<\/li>\n<\/ul><p>Puedes presionar Intro para ambas preguntas y el sistema tomar&aacute; los valores predeterminados. La passphrase es una cadena de caracteres, usada para cifrar la clave privada. <\/p><p>Sin embargo, no es obligatoria y puede dejarse en blanco. La clave privada se guardar&aacute; en la ubicaci&oacute;n predeterminada: <strong>.ssh\/id_rsa.<\/strong><\/p><p>La clave p&uacute;blica se guardar&aacute; en el archivo <strong>.ssh\/id_rsa.pub<\/strong>. As&iacute; habr&aacute;s completado el paso de generaci&oacute;n de claves. Puedes verificar los archivos utilizando cualquier editor.<\/p><h2 class=\"wp-block-heading\" id=\"h-copiar-la-clave-publica-para-habilitar-ssh-sin-contrasena\">Copiar la clave p&uacute;blica para habilitar SSH sin contrase&ntilde;a<\/h2><p>La copia de la clave p&uacute;blica en una m&aacute;quina de destino se puede hacer de tres maneras:<\/p><ul class=\"wp-block-list\">\n<li>Utilizando el comando ssh-copy-id<\/li>\n\n\n\n<li>Usando SSH<\/li>\n\n\n\n<li>Manualmente<\/li>\n<\/ul><p>La primera opci&oacute;n es la m&aacute;s preferida y la m&aacute;s r&aacute;pida. El comando <strong>ssh-copy-id<\/strong> est&aacute; incluido por defecto en la mayor&iacute;a de las versiones de Linux. En caso de que tengas problemas al usar ssh-copy-id o no tengas acceso a este comando, puedes probar las siguientes opciones.<\/p><h3 class=\"wp-block-heading\" id=\"h-metodo-1-usar-el-comando-ssh-copy-id\">M&eacute;todo 1: usar el comando ssh-copy-id<\/h3><p>La sintaxis b&aacute;sica para usar este comando es la que se detalla a continuaci&oacute;n:<\/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-copy-id remote_username@remote_IP_Address<\/pre><p>Al escribirlo recibir&aacute;s un mensaje con la contrase&ntilde;a de la m&aacute;quina remota. Una vez que la autenticaci&oacute;n sea exitosa, la clave p&uacute;blica SSH generada se agregar&aacute; al archivo authorized_keys del equipo remoto. Despu&eacute;s de agregar la clave, la conexi&oacute;n se cerrar&aacute; autom&aacute;ticamente.<\/p><h3 class=\"wp-block-heading\" id=\"h-metodo-2-copia-la-clave-privada-usando-ssh\">M&eacute;todo 2: copia la clave privada usando SSH<\/h3><p>El siguiente m&eacute;todo usa SSH para copiar la clave privada. Puedes usar esta alternativa cuando tienes acceso al servidor con contrase&ntilde;a SSH. El siguiente comando se encargar&aacute; del proceso. Solo debes ingresar el nombre de usuario y la direcci&oacute;n IP de la m&aacute;quina remota.<\/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=\"\">cat ~\/.ssh\/id_rsa.pub | ssh remote_username@remote_ip_address \"mkdir -p ~\/.ssh &amp;&amp; cat &gt;&gt; ~\/.ssh\/authorized_keys\"<\/pre><p>Esto agregar&aacute; la clave al archivo authorized_keys de la m&aacute;quina remota.<\/p><h3 class=\"wp-block-heading\" id=\"h-metodo-3-copiar-manualmente-la-clave-publica\">M&eacute;todo 3: copiar manualmente la clave p&uacute;blica<\/h3><p>El tercer m&eacute;todo es un poco m&aacute;s dif&iacute;cil ya que es completamente manual. Sin embargo, en caso de que los otros m&eacute;todos no funcionen, &iexcl;puedes usar este! Deber&aacute;s agregar manualmente el contenido del archivo <strong>id_rsa.pub<\/strong> al archivo <strong>~\/.ssh\/authorized_keys<\/strong> del servidor remoto.<\/p><p>En el m&eacute;todo fuente, puedes mostrar el contenido del archivo <strong>id_rsa.pub<\/strong> utilizando el editor vi o el <a href=\"\/co\/tutoriales\/comando-cat-linux\">comando cat<\/a>:<\/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=\"\">cat ~\/.ssh\/id_rsa.pub<\/pre><p>Esto mostrar&aacute; una salida que contiene la clave, la cual comienza con ssh-rsa. &iexcl;C&oacute;piala! A continuaci&oacute;n, en el servidor remoto, inicia sesi&oacute;n y cree el archivo .ssh si no existe.<\/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=\"\">mkdir -p ~\/.ssh<\/pre><p>De manera similar, puedes crear el archivo authorized_keys. Agrega la clave p&uacute;blica SSH copiada al archivo vac&iacute;o como se muestra a continuaci&oacute;n:<\/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=\"\">echo SSH_public_key &gt;&gt; ~\/.ssh\/authorized_keys<\/pre><p><strong>SSH_public_key<\/strong>&nbsp;ser&iacute;a la clave p&uacute;blica que copiaste de la m&aacute;quina de origen. Comienza con <strong>ssh-rsa<\/strong>.<\/p><p>Una vez que copies la clave, puedes proporcionar los permisos necesarios al directorio .ssh de servidores remotos mediante el comando chmod.<\/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=\"\">chmod -766 ~\/.ssh<\/pre><h2 class=\"wp-block-heading\" id=\"h-probar-el-ssh-sin-contrasena\">Probar el SSH sin contrase&ntilde;a<\/h2><p>Si llegaste hasta ac&aacute; e hiciste todo, deber&iacute;as haber activado SSH sin contrase&ntilde;a con &eacute;xito y haber realizado la configuraci&oacute;n b&aacute;sica. Para probar la funci&oacute;n, puedes intentar acceder al servidor remoto a trav&eacute;s del servidor de origen. La sintaxis del comando se ver&iacute;a as&iacute;:<\/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 remote_username@remote_IP_Address<\/pre><p>Si todo funcion&oacute; correctamente, podr&aacute;s iniciar sesi&oacute;n autom&aacute;ticamente sin tener que ingresar la contrase&ntilde;a.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-deshabilitar-ssh-sin-contrasena\">C&oacute;mo deshabilitar SSH sin contrase&ntilde;a<\/h2><p>Si decides que SSH sin contrase&ntilde;a no es para ti, puedes deshabilitarlo siguiendo los pasos a continuaci&oacute;n. <\/p><p>Para realizar este cambio, abra el archivo de configuraci&oacute;n SSH:&nbsp;<strong>\/etc\/ssh\/ssh_config<\/strong>. Una vez m&aacute;s, cualquier editor funcionar&aacute;, en nuestro caso usamos nano.&nbsp;<\/p><p>Aqu&iacute; encontrar&aacute;s una entrada con el comando <strong>PasswordAuthentication<\/strong>. Modifica las l&iacute;neas como se muestra:<\/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=\"\">PasswordAuthentication no\nChallengeResponseAuthentication no\nUsePAM no<\/pre><p>Una vez que hayas cambiado esto, guarda el archivo y reinicia SSH. A continuaci&oacute;n te mostramos c&oacute;mo hacerlo en <strong>Ubuntu<\/strong>:<\/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=\"\">sudo systemctl restart ssh<\/pre><p>Y el comando para <strong>CentOS 7<\/strong>:<\/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=\"\">sudo systemctl restart sshd<\/pre><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:\/\/blog.hostinger.io\/co-tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner-1024x300.png\" alt=\"\" class=\"wp-image-29287\" srcset=\"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png 1024w, https:\/\/www.hostinger.com\/co\/tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner-300x88.png 300w, https:\/\/www.hostinger.com\/co\/tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner-150x44.png 150w, https:\/\/www.hostinger.com\/co\/tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner-768x225.png 768w, https:\/\/www.hostinger.com\/co\/tutoriales\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner-1536x450.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusi&oacute;n<\/h2><p>Dicho esto, estar&iacute;a completo nuestro tutorial sobre SSH sin contrase&ntilde;a. Cubrimos la configuraci&oacute;n de SSH sin password, c&oacute;mo funciona y c&oacute;mo deshabilitarla. <\/p><p>Esperamos que esta gu&iacute;a te haya sido de utilidad. Si tienes alg&uacute;n comentario o pregunta, escr&iacute;bela en la secci&oacute;n de abajo. &iexcl;Buena suerte!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>SSH significa Secure Shell, en ingl&eacute;s, que en espa&ntilde;ol ser&iacute;a &ldquo;Escudo de Seguridad&rdquo;. Se trata de un protocolo de red de c&oacute;digo abierto que se puede utilizar para iniciar sesi&oacute;n en servidores y ejecutar comandos de forma remota, &iexcl;lo cual es excelente para los usuarios de VPS! Hay dos formas de habilitar SSH: La autenticaci&oacute;n [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/co\/tutoriales\/configurar-ssh-sin-contrasena-linux\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":138,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"C\u00f3mo configurar SSH sin contrase\u00f1a en Linux","rank_math_description":"Aprende c\u00f3mo configurar SSH sin contrase\u00f1a f\u00e1cilmente. Te explicamos todo el proceso paso a paso para que ahorres tiempos en tu VPS.","rank_math_focus_keyword":"ssh sin contrase\u00f1a","footnotes":""},"categories":[5700],"tags":[11234],"class_list":["post-9242","post","type-post","status-publish","format-standard","hentry","category-vps","tag-ssh-sin-contrasena"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/how-to-setup-passwordless-ssh","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/comment-configurer-ssh-sans-mot-de-passe","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/configurar-ssh-sin-contrasena-linux","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/ssh-tanpa-password","default":0},{"locale":"en-UK","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/how-to-setup-passwordless-ssh","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/how-to-setup-passwordless-ssh\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/how-to-setup-passwordless-ssh\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/configurar-ssh-sin-contrasena-linux","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/configurar-ssh-sin-contrasena-linux","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/configurar-ssh-sin-contrasena-linux","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/how-to-setup-passwordless-ssh","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/how-to-setup-passwordless-ssh","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/how-to-setup-passwordless-ssh","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/how-to-setup-passwordless-ssh","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9242","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\/138"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/comments?post=9242"}],"version-history":[{"count":11,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9242\/revisions"}],"predecessor-version":[{"id":44389,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9242\/revisions\/44389"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/media?parent=9242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/categories?post=9242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/tags?post=9242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}