Problemas con macOS Sierra y el SSH para acceder a repositorios Git

De vez en cuando está bien remangarse un poco y ver cómo funcionan las cosas a nivel de Sistema Operativo. En este tutorial veremos algunos problemas a la hora de trabajar con aplicaciones que usan vuestra SSH key.

1. Introducción

Es posible que desde la llegada de macOS Sierra hayáis notado ciertas molestias a la hora de trabajar con vuestros repositorios remotos de Git. Esto lo habéis podido notar sobre todo si:

  • Usáis la línea de comandos

  • Tenéis vuestro fichero de identidad (supongamos que vuestro SSH key es

    Text
    ~/.ssh/id_rsa

    ) con clave de acceso (passphrase)

Los síntomas serán que, a partir de macOS Sierra, seguramente cada vez que vais a hacer una operación contra el servidor, como

Text
push

,

Text
pull

, o

Text
fetch

, os preguntará cual es vuestra clave para acceder al SSH key. Esto antes no ocurría porque la clave se guardaba en el llavero (Keychain), pero este comportamiento por defecto se ha quitado en macOS Sierra.

Aunque he hablado de la línea de comandos, seguramente también tengáis problemas con otras aplicaciones que igualmente usan vuestra SSH key, como por ejemplo el Sourcetree.

2. Entorno

El tutorial está escrito usando el siguiente entorno:

  • Hardware: Portátil MacBook Pro 15» (2.9 GHz Intel i7, 16GB 2133 MHz LPDDR3, 500GB Flash Storage).

  • AMD Radeon Pro 460 4096 MB

  • Sistema Operativo: macOS Sierra 10.12.2

  • Git 2.10.1

3. Solucionando el problema con ssh-agent

Una solución rápida sería quitarle la clave (passphrase) a nuestro SSH key, pero teniendo en cuenta que nuestra SSH key define nuestra identidad, esta opción no sería nada recomendable ya que estaríamos facilitando mucho el robo de esta identidad.

Para poder mantener el acceso al SSH key con clave y no tener que estar poniendo la clave cada vez que queremos usar nuestra identidad, vamos a usar el programa

Text
ssh-agent

. Esta es una pequeña aplicación que guarda las claves en memoria mientras dura la sesión, de forma que cuando queremos acceder a nuestra identidad será

Text
ssh-agent

quién proporcione la clave en vez de tener que hacerlo nosotros.

Además vamos a combinar el uso de ssh-agent con nuestro llavero de claves (Keychain) de forma que la clave se guarde en este y tampoco tengamos que meter la clave cada vez que empezamos una nueva sesión al reiniciar la máquina. Esta en concreto es la funcionalidad que se ha desactivado con macOS Sierra.

Para ello vamos a crear el fichero

Text
~/.ssh/config

con las siguientes líneas:


Text
Host *
  UseKeychain yes
  AddKeysToAgent yes
  IdentityFile ~/.ssh/id_rsa

Ahora (sólo hay que hacerlo la primera vez) vamos a añadir nuestra SSH key al

Text
ssh-agent

, de manera que introduzcamos la clave y se guarde en el llavero (Keychain). Para ello ejecutamos en un terminal:


Text
$ ssh-add -K ~/.ssh/id_rsa

Importante el

Text
-K

que es lo que hace que se añada al Keychain.

Si queremos comprobar que se ha añadido correctamente, podemos ejecutar el siguiente comando para ver un listado de las SSH keys que están siendo gestionadas por el

Text
ssh-agent

:


Text
$ ssh-add -l

Desde este momento deberíamos de poder acceder al SSH key sin necesidad de introducir la clave manualmente. Así que tanto Git como Sourcetree deberían de volver a funcionar con normalidad.

5. Conclusiones

Muchas veces ejecutamos aplicaciones de escritorio, IDEs, …​ que nos facilitan la vida en nuestro trabajo diario, pero se nos olvidan los principios de funcionamiento de las cosas que usamos. Por eso de vez en cuando está bien remangarse un poco y ver cómo funcionan las cosas a nivel de Sistema Operativo.

Ya veis que, después de todo, tampoco es tan difícil, y vemos cómo con unos sencillos pasos podemos combinar comodidad y potencia.

6. Sobre el autor

Alejandro Pérez García (@alejandropgarci)
Ingeniero en Informática (especialidad de Ingeniería del Software) y Certified ScrumMaster

Socio fundador de Autentia Real Business Solutions S.L. – «Soporte a Desarrollo»

Socio fundador de ThE Audience Megaphone System, S.L. – TEAMS – «Todo el potencial de tus grupos de influencia a tu alcance»

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad

Información básica acerca de la protección de datos

  • Responsable: IZERTIS S.A.
  • Finalidad: Envío información de carácter administrativa, técnica, organizativa y/o comercial sobre los productos y servicios sobre los que se nos consulta.
  • Legitimación: Consentimiento del interesado
  • Destinatarios: Otras empresas del Grupo IZERTIS. Encargados del tratamiento.
  • Derechos: Acceso, rectificación, supresión, cancelación, limitación y portabilidad de los datos.
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad

Alejandro es socio fundador de Autentia y nuestro experto en Java EE, Linux y optimización de aplicaciones empresariales. Ingeniero en Informática y Certified ScrumMaster. Seguir @alejandropgarci Si te gusta lo que ves, puedes contratarle para darte ayuda con soporte experto, impartir cursos presenciales en tu empresa o para que realicemos tus proyectos como factoría (Madrid). Puedes encontrarme en Autentia: Ofrecemos servicios de soporte a desarrollo, factoría y formación.

¿Quieres publicar en Adictos al trabajo?

Te puede interesar

02/03/2026

José Antonio Sánchez Segovia

Zephyr es un RTOS open source respaldado por la Linux Foundation que permite desarrollar dispositivos embebidos conectados, eficientes y escalables, facilitando el paso de prototipo a producto final con una arquitectura mantenible.

23/02/2026

Enrique Casado Díez

LoRa y LoRaWAN son tecnologías clave en el ecosistema IoT cuando se requiere largo alcance y bajo consumo energético. En este artículo analizamos su funcionamiento, Spreading Factor, link budget, arquitectura de red, frecuencias y clases de dispositivos, con un caso práctico real.

19/02/2026

Juan José Díaz Antuña

Copilot Chat es la forma más sencilla y segura de empezar a usar IA en Microsoft 365. En este artículo vemos cómo funciona, cómo activarlo y en qué se diferencia de Microsoft 365 Copilot, Copilot Studio y los Agentes Inteligentes, con ejemplos prácticos y una comparativa clara.