3 votos

La Clave SSH Error, sudo funciona bien

Cuando trato de ssh (using ssh user@server.com) en mi servidor en casa desde la red local o desde fuera, me sale el siguiente error: enter image description here

Pero si yo uso sudo ssh user@server.com, funciona sin problemas: enter image description here

Estoy seguro de que sólo tiene que colocar algún tipo de clave en que /Users/mattlove/.ssh/known_hosts directorio, pero no estoy seguro de cómo o por qué.

Alguno de ustedes UNIX aficionados por ahí no tiene una respuesta?

E D I T :

Aquí están los resultados de la ejecución ls -l ~/.ssh/known_hosts lo solicitado por @LoïcWolff

enter image description here

10voto

Gerry Puntos 10709

La primera vez que se conecte a un servidor, se le pedirá que acepte la huella dactilar para el host que se conecta. La huella digital es una combinación de una firma digital, el nombre de host y la dirección IP del servidor. Cuando usted acepta la huella dactilar, se guarda en ~/.ssh/known_hosts como "de confianza" de acogida.

Por alguna razón, el servidor de la huella digital ha cambiado desde la primera vez que se conecta a él. Esto puede ser debido a que no es el servidor se espera, por ejemplo, si su solicitud está siendo interceptada y redirige a un servidor diferente. De ahí la advertencia de seguridad. La explicación podría ser también menos malicioso, por ejemplo, cuando el servidor fue sustituido/reinstalar sin la restauración de la anterior firma digital, o cuando la dirección IP ha cambiado.

Si a pesar de la advertencia de seguridad, que todavía confía en el servidor al que está conectado, usted debe abrir ~/.ssh/known_hosts y busque la línea que comienza con la dirección del servidor al que se conecta. Quitar toda la línea y guardar los cambios, luego vuelva a conectar con el servidor. La primera vez que se conecte, debe pedirle que acepte la actualización de la huella dactilar, después de lo cual usted no debería tener más problemas de conexión a dicho host.

La razón por la que funcionaría con sudo es debido a que en las condiciones que se ejecuta como un usuario diferente (root), y cada usuario tiene su propio archivo known_hosts (de root de esto se encuentra en /private/var/root/.ssh/known_hosts). la root puede no haber grabado el anterior huella de ese host, y por ello, no tiene modo de compararla con la actual, y no hay razón para desconfiar del servidor.

5voto

WraithNath Puntos 138

El known_hosts archivo contiene las claves de hosts a los que se han conectado previamente, y de haber comprobado que han marcado la clave de la firma es correcta.

En su caso, una de las dos cosas ha sucedido,

  1. La clave del servidor ha cambiado desde que se aprobó para su cuenta, pero no desde que fue aprobado por el root de la cuenta.
  2. Hay un atacante interceptar las comunicaciones entre el usuario y el servidor, y se ha aprobado la clave para la root de la cuenta y tiene la clave correcta en su cuenta.

Lo más probable es caso 1 - hombre-en-el-medio de los ataques en SSH, mientras sea posible, son relativamente raros. La advertencia está ahí para alertar sobre el hecho de que alguien puede ser la interceptación de las comunicaciones, aunque las posibilidades son bastante bajos.

Para resolver este problema, abra la known_hosts archivo y quitar la entrada para el host en cuestión. En contacto con el Administrador del Sistema para el host y pedir el 'Clave de Host Huella". Hacer de nuevo la conexión, compruebe que la huella coincide con la que se ve desde el Administrador del Sistema y aprobar la clave.

Si la huella no coincide con la suministrada por el Administrador del Sistema del host remoto, NO aprueban la clave!!

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X