Nota:

Generar claves SSH

Introducción

El protocolo SSH (shell seguro) es un método para un inicio de sesión remoto seguro de una computadora a otra. SSH permite la administración segura del sistema y las transferencias de archivos a través de redes no seguras mediante el cifrado para proteger las conexiones entre puntos finales. Las claves SSH son una parte importante del acceso seguro a las instancias informáticas de Oracle Cloud Infrastructure en la nube.

Si ya tiene un par de claves SSH, puede utilizarlo para conectarse al entorno. Recomendamos que utilice Oracle Cloud Shell para interactuar con la instancia informática de OCI que creará. Oracle Cloud Shell se basa en explorador, no requiere la instalación ni la configuración de nada en el portátil, y funciona independientemente de la configuración de red. Sin embargo, si prefiere conectarse a través de su portátil, seleccione una opción basada en su configuración.

Importante: si la clave SSH no se crea correctamente, no podrá conectarse a su entorno y obtendrá errores. Asegúrese de crear la clave correctamente.

Opción 1: Oracle Cloud Shell

Vea el siguiente vídeo para obtener una visión general de la opción Generate SSH Keys Cloud Shell.

La máquina Cloud Shell es una máquina virtual pequeña que ejecuta un shell Bash al que accede a través de la consola de OCI (página inicial). Cloud Shell incluye una CLI de OCI (interfaz de línea de comandos) autenticada previamente, configurada con la región de la página inicial de arrendamiento de la consola, así como herramientas y utilidades actualizadas. Para utilizar la máquina de Cloud Shell, el administrador de arrendamiento debe otorgar la política de IAM (Identity and Access Management) necesaria.

  1. Para iniciar el shell de Oracle Cloud, vaya a la consola de la nube y haga clic en el icono del shell en la parte superior derecha de la página.

  2. Una vez iniciado el shell en la nube, introduzca los siguientes comandos. Seleccione el nombre de clave que puede recordar. Este será el nombre de clave que utilizará para conectarse a cualquier instancia informática que cree. Pulse Intro dos veces para que no haya frase de contraseña.

    mkdir .ssh
    cd .ssh
    ssh-keygen -b 2048 -t rsa -f <<sshkeyname>>
    

    Nota: los paréntesis angulares "" no deben aparecer en el código.

  3. Examine los dos archivos que acaba de crear.

    ls
    

    Tenga en cuenta en la salida que hay dos archivos, una clave privada: <<sshkeyname>> y una clave pública: <<sshkeyname>>.pub. Mantenga la clave privada segura y no comparta su contenido con nadie. La clave pública será necesaria para varias actividades y se puede cargar en determinados sistemas, así como copiar y pegar para facilitar las comunicaciones seguras en la nube.

  4. Para mostrar el contenido de la clave pública, utilice el comando cat cat <<sshkeyname>>.pub

    Nota: los paréntesis angulares "" no deben aparecer en el código.

  5. Al pegar la clave en la instancia informática en prácticas futuras, asegúrese de eliminar los rendimientos permanentes que se hayan agregado al copiar. La clave .pub debe ser una línea.

Opción 2: MacOS

Vea el siguiente vídeo para obtener una visión general de la opción Generate SSH Keys Mac.

  1. Si aún no tiene un acceso directo a la aplicación de terminal para MacOS, puede encontrarlo en el menú Aplicaciones > Utilidades o (Shift+Command+U) en el teclado.

  2. Inicie Terminal y escriba el comando ssh-keygen. ssh-keygen le preguntará dónde guardar la clave, acepte el valor predeterminado de la carpeta .ssh en el directorio principal pulsando Intro. El nombre de archivo será id_rsa o lo que elija para asignar un nombre a su clave. Pulse Intro dos veces para que no haya frase de contraseña. Recuerde el directorio en el que ha guardado su clave (~/.ssh), deberá hacer referencia a ella más adelante cuando cree su instancia.

    ssh-keygen
    

  3. Escriba los siguientes comandos en la ventana de terminal para verificar que se hayan creado las claves públicas y privadas y para copiar el contenido de la clave pública para su uso en la creación de la instancia en el cuadro de diálogo OCI.

    cd .ssh
    ls
    cat id_rsa.pub
    

    Tenga en cuenta en la salida que hay dos archivos, una clave privada: id_rsa y una clave pública: id_rsa.pub. Mantenga la clave privada segura y no comparta su contenido con nadie. La clave pública será necesaria para varias actividades y se puede cargar en determinados sistemas, así como copiar y pegar para facilitar las comunicaciones seguras en la nube.

  4. Si está listo para crear una instancia, copie el contenido y pegue cuando se le solicite la clave SSH. Asegúrese de eliminar las devoluciones permanentes que se hayan agregado al copiar.

