Pasos de configuración para conexiones SSH a repositorios de AWS CodeCommit en Windows - AWS CodeCommit

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Pasos de configuración para conexiones SSH a repositorios de AWS CodeCommit en Windows

Antes de conectarse a AWS CodeCommit por primera vez, debe completar algunos pasos de la configuración inicial. Después de configurar su ordenador y su perfil de AWS, puede conectarse a un repositorio de CodeCommit y clonar ese repositorio en su ordenador (también conocido como creación de un repositorio local). Si Git es nuevo para usted, es posible que quiera consultar la información que aparece en ¿Dónde puedo encontrar más información sobre Git?.

Paso 1: Configuración inicial de CodeCommit

Siga estos pasos para configurar una cuenta de Amazon Web Services, crear un usuario de IAM y configurar el acceso a CodeCommit.

Para crear y configurar un usuario de IAM para obtener acceso a CodeCommit
  1. Para crear una cuenta de Amazon Web Services, acceda a http://aws.amazon.com y seleccione Registrarse.

  2. Cree un usuario de IAM o use uno existente en su cuenta de Amazon Web Services. Asegúrese de que tiene un ID de clave de acceso y una clave de acceso secreta asociados a ese usuario de IAM. Para obtener más información, consulte Creación de un usuario de IAM en su cuenta de Amazon Web Services.

    nota

    CodeCommit requiere AWS Key Management Service. Si está usando un usuario de IAM existente, asegúrese de que no haya directivas asociadas al usuario que denieguen expresamente las acciones de AWS KMS requeridas por CodeCommit. Para obtener más información, consulte AWS KMS y cifrado.

  3. Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/.

  4. En la consola de IAM, en el panel de navegación, seleccione Usuarios y, a continuación haga clic en el usuario de IAM que desee configurar para el acceso a CodeCommit.

  5. En la pestaña Permissions, seleccione Add Permissions.

  6. En Grant permissions, elija Attach existing policies directly.

  7. En la lista de políticas, seleccione AWSCodeCommitPowerUser u otra política administrada para obtener acceso a CodeCommit. Para obtener más información, consulte Políticas administradas de AWS para CodeCommit.

    Una vez que haya seleccionado la política que desee asociar, seleccione Siguiente: Revisar para revisar la lista de políticas que se van a asociar al usuario de IAM. Si la lista es correcta, seleccione Add permissions.

    Para obtener más información sobre las políticas administradas de CodeCommit y cómo compartir el acceso a los repositorios con otros grupos y usuarios, consulte Compartir un repositorio y Autenticación y control de acceso de AWS CodeCommit.

nota

Si desea utilizar los comandos de la AWS CLI en CodeCommit, instale la AWS CLI. Para obtener más información, consulte Referencia de la línea de comandos.

Paso 2: Instalar Git

Para trabajar con archivos, confirmaciones y otra información en los repositorios de CodeCommit, debe instalar Git en su equipo local. CodeCommit admite las versiones de Git 1.7.9 y posteriores. La versión 2.28 de Git admite la configuración del nombre de la ramificación para las confirmaciones iniciales. Recomendamos usar una versión reciente de Git.

Para instalar Git, le recomendamos sitios web como Git Downloads.

nota

Git es una plataforma en evolución que se actualiza periódicamente. En ocasiones, un cambio en una característica podría afectar a la forma en que trabaja con CodeCommit. Si experimenta problemas con una versión específica de Git y CodeCommit, consulte la información de Solución de problemas.

Si la versión de Git que ha instalado no incluye un emulador de Bash, como, por ejemplo, Git Bash, instale uno. Utiliza este emulador en lugar de la línea de comandos de Windows para configurar las conexiones SSH.

Paso 3: Configurar las claves públicas y privadas para Git y CodeCommit

