Solución de problemas de conexión SSH
Si no puede conectarse a una instancia informática mediante SSH, revise los siguientes mensajes de error y sugerencias de solución de problemas para resolver el problema.
Si es la primera vez que crea una instancia, para un tutorial guiado, tenga en cuenta lo siguiente:
Si es la primera vez que crea una instancia, le recomendamos que primero cree una red virtual en la nube (VCN). Puede utilizar el flujo de trabajo "Iniciar asistente de VCN" y seleccionar la opción "Crear VCN con conexión a Internet". El flujo de trabajo crea una VCN que configura automáticamente una subred pública y privada junto con los gateways y las reglas de ruta necesarios. Además, el flujo de trabajo proporciona una opción para configurar IPv6. Para obtener más información sobre la ejecución del flujo de trabajo, consulte: Inicio rápido de redes virtuales.
Error de SSH: conéctese al puerto 22 de w.x.y.z del host: la operación ha sufrido un timeout
El error significa que SSH no puede conectarse al host en la dirección IP especificada. Compruebe los siguientes escenarios para resolver el problema.
Asegúrese de que el sistema tenga acceso a Internet
- Asegúrese de que el entorno en el que se ejecuta el comando SSH tiene acceso a Internet
-
- Windows: abra una ventana del símbolo del sistema.
- MacOS/Linux: abra una ventana de terminal.
- Hacer ping a un host conocido como google.com o amazon.com.
- Si el comando ping se ejecuta correctamente, continúe con la siguiente opción.
- Error de ping
-
Es posible que su entorno SSH no tenga acceso a Internet. Si no está seguro de la configuración de firewall de su organización para el acceso a Internet, considere utilizar OCI Cloud Shell para conectarse a la instancia mediante SSH. Consulte la sección de OCI Cloud Shell en esta página para obtener más información.
- Servidores proxy
- Si su organización utiliza servidores proxy para conectarse a Internet, asegúrese de que la configuración de proxy es correcta. Consulte la documentación del proxy de su organización, ya que la configuración puede variar según la configuración del proxy y el sistema operativo utilizado.
Comprobación de la configuración de OCI
A continuación, compruebe los valores de OCI para verificar la configuración.
- Abrir Detalles de Instancia
-
- Conéctese a la consola de OCI.
- Abra el menú de navegación y seleccione Recursos informáticos. En Recursos informáticos, seleccione Instancias.
- Seleccione la instancia que le interese. Aparecerá la página de detalles de la instancia.
- Compruebe la siguiente configuración
-
- Asegúrese de que la instancia se está ejecutando y no está parada.
- Asegúrese de que la instancia tenga una dirección IP pública.
- Consulte la sección Acceso a instancias. Si se asigna una dirección IP pública, la dirección se etiquetará: Dirección IP de acceso público:
- Si la sección Acceso a instancias está vacía, no se asigna ninguna dirección IP pública.
- Si tiene una dirección pública, asegúrese de utilizar la dirección IP correcta en el comando SSH.
- Si no tiene una dirección IP pública, compruebe la subred de su VCN.
- Si se encuentra en una subred privada, no puede conectarse a su instancia desde Internet. Consulte la sección Uso de una subred privada.
- Si ha creado una instancia en una subred pública, pero no ha asignado una dirección IP pública al crear la instancia, puede seguir asignando la dirección. Consulte: Asignación de una IP pública efímera a una IP privada primaria existente.
- Después de definir la dirección IP, reinicie la instancia e intente utilizar SSH para conectarse a la instancia.
La instancia tiene una dirección IP pública en una subred pública y aún no puedo conectar
Si es nuevo en OCI, los siguientes pasos de solución de problemas son más avanzados. Para acelerar el proceso, considere la posibilidad de configurar una nueva VCN y una nueva instancia informática, como se describe en los siguientes consejos.
Si es la primera vez que crea una instancia, para un tutorial guiado, tenga en cuenta lo siguiente:
Si es la primera vez que crea una instancia, le recomendamos que primero cree una red virtual en la nube (VCN). Puede utilizar el flujo de trabajo "Iniciar asistente de VCN" y seleccionar la opción "Crear VCN con conexión a Internet". El flujo de trabajo crea una VCN que configura automáticamente una subred pública y privada junto con los gateways y las reglas de ruta necesarios. Además, el flujo de trabajo proporciona una opción para configurar IPv6. Para obtener más información sobre la ejecución del flujo de trabajo, consulte: Inicio rápido de redes virtuales.
- Abrir Detalles de Instancia
-
- Conéctese a la consola de OCI.
- Abra el menú de navegación y seleccione Recursos informáticos. En Recursos informáticos, seleccione Instancias.
- Seleccione la instancia que le interese. Aparecerá la página de detalles de la instancia.
- Revisión de la configuración de la VCN
-
- Haga clic en la VCN asignada a esta instancia.
- Asegúrese de que al menos un gateway de Internet está disponible en el recurso de gateways de Internet.
- Si no hay ningún gateway de Internet asignado, vaya a la siguiente sección.
- Si se asigna un gateway de Internet, asegúrese de que la subred pública tiene una regla de ruta asignada para el gateway.
- En el recurso Subredes, seleccione la subred pública.
- En Información de subred, haga clic en el enlace Tabla de rutas.
- Asegúrese de que haya una ruta estática con un destino de
0.0.0.0/0. - Si falta la entrada de ruta, vaya a la siguiente sección.
- Mi subred pública no está configurada correctamente
-
Si parece que la subred pública no está configurada correctamente, tiene dos opciones para volver a configurar la subred.
(1) Utilice la acción rápida Compute.
En la página de detalles de la instancia:
- En la lista Recursos, seleccione Acciones rápidas.
- Haga clic en Conectar en la acción rápida Conectar subred pública a Internet.
- Siga el flujo de trabajo para conectar la instancia.
(2) Crear manualmente una subred pública.
- Utilice el documento Escenario A: Una subred pública para recorrer los pasos para configurar y configurar una nueva subred pública.
- Cree una nueva instancia informática en la nueva subred pública.
- Comprobar listas de seguridad
-
Si sigue teniendo problemas, asegúrese de que las listas de seguridad permitan el tráfico en el puerto 22. Consulte Listas de seguridad para obtener más información.
- Solución de problemas avanzada
-
Si es un usuario avanzado, puede utilizar el analizador de rutas de red para solucionar más problemas de la conexión de red. Consulte Network Path Analyzer para obtener más información.
SSH: conexión con el puerto w.x.y.z 22 del host: conexión rechazada
Este mensaje de error se debe a que un host recibe en la dirección de destino, pero no puede conectarse al puerto 22.
Utilice Netcat(nc) para verificar que SSH está en ejecución
Linux o MacOS
En una ventana de terminal, ejecute el siguiente comando:
nc <public ip> 22-
Si el comando devuelve un mensaje similar a:
SSH-2.0-OpenSSH_9.4Se ha conectado correctamente a la instancia y se está ejecutando SSH verificado. Compruebe la dirección IP en el comando SSH y asegúrese de que sea correcta.
Si el comando no devuelve nada:
- Compruebe la dirección IP pública en la página de detalles de la instancia para asegurarse de que está utilizando la dirección correcta.
- Vuelva a comprobar la dirección IP utilizada en el comando, asegúrese de que sea correcta.
De lo contrario, continúe con la siguiente sección.
Ventanas
En una ventana PowerShell, ejecute el siguiente comando:
tnc <public ip> -p 22-
Si el comando devuelve un mensaje similar a:
ComputerName : <public ip> RemoteAddress : <public ip> RemotePort : 22 InterfaceAlias : Ethernet SourceAddress : <source ip> TcpTestSucceeded : TrueSe ha conectado correctamente a la instancia y se está ejecutando SSH verificado. Compruebe la dirección IP en el comando SSH y asegúrese de que sea correcta.
- Si el comando devuelve:
WARNING: TCP connect to (<public ip>) failed- Compruebe la dirección IP pública en la página de detalles de la instancia para asegurarse de que está utilizando la dirección correcta.
- Vuelva a comprobar la dirección IP utilizada en el comando, asegúrese de que sea correcta.
De lo contrario, continúe con la resolución de problemas con la siguiente sección.
SSH no se está ejecutando
- Compruebe que la instancia está en una subred pública.
- Si la instancia está en una subred privada, no se puede conectar directamente a la instancia. Consulte la sección Uso de una subred privada.
- Asegúrese de que las listas de seguridad estén configuradas para permitir conexiones al puerto 22. Consulte Listas de seguridad para obtener más información.
- Reinicie la instancia para reiniciar el daemon SSH.
- Avanzado: si utiliza una imagen personalizada y necesita iniciar o instalar el servicio SSH, utilice la consola serie para conectarse a la instancia.
<user-name>@w.x.y.z: permiso denegado (publickey,gssapi-keyex,gssapi-with-mic)
Este mensaje de error indica que SSH se está conectando al host de servicio SSH, pero hay un problema con el comando SSH.
Compruebe los siguientes problemas con el comando SSH
- Vuelva a comprobar todas las opciones de la línea de comandos para SSH. Cualquier opción incorrecta puede provocar este mensaje de error.
- A continuación, se muestra un ejemplo de un comando SSH con el formato correcto para conectarse a Oracle Linux.
ssh -i <my-private-key-file> opc@x.x.x.x
- A continuación, se muestra un ejemplo de un comando SSH con el formato correcto para conectarse a Oracle Linux.
- Asegúrese de que está utilizando el nombre de usuario correcto para la instancia:
- Para Oracle Linux u otro OSes compatible con Red Hat, utilice
opc. - Para Ubuntu Linux, utilice
ubuntu.
- Para Oracle Linux u otro OSes compatible con Red Hat, utilice
- Asegúrese de utilizar la clave privada correcta. El uso del archivo de clave privada incorrecto generará este mensaje de error.
- Asegúrese de que está en el directorio que contiene la clave.
- Como alternativa, asegúrese de que la ruta de acceso a la clave privada sea correcta.
- Perdí mi llave privada.
- Cree una nueva instancia y descargue las nuevas claves públicas y privadas.
- Crear un nuevo juego de claves públicas y privadas. Crear una nueva instancia.
Inicio de sesión SSH denegado mediante archivos de claves PuTTYgen: "Permission denied (publickey,gssapi-keyex,gssapi-with-mic)"
Esto ocurre porque las instancias de Linux soportan claves SSH generadas por OpenSSH y las claves SSH generadas por PuTTYgen utilizan un formato diferente.
Hacer coincidir formatos de clave SSH
Si utiliza claves .ppk generadas con PuTTYgen para conectarse a una instancia de Linux mediante el comando SSH OpenSSH, la conexión falla. Por ejemplo:
$ ssh -i deployment_key.txt opc@<IP_ADDRESS>
Enter passphrase for key 'deployment_key.txt':
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Este error se produce porque las instancias de Linux soportan claves SSH generadas por OpenSSH y las claves SSH generadas por PuTTYgen utilizan un formato diferente. Para resolver este problema, utilice PuTTYgen para convertir las claves al formato de clave OpenSSH. A continuación, las claves se pueden utilizar con el comando SSH para conectarse a una instancia de Linux.
- Si no tiene PuTTYgen, descárguelo de https://www.puttygen.com/ e instálelo.
- Abra PuTTYgen.
- Haga clic en Archivo y, a continuación, en Cargar clave privada.
- Vaya al archivo de clave privada PuTTY (.ppk) y, a continuación, haga clic en Abrir.
- (Opcional) Introduzca una frase de contraseña de clave.
- Haga clic en Conversiones y, a continuación, en Exportar clave OpenSSH.
Si no ha utilizado como frase de contraseña, haga clic en Sí en PuTTYgen Warning para continuar.
- En la ventana Guardar clave privada como:, introduzca un nombre de archivo para la clave convertida y, a continuación, haga clic en Guardar.
Ahora puede utilizar la clave convertida para conectarse a la instancia de Linux.
SSH falla con el error: "Autenticación rechazada: propiedad incorrecta o modos para el directorio "
Este error se produce porque se han definido permisos incorrectos en el directorio /home/<USERNAME> o el archivo .ssh/authorized_keys.
Las rutas de directorio raíz de ejemplo de este consejo para la solución de problemas utilizan Oracle Linux. La ruta de inicio puede diferir según el sistema operativo. Por ejemplo, la ruta del directorio raíz en MacOS es
/Users/<USERNAME>.Definir permisos correctos
Si tiene definidos permisos incorrectos en el directorio /home/<USERNAME> o en el archivo .ssh/authorized_keys, la conexión a una instancia de Linux mediante SSH puede fallar.
Por ejemplo:
login as: <username>
Server refused our key
Si revisa los archivos log /var/log/secure en la instancia de Linux, verá el motivo del error:
<SERVER> sshd[6245]: Authentication refused: bad ownership or modes for directory /home/<USERNAME>
Para corregir el error, defina los permisos en el directorio raíz o en el archivo .ssh/authorized_keys, utilice el comando chmod:
# chmod 700 /home/<username>
# chmod 700 /home/<username>/.ssh/
# chmod 600 /home/username/.ssh/authorized_keys
Uso de Cloud Shell para conectarse a una instancia de OCI
OCI Cloud Shell es un terminal basado en explorador web al que puede acceder desde la consola de OCI. Cloud Shell se puede utilizar de forma gratuita (dentro de los límites mensuales de arrendamiento) y proporciona acceso a un shell Linux con una CLI de OCI autenticada previamente, una instalación de Ansible autenticada previamente y otras herramientas útiles para los siguientes tutoriales y laboratorios de servicio.
Si tiene problemas de conectividad con su instancia, Cloud Shell es una opción eficaz para conectarse a SSH. Como Cloud Shell se basa en explorador, elimina cualquier posible problema de conectividad debido a la configuración de firewall corporativo o portátil. En esta sección, se proporciona un enlace a la información sobre las formas de utilizar Cloud Shell.
-
Para obtener información sobre Cloud Shell, consulte Cloud Shell.
-
Para obtener información sobre cómo acceder a Cloud Shell, consulte Uso de Cloud Shell.
- Para obtener información sobre cómo conectar una sesión de Cloud Shell a una red privada, consulte Red privada de Cloud Shell.
Uso de una subred privada
Si la instancia informática está en una subred privada, generalmente hay dos escenarios.
- (1) La instancia está en una subred privada, pero debe estar en una subred pública
-
Para que la instancia esté en una subred pública, tiene las siguientes opciones.
- Cree una nueva instancia en una subred pública de la VCN actual. Termine la instancia antigua.
- Cree una nueva subred pública en la VCN actual. Cree una nueva instancia en la nueva subred pública. Termine la instancia antigua.
- Cree una nueva VCN con una subred pública y, a continuación, cree una nueva instancia en la subred pública. Termine la instancia antigua.
Consejo
Si es la primera vez que crea una instancia, para un tutorial guiado, tenga en cuenta lo siguiente:Consejo
Si es la primera vez que crea una instancia, le recomendamos que primero cree una red virtual en la nube (VCN). Puede utilizar el flujo de trabajo "Iniciar asistente de VCN" y seleccionar la opción "Crear VCN con conexión a Internet". El flujo de trabajo crea una VCN que configura automáticamente una subred pública y privada junto con los gateways y las reglas de ruta necesarios. Además, el flujo de trabajo proporciona una opción para configurar IPv6. Para obtener más información sobre la ejecución del flujo de trabajo, consulte: Inicio rápido de redes virtuales. - (2) La instancia está intencionadamente en una subred privada
-
Cuando la instancia informática está en una subred privada, puede conectarse a ella mediante:
- Cloud Shell: consulte la sección OCI Cloud Shell de esta página para obtener más información.
- Bastion proporciona acceso restringido y limitado en los tiempos a recursos del destino que no tengan puntos finales públicos. Consulte la Visión general de Bastion para obtener más información.
Opciones Adicionales de Solución de Problemas de Instancias y Conexiones
Esta página se centra en el uso del comando SSH para conectarse a una instancia. Estas son otras herramientas disponibles para solucionar problemas de instancias informáticas.
Solución de problemas con la consola serie
Mediante una conexión de consola de OCI, puede utilizar la consola serie de la instancia para conectarse a la instancia. Esto le permite solucionar problemas y configurar una instancia de forma remota. Para obtener más información, consulte Resolución de problemas de instancias con conexión de la consola de instancias
- Interrumpir el proceso de inicio para iniciar en modo de mantenimiento.
- En modo de mantenimiento, agregar o restablecer la clave SSH para el usuario
opc.
Observación del estado de la instancia
En la página de detalles de la instancia, puede observar métricas relacionadas con la instancia, incluido el estado de la instancia. La métrica oci_compute_instance_health permite supervisar si una instancia de VM no responde. Compute envía una solicitud del protocolo de resolución de direcciones (ARP) a la tarjeta del interfaz de red virtual de la instancia (VNIC). Si el ping de ARP falla, la métrica muestra que la instancia no responde.
Para utilizar la métrica, seleccione oci_compute_instance_health en el control Espacio de nombres de métrica de la página de detalles. Para obtener más información, consulte: Métricas de estado de instancias informáticas.
Otras secciones de resolución de problemas informáticos
Además de SSH, también están disponibles los siguientes temas de resolución de problemas.