Haga clic en la guía del usuario del terminal MacOS.

Opción 3: Windows 10

Vea el siguiente vídeo para obtener una visión general de la opción Generar claves SSH Windows.

La creación de claves para Windows puede ser interesante ya que ssh-keygen no era una utilidad nativa para Windows hasta la versión de Windows 10. Y no se incluyó en las versiones iniciales de Windows 10.

  1. Abra una ventana de comandos de Powershell en el sistema Windows 10. Para ello, haga clic en el icono o el mosaico o escriba 'powershell' en el campo de búsqueda de la barra de inicio.

  2. Introduzca el comando ssh-keygen en la ventana de terminal. Preste especial atención a dónde se guardará el archivo para localizarlo más tarde. ssh-keygen adoptará por defecto el directorio .ssh estándar en el directorio base del usuario.

    ssh-keygen
    
  3. Pulse Intro en todas las peticiones de datos para aceptar la ubicación predeterminada, los nombres de archivo predeterminados y ninguna frase de contraseña.

    Nota: en las variantes de Unix, se suele designar una carpeta con un punto (.) delante de ella para los archivos de configuración y "oculta" desde la vista normal. Sin embargo, un punto (.) no significa nada especial delante de las carpetas de Windows. Por lo tanto, la carpeta existirá, pero no estará oculta.

  4. Confirme que las claves existen y se han creado correctamente. Introduzca los siguientes comandos en la ventana Powershell.

    cd .ssh
    ls
    cat id_rsa.pub
    

    Ahora tiene un par de claves SSH en funcionamiento y puede utilizarlo para comunicaciones seguras a instancias de la nube. No comparta la clave privada id_rsa con nadie a menos que entienda lo que está haciendo. Solo debe compartir y copiar la clave pública id_rsa.pub.

  5. Tenga en cuenta también que si decide copiar/pasar el contenido de la clave en determinados cuadros de diálogo de las prácticas, deberá localizar el archivo en Windows, ya sea a través de Powershell, Explorer u otras herramientas de directorio, y abrir el archivo de clave pública para copiar su contenido. El siguiente ejemplo es utilizar Powershell para cat el contenido. Puede seleccionar el texto con el mouse, pero los comandos de copiar/pegar no están disponibles. Utilice <ctrl-c> para copiar el contenido en el portapapeles para pegarlo en otros cuadros de diálogo de la aplicación.

    También puede abrir el archivo con Bloc de notas, Wordpad u otros editores de texto.

    Nota: no utilice MS Word ni ningún otro editor de texto enriquecido, ya que pueden agregar caracteres de formato adicionales que harán que la clave no se pueda utilizar.

Opción 4: versiones anteriores de Windows

Usar Git

En versiones anteriores de Windows, ssh-keygen no era una utilidad nativa, por lo que era necesario utilizar utilidades de terceros. En esta sección, ilustraremos el uso de Git for Windows. Git for Windows incluye un shell similar a Unix denominado Git Bash, que es lo que utilizará para crear claves y establecer comunicaciones SSH con los sistemas host en la nube. Si prefiere PuTTY, vaya a la siguiente sección.

  1. Si aún no lo tiene instalado, acceda al siguiente enlace y descargue la aplicación. Si no puede instalar nada en el portátil debido a problemas de permiso, utilice la opción Oracle Cloud Shell anterior.

    Haga clic aquí para descargar Git para Windows

  2. Siga las instrucciones de instalación.

    Nota: La instalación de Git para Windows está fuera del ámbito de este laboratorio.

  3. Una vez instalado, debe tener una entrada en el menú Inicio de Windows para Git, que debe incluir el comando Git Bash. Haga clic en el comando Git Bash.

  4. Escriba ssh-keygen en la ventana de terminal. Pulse la tecla Intro para aceptar la ubicación predeterminada (~/.ssh) y el nombre de archivo predeterminado (id_rsa) y <Enter> dos veces más para que no haya frase de contraseña.

    ssh-keygen
    

    Nota: La parte difícil aquí es que Git Bash utiliza un directorio raíz de Unix simulado. Para ver, recuperar o copiar las claves, deberá navegar a la estructura de directorios de Windows.

  5. En primer lugar, navegue hacia arriba en el directorio raíz C:.

    cd c:
    

    A continuación, navegue hacia abajo en la carpeta .ssh del directorio raíz normal.

    cd Users/<your home folder name>/.ssh/
    

    Nota: los paréntesis angulares <> no deben aparecer en el código.

    ls
    

    Tenga en cuenta en la salida que hay dos archivos, una clave privada: id_rsa y una clave pública: id_rsa.pub. Mantenga la clave privada segura y no comparta su contenido con nadie. La clave pública será necesaria para varias actividades y se puede cargar en determinados sistemas, así como copiar y pegar para facilitar las comunicaciones seguras en la nube.

  6. Anote dónde se encuentran sus archivos de clave pública y privada SSH. Puede que se le solicite que cargue el archivo o que copie/pegue el contenido en otras prácticas de Oracle Cloud Services. Copie el contenido de la clave exactamente, capturando espacio después de los caracteres de clave puede que su clave no sea válida. En el siguiente ejemplo, puede utilizar el comando gitbash cat para mostrar el contenido del archivo de clave pública. Puede seleccionar el contenido del archivo de claves y hacer clic con el botón derecho para Copiar la clave. O bien puede cargar el archivo directamente.

    Nota: Si ya ha instalado Git para Windows, no se moleste con PuTTY. Seleccione la utilidad que desea utilizar para la generación de claves y el acceso a terminal.