Para configurar las claves públicas y privadas de Git y CodeCommit en Windows
  1. Abra el emulador de Bash.

    nota

    Es posible que deba ejecutar el emulador con permisos administrativos.

    En el emulador, ejecute el comando ssh-keygen y siga las instrucciones que aparecen para guardar el archivo en el directorio .ssh de su perfil.

    Por ejemplo:

    $ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/drive/Users/user-name/.ssh/id_rsa): Type a file name here, for example /c/Users/user-name/.ssh/codecommit_rsa Enter passphrase (empty for no passphrase): <Type a passphrase, and then press Enter> Enter same passphrase again: <Type the passphrase again, and then press Enter> Your identification has been saved in drive/Users/user-name/.ssh/codecommit_rsa. Your public key has been saved in drive/Users/user-name/.ssh/codecommit_rsa.pub. The key fingerprint is: 45:63:d5:99:0e:99:73:50:5e:d4:b3:2d:86:4a:2c:14 user-name@client-name The key's randomart image is: +--[ RSA 2048]----+ | E.+.o*.++| | .o .=.=o.| | . .. *. +| | ..o . +..| | So . . . | | . | | | | | | | +-----------------+

    Esto genera:

    • El archivo codecommit_rsa, que es el archivo de clave privada.

    • El archivo codecommit_rsa.pub, que es el archivo de clave pública.

    sugerencia

    De forma predeterminada, ssh-keygen genera una clave de 2048 bits. Puede usar los parámetros -t y -b para especificar el tipo y la longitud de la clave. Si desea una clave de 4096 bits en formato rsa, debe especificarla ejecutando el comando con los siguientes parámetros:

    ssh-keygen -t rsa -b 4096

    Para obtener más información sobre los formatos y las longitudes necesarios para las claves SSH, consulte Uso de IAM con CodeCommit.

  2. Ejecute los siguientes comandos para mostrar el valor del archivo de clave pública (codecommit_rsa.pub):

    cd .ssh notepad codecommit_rsa.pub

    Copie el contenido del archivo y, a continuación, cierre el Bloc de notas sin guardar. El contenido del archivo es similar a este:

    ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2 5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@computer-name
  3. Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/.

    nota

    Puede ver y administrar directamente sus credenciales de CodeCommit en Mis credenciales de seguridad. Para obtener más información, consulte Visualización y administración de sus credenciales.

  4. En el panel de navegación de la consola de IAM, seleccione Usuarios y, en la lista de usuarios seleccione su usuario de IAM.

  5. En la página de detalles del usuario, elija la pestaña Security Credentials y, a continuación, elija Upload SSH public key.

  6. Pegue el contenido de la clave SSH pública en el campo y, a continuación, elija Upload SSH public key.

  7. Copie o guarde la información en SSH Key ID (por ejemplo, APKAEIBAERJR2EXAMPLE).

    El ID de la clave SSH en la consola de IAM
    nota

    Si tiene más de un ID de clave de SSH cargado, las claves se enumeran alfabéticamente por ID de clave, no por fecha de subida. Asegúrese de que ha copiado el ID de clave que está asociado a la fecha de carga correcta.

  8. En el emulador de Bash, ejecute los siguientes comandos para crear un archivo de configuración en el directorio ~/.ssh, o edítelo si existiera uno:

    notepad ~/.ssh/config
  9. Añada las siguientes líneas al archivo, donde el valor de User es el ID de clave SSH que copió anteriormente y el valor de IdentityFile es la ruta y el nombre del archivo de clave privada:

    Host git-codecommit.*.amazonaws.com User APKAEIBAERJR2EXAMPLE IdentityFile ~/.ssh/codecommit_rsa
    nota

    Si el archivo de clave privada tiene un nombre diferente a codecommit_rsa, no se olvide de usarlo aquí.

    Puede configurar el acceso SSH a los repositorios de varias cuentas de Amazon Web Services. Para obtener más información, consulte Solución de problemas de conexiones SSH a AWS CodeCommit.

    Guarde el archivo como config (no como config.txt) y, a continuación, cierre el Bloc de notas.

    importante

    El nombre del archivo debe ser config sin extensión de archivo. De lo contrario, las conexiones SSH fallan.

  10. Ejecute el siguiente comando para probar la configuración SSH:

    ssh git-codecommit.us-east-2.amazonaws.com

    Se le pedirá que confirme la conexión, porque git-codecommit.us-east-2.amazonaws.com aún no está incluido en su archivo de hosts conocidos. La huella digital del servidor CodeCommit se muestra como parte de la verificación (a9:6d:03:ed:08:42:21:be:06:e1:e0:2a:d1:75:31:5e para MD5 o 3lBlW2g5xn/NA2Ck6dyeJIrQOWvn7n8UEs56fG6ZIzQ para SHA256).

    nota

    Las huellas digitales del servidor CodeCommit son únicas para cada Región de AWS. Para ver las huellas digitales del servidor de un Región de AWS, consulte Huellas digitales del servidor para CodeCommit.

    Una vez que haya confirmado la conexión, debería ver la confirmación que ha añadido al servidor en el archivo de hosts conocidos y un mensaje de conexión correcta. Si no ve un mensaje de operación correcta, compruebe que ha guardado el archivo config en el directorio ~/.ssh del usuario de IAM que configuró para acceder a CodeCommit, que el archivo config no tiene extensión de archivo (por ejemplo, no debe denominarse config.txt) y que ha especificado el archivo de clave privada correcto (codecommit_rsa, no codecommit_rsa.pub).

    Para solucionar problemas, ejecute el comando ssh con el parámetro -v. Por ejemplo:

    ssh -v git-codecommit.us-east-2.amazonaws.com

    Para obtener más información con la que solucionar problemas de conexión, consulte Solución de problemas de conexiones SSH a AWS CodeCommit.

