Permiso denegado al agregar la clave SSH a .ssh/config

Estoy tratando de agregar la clave SSH para ~/.ssh/configusarecho "IdentityFile ~/.ssh/my-ssh-key" >> ~/.ssh/config

me esta mostrando error-bash: /Users/gaurav/.ssh/config: Permission denied

que estoy haciendo mal?

Permiso a las carpetas

total 64
-rw-r--r--  1 root    staff    85 Apr 15 12:59 config
-rw-------  1 gaurav  staff  1766 Jan  4 23:11 github_rsa
-rw-r--r--@ 1 gaurav  staff   404 Mar 20 09:50 github_rsa.pub
-r--------  1 gaurav  staff  1766 Mar 20 10:05 google-sb-server
-rw-r--r--  1 gaurav  staff   388 Mar 20 10:05 google-sb-server.pub
-rw-------  1 gaurav  staff  3247 Jan  5 10:37 id_rsa
-rw-r--r--  1 gaurav  staff   726 Jan  5 10:37 id_rsa.pub
-rw-r--r--  1 gaurav  staff  2230 Mar 20 12:45 known_hosts

Respuestas (2)

El archivo de configuración en ~/.ssh/ tiene el propietario/permisos incorrectos. Es propiedad de root.

Cambia el dueño a gaurav con:

sudo chown gaurav:staff ~/.ssh/config

ingrese su contraseña y funcionará (si es un sudoer).

Esta completo gracias. Ahora soy capaz de hacer. Una vez más, dar propiedad a current_user es seguro en caso de SSH
@twister_void Realmente no entiendo tu pregunta en el comentario. Agregue una segunda pregunta sobre problemas de seguridad (¿del archivo de configuración?) en el sitio principal (apple.stackexchange).
  • El directorio de inicio en el servidor no debe ser escribible por otros:chmod go-w ~/
  • La carpeta SSH en el servidor necesita 700 permisos:chmod 700 ~/.ssh
  • El archivo Authorized_keys necesita 644 permisos:chmod 644 ~/.ssh/authorized_keys
  • Asegúrese de que sea gauravel propietario de los archivos/carpetas y no root: chown user:gaurav authorized_keysychown user:gaurav ~/.ssh
  • Coloque la clave pública generada (desde ssh-keygen) en el archivo del usuario authorized_keysen el servidor
  • Asegúrese de que el directorio de inicio del usuario esté configurado como espera y que contenga la .sshcarpeta correcta que ha estado modificando. Si no, use usermod -d ~/ gauravpara solucionar el problema
  • Finalmente, reinicie ssh:service ssh restart
  • Luego, asegúrese de que el cliente tenga la clave pública y los archivos de clave privada en la .sshcarpeta del usuario local e inicie sesión:ssh gaurav@host.com

¡Toda la suerte!