Utilice PuTTY

En versiones anteriores de Windows, ssh-keygen no era una utilidad nativa, por lo que era necesario utilizar utilidades de terceros. En esta sección, ilustraremos el uso de PuTTY. Si prefiere Git for Windows, visite la opción antes de esta.

  1. Si aún no lo tiene instalado, acceda al siguiente enlace y descargue la aplicación. Para los empleados de Oracle, PuTTY también está disponible para su descarga interna mediante la aplicación MyDesktop. Para empleados y clientes que no sean de Oracle, utilice el siguiente enlace. Si no puede instalar nada en el portátil debido a problemas de permiso, utilice la opción Oracle Cloud Shell anterior.

    Haga clic aquí para descargar PuTTY para Windows

  2. Siga las instrucciones de instalación.

    Nota: La instalación de PuTTY está fuera del ámbito de este documento de prácticas.

    Una vez instalado, debe tener una entrada en el menú Inicio de Windows y quizás un acceso directo de escritorio para PuTTY. PuTTY es en realidad un conjunto de utilidades de comunicación seguras. Utilizaremos dos de ellas, la utilidad PuTTY para el acceso a terminal y la utilidad PuTTYgen para generar una clave SSH segura.

  3. Abra el menú de inicio de Windows y acceda a la carpeta PuTTY. Seleccione la utilidad PuTTYgen.

  4. Verifique que los valores por defecto estén seleccionados y que el tipo de clave sea RSA establecido en 2048 bits. Haga clic en el botón Generate (Generar).

  5. Siga las instrucciones y pase el ratón por el área gris vacía para generar información aleatoria. PuTTY utiliza esa información para generar una clave SSH aleatoria y segura.

  6. En la pantalla siguiente, PuTTY ha tomado la información del mouse y creado una clave. Tenemos que hacer varias cosas aquí que son un poco diferentes a otros métodos clave de generación. Aunque en realidad no podemos utilizar el archivo para una instancia de OCI, seguiremos deseando guardar la clave para futuras referencias. Haga clic en el botón Guardar clave pública.

    Nota: PuTTY no guarda las claves en un formato compatible con OpenSSH. Por lo tanto, si carga un archivo de clave pública creado con PuTTY en un sistema Linux/Unix mediante OpenSSH, la clave no se leerá correctamente. Sin embargo, la información de clave en sí, cuando se copia directamente desde la aplicación PuTTYgen, funciona correctamente cuando se pega en campos que luego utilizan esa información para crear una clave compatible con OpenSSH adecuada. Por ejemplo, al crear una instancia en OCI, puede pasar la clave SSH de PuTTY y funcionará correctamente.

  7. En el cuadro de diálogo Guardar clave pública como:, asigne un nombre a su clave y agregue la extensión .pub al nombre de archivo. También será útil si guarda el archivo en la carpeta .ssh común bajo su estructura de nombre de usuario/carpeta de Windows. En este ejemplo, se podrá acceder al directorio C:\Users\<username>\.ssh. Guarde las claves aquí para facilitar la referencia futura.

  8. A continuación, deberá guardar la clave privada. Haga clic en el botón Save private key (Guardar clave privada), responda Yes (Sí) a la advertencia sobre cómo guardar sin una frase de contraseña.

  9. Asigne un nombre a la clave y verifique que se guarda con una extensión .ppk para identificar el archivo como archivo de clave privada. No comparta su clave privada con nadie.

  10. Ahora ha guardado las claves para referencia futura, lo único que tiene que hacer es copiar la información de clave del cuadro de diálogo PuTTY.

  11. Seleccione el texto de clave en el cuadro de diálogo de principio a fin y, a continuación, haga clic con el botón derecho y seleccione Copiar. A continuación, puede pegar la clave en un bloc de notas o directamente en el cuadro de diálogo de creación de instancias de la consola de OCI.

  12. A continuación se muestra un ejemplo del cuadro de diálogo Agregar clave SSH: pegar claves SSH en el formulario de creación de la instancia de OCI.

    Con esto finaliza la sección sobre el uso de PuTTY para generar un par de claves SSH para versiones de Windows antes de Windows 10.

    Siga las siguientes instrucciones para conectarse a una instancia en la nube mediante SSH con el terminal PuTTY.