Paso 4: Conectarse a la consola de CodeCommit y clonar el repositorio

Si un administrador ya le ha enviado el nombre y los detalles de conexión del repositorio de CodeCommit, puede omitir este paso y clonar el repositorio directamente.

Conexión a un repositorio de CodeCommit
  1. Abra la consola de CodeCommit en https://console.aws.amazon.com/codesuite/codecommit/home.

  2. En el selector de regiones, seleccione la región en la que se creó el repositorio de Región de AWS. Cada Región de AWS tiene sus propios repositorios. Para obtener más información, consulte Regiones y puntos de conexión de Git.

  3. Encuentre en la lista el repositorio con el que desea establecer la conexión y selecciónelo. Elija Clone URL (Clonar URL), y, a continuación, elija el protocolo que desea utilizar al clonar o conectarse al repositorio. Con esto se copia la URL clonada.

    • Copie la URL HTTPS si utiliza credenciales de Git con su usuario de IAM o el ayudante de credenciales incluido con AWS CLI.

    • Copie la dirección URL HTTPS (GRC) si utiliza el comando git-remote-codecommit en su equipo local.

    • Copie la URL SSH si utiliza un par de claves pública y privada SSH con su usuario de IAM.

    nota

    Si ve una página de Bienvenida en lugar de la lista de repositorios, es que no existen repositorios asociados a su cuenta de AWS en la Región de AWS en la que ha iniciado sesión. Para crear un repositorio, consulte Cree un repositorio AWS CodeCommit o siga los pasos del tutorial Introducción a Git y CodeCommit.

  4. En el emulador de Bash, ejecute el comando git clone con la URL SSH que copió para clonar el repositorio. Este comando crea el repositorio local en un subdirectorio del directorio en el que ejecuta el comando. Por ejemplo, para clonar un repositorio denominado MyDemoRepo en un repositorio local llamado my-demo-repo en la región del este de EE. UU. (Ohio):

    git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo

    También puede abrir un símbolo del sistema y, con la URL y el ID de clave SSH de la clave pública que ha cargado en IAM, ejecutar el comando git clone. El repositorio local se crea en un subdirectorio del directorio en el que ejecuta el comando. Por ejemplo, para clonar un repositorio denominado MyDemoRepo en un repositorio local llamado my-demo-repo:

    git clone ssh://Your-SSH-Key-ID@git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo

    Para obtener más información, consulte Conéctese al CodeCommit repositorio clonando el repositorio y Creación de una confirmación.

Pasos siguientes

Ha completado los requisitos previos. Siga los pasos que se indican en Empezando con CodeCommit para empezar a utilizar CodeCommit.