amazon web services - conectar - AWS: desconectado: no hay métodos de autenticación compatibles disponibles(servidor enviado: clave pública)
amazon ec2 caracteristicas (13)
Al intentar conectarme a un servidor de SiteGround vía Putty tuve el mismo problema. Sus instrucciones son bastante minuciosas, y deben funcionar para algunas personas, pero no funcionaron para mí.
Recomienda ejecutar pageant.exe, que se ejecuta en segundo plano. Usted registra su (s) clave (s) con el concurso, y se supone que debe informar a Putty sobre las claves cuando intenta conectarse.
En un par de places encontré sugerencias para especificar la clave directamente en la definición de la sesión Putty: Putty Configuration> Connection> SSH> Auth> "Private key file for authentication", luego busque su archivo de clave en formato .ppk.
Hacer esto sin ejecutar el concurso resolvió el problema para mí.
SSH a mi servidor AWS acaba de romper para Putty y Filezilla. Estoy haciendo un esfuerzo para que esta publicación sea una lista completa de solución de problemas, por lo que si comparte enlaces a otras páginas de desbordamiento de pila, las editaré en la pregunta.
Disconnected : No supported authentication methods available (server sent :publickey)
El error me resulta familiar desde que configuré la conexión hace casi un año. Si configura AWS SSH por primera vez, estos abordan los problemas más comunes:
- Nombre de usuario incorrecto: desconectado: no hay métodos de autenticación compatibles disponibles (servidor enviado: clave pública)
- Archivo .ppk incorrecto: no se puede conectar al servidor de Amazon usando masilla
Sin embargo, lo único que podría pensar que afectaría a un sistema que funcionaba anteriormente es:
- IP incorrecta: no se garantiza el reinicio de una instancia de AWS (o la creación de una imagen) para mantener la misma dirección IP. Obviamente, esto debe actualizarse en masilla.
¿Qué otras posibilidades hay?
La solución a esta (según la publicación aceptada a continuación) es que para AWS EC2 los 3 de estos necesitan tener los permisos adecuados (777 no está bien para ninguno de estos). Aquí hay un ejemplo que funciona:
/home/ec2-user/ - 700
/home/ec2-user/.ssh/ - 600
/home/ec2-user/.ssh/authorized_keys - 600
/ var / log / secure le dirá cuál arroja un error, consulte este video tutorial para obtener acceso si está completamente bloqueado: http://d2930476l2fsmh.cloudfront.net/LostKeypairRecoveryOfLinuxInstance.mp4
Durante la sesión ssh mi conexión se rompió, desde entonces no puedo modificar mi SRV, comencé una nueva instancia, y puedo enviar la nueva instancia (con la misma clave).
Monté el volumen anterior a la nueva máquina y compruebo .ssh / authorized_key y no pude encontrar ningún problema con el permiso o el contenido.
En mi caso, el problema fue que el archivo ppk se colocó en la carpeta% USERPROFILE% / Downloads en lugar de% USERPROFILE% .ssh.
Después de mover el archivo, el problema desapareció.
Hay otra causa que impactaría en un sistema que funcionaba anteriormente. Recreé mis instancias (usando AWS OpsWorks) para usar Amazon Linux en lugar de Ubuntu y recibí este error después de hacerlo. El cambio para usar "ec2-user" como el nombre de usuario en lugar de "ubuntu" resolvió el problema para mí.
La respuesta completa está aquí: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html
Su problema puede estar relacionado con un inicio de sesión incorrecto que varía según las AMI. Use los siguientes inicios de sesión en las siguientes AMI:
- ubuntu o raíz en ubuntu AMIs
- ec2-usuario en Amazon Linux AMI
- centos en Centos AMI
- Debian o raíz en Debian AMI
- ec2-user o fedora en Fedora
- ec2-user o root en: RHEL AMI, SUSE AMI, otros.
Si estás usando SO:
- Windows : obtenga la clave PEM del sitio web de AWS y genere un archivo PPK utilizando PuttyGen. Luego use Putty para usar PPK (selecciónelo usando la columna izquierda: Conexión-> SSH-> Auth: clave privada para autorización)
- Linux : ejecute:
ssh -i your-ssh-key.pem login@IP-or-DNS
Buena suerte.
Para mí, este error apareció inmediatamente después de que cambie el directorio de inicio del usuario por
sudo usermod -d var/www/html username
También puede ocurrir debido a la falta de permiso apropiado para el archivo authorized_key en ~ / .ssh. Asegúrese de que el permiso de este archivo es 0600 y el permiso de ~ / .ssh es 700.
PuTTY no admite de forma nativa el formato de clave privada (.pem) generado por Amazon EC2. PuTTY tiene una herramienta llamada PuTTYgen, que puede convertir claves al formato PuTTY requerido (.ppk). Debe convertir su clave privada en este formato (.ppk) antes de intentar conectarse a su instancia utilizando PuTTY.
Los pasos para realizar esto se describen aquí: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html
Esto resolvió el problema.
Según varias instancias, si el archivo de clave y el nombre de usuario son correctos, esto parece ocurrir al cambiar ciertos permisos de directorio asociados con el usuario raíz.
También recibirá "Desconectado: no hay métodos de autenticación compatibles disponibles (servidor enviado: clave pública)" cuando tiene un usuario correcto de Linux pero no ha creado el archivo .ssh / authorized_keys y guardó la clave pública como se indica en Administración de cuentas de usuario en Su instancia de Linux
Tuve el mismo problema, por error accidental. Lo compartiré aquí, en caso de que alguien haya cometido el mismo error. Pasos básicos, como otros describen. 1, descargue masilla y puttygen, o el paquete de masilla e instálelo. 2, obtenga el archivo .pem de su instancia de AWS EC2. 3, usa puttygen para convertir el archivo .pem para que tengas una clave privada --- el error ocurrió aquí. Elegí la pestaña "Conversiones" de PuttyGen y cargué mi archivo .pem. Después de cargar el archivo pem, aquí NO pulse "Generar", sino directamente "Guardar clave privada". Esa es la clave que necesitas. Si haces clic en Generar, tendrás un par de llaves totalmente diferente. 4, en masilla, use [email protected], y cargue la clave privada en SSH / Auth ¡Buena suerte!
Tuve el mismo problema, usé DNS público en lugar de IP pública . Se resolvió ahora.
Un problema similar me sucedió hoy. También había buscado mucho sobre esto. Nadie me ayudó. Acabo de hacer dos cambios y funciona correctamente también.
- He visitado la documentación de Amazon donde describo Verifique que haya una regla que permita el tráfico desde su computadora al puerto 22 (SSH) y si no está presente, créelo y edite "Grupo de seguridad" y agregue "SSH" a mi IP. Esto ayudará.
- En mi caso, en el perfil de masilla, tengo que volver a autorizar con el archivo .ppk. No sé por qué vuelve a preguntar, sin realizar ningún cambio.
Espero que te ayude.
en la mayoría de los casos, no obtuve ningún error de método de autenticación cuando usé el nombre de usuario incorrecto para iniciar sesión. Pero sí encuentro algo más si todavía tiene dificultades con el problema de conexión y ha probado todas las opciones anteriores.
Creé un par de Linux VM e intenté reproducir ese problema de conexión, una cosa que encontré es que cuando AWS te pidió que nombraras tu par de claves, NO uses espacios en blanco ("") y puntos (".") En el nombre del par de claves, incluso AWS realmente te permite hacerlo.
ex. cuando llamé al par de claves como "AWS.FREE.LINUX", la conexión siempre será rechazada. Cuando llamé "AWS_FREE_LINUX", todo funciona bien.
Espero que esto ayude un poco.