Conexión a una instancia mediante PuTTY

  1. Abra la utilidad PuTTY desde el menú de inicio de Windows. En el cuadro de diálogo, introduzca la dirección IP de la instancia informática de OCI. Esto se puede obtener en la pantalla Consola de OCI > Recursos informáticos > Instancias > Detalles de instancia.

  2. En Categoría, seleccione Conexión y, a continuación, seleccione el campo Datos. Introduzca el nombre de usuario de la instancia asignada. Las instancias de OCI se establecerán por defecto en el nombre de usuario opc. Introduzca opc.

  3. En Categoría, vaya a Conexión - SSH y seleccione la categoría Autenticación. Haga clic en el botón Examinar y busque private key file que ha creado en el paso anterior. Haga clic en el botón Abrir para iniciar la conexión SSH con la instancia en la nube.

  4. Haga clic en para omitir la alerta de seguridad sobre la clave no almacenada en caché.

  5. Conexión correcta. Ahora está conectado de forma segura a una instancia de OCI Cloud.

    Ahora puede conectarse de forma segura mediante la utilidad de terminal PuTTY. Puede guardar la información de conexión para su uso futuro y configurar PuTTY con su propia configuración personalizada.

    Nota: Si ya ha instalado PuTTY, no se moleste con Git para Windows. Es su opción que utilizar para la generación de claves y el acceso a terminal.

    Para obtener más información sobre el uso de PuTTY

Opción 5: Claves SSH para Linux

  1. Abra una ventana de terminal y escriba el comando ssh-keygen. Hay algunas opciones de línea de comandos para la utilidad ssh-keygen; sin embargo, para la creación rápida y sucia de claves para el uso de prácticas, no se necesitan opciones. Escriba ssh-keygen --help en la ventana de terminal para ver todas las opciones posibles. Por ahora, solo ejecute el comando por sí mismo.

    ssh-keygen
    
  2. Debe ejecutar este comando desde el directorio principal. En este caso, como ID de usuario opc. El cuadro de diálogo se definirá por defecto en un directorio oculto, ~/.ssh. Si aún no ha creado claves, acepte el nombre de archivo por defecto id_rsa. Para ello, pulse la tecla Intro. Pulse la tecla Intro dos veces más para crear una clave sin frase de contraseña. La mejor práctica en un entorno de producción sería utilizar una frase de contraseña segura; sin embargo, no necesitamos molestarnos por estas prácticas de laboratorio.

    El cuadro de diálogo indicará que el par de claves se ha guardado en el directorio /home/username/.ssh y ahora está listo para su uso.

  3. Cambie al directorio .ssh, muestre y examine las claves.

    cd .ssh
    ls
    

    Tenga en cuenta en la salida que hay dos archivos, una clave privada: id_rsa y una clave pública: id_rsa.pub. Mantenga la clave privada segura y no comparta su contenido con nadie. La clave pública será necesaria para varias actividades y se puede cargar en determinados sistemas, así como copiar y pegar para facilitar las comunicaciones seguras en la nube.

  4. Utilice el comando cat de Linux para mostrar el contenido de id_rsa.pub.

    cat id_rsa.pub
    

  5. En algunas prácticas, se le pedirá que cargue o copie (rcp) la clave pública en una instancia para facilitar las comunicaciones. Por lo tanto, recuerde dónde se guarda el archivo. Otros laboratorios solicitarán el "contenido" de la clave que se pegará en varios cuadros de diálogo para facilitar conexiones seguras. Utilice el comando cat y copie/paste la información de la clave a partir de la palabra "ssh-rsa" y copie todo hasta el carácter final de la línea. En el siguiente ejemplo, se copiaría de "ssh-rsa ..." y a justo después de "... -01". Copie el contenido de la clave exactamente, la captura de espacio después de los caracteres de clave puede hacer que su clave no sea válida.

    Ha creado un par de claves SSH públicas/privadas y puede utilizarlo en cualquiera de las prácticas de OCI de Oracle que requieren una clave SSH.

    Si está interesado, haga clic aquí para obtener más información sobre SSH, un breve tutorial sobre cómo iniciar una conexión desde una instancia de Linux con las claves SSH que acabamos de crear.

Agradecimientos

Más recursos de aprendizaje

Explore otras prácticas en docs.oracle.com/learn o acceda a más contenido de aprendizaje libre en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.