GNU/Linux >> Tutoriales Linux >  >> Linux

Eludir la identificación de host remoto ha cambiado advertencia

Si desea pasar argumentos a algo predefinido en Bash, puede usar una función en lugar de un alias con el mismo efecto:

ssh-keyrm() { ssh-keygen -f "$HOME/.ssh/known_hosts" -R "$1"; }

Que se ejecutaría como tal:

$ ssh-keyrm 127.0.0.1

Al igual que los alias, las funciones pueden almacenarse en .bashrc, .bash_profile o definirse en línea en un shell.


no puede proporcionar un argumento al alias

Los alias de Bash funcionan como expansiones simples (el nombre del alias simplemente se reemplaza con el valor del alias), por lo que no pueden hacer referencia a individual argumentos usando $n.

Sin embargo, puede proporcionar argumentos siempre que vayan al final del comando Con un alias como este:

alias rmh="ssh-keygen -f ~/.ssh/known_hosts -R"

puedes ejecutarlo como rmh 192.168.0.1 y aunque la palabra rmh se expandirá, todos los argumentos que le sigan permanecerán en el mismo lugar.


Tengo un problema similar con diferentes dispositivos que usan la misma IP, pero tomé un enfoque ligeramente diferente para resolverlo:evitar que las claves del host ingresen a known_hosts en primer lugar .

alias sshn='ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'

Luego ejecuta sshn siempre que desee deshabilitar la seguridad de la clave de host.

$ sshn [email protected]
Warning: Permanently added '192.168.1.1' (ECDSA) to the list of known hosts.

[email protected]'s password:

ssh le dice que agregó el host a los hosts conocidos, pero en realidad no lo hizo ya que la escritura fue a /dev/null . Puede suprimir esto jugando con el nivel de registro, pero eso puede desactivar otros mensajes útiles.

También tengo StrictHostKeyChecking=no para que omita la solicitud de autenticidad, pero si prefiere ver la huella digital de la llave, puede omitir esa opción.


Linux
  1. Cómo configurar conexiones SSH personalizadas para simplificar el acceso remoto

  2. SSH a hosts remotos a través de un proxy o bastión con ProxyJump

  3. Debian:¿el nombre del host se cambió de forma remota por Wi-Fi?

  4. ¿Cómo se analizan los argumentos de la línea de comandos remotos de Ssh?

  5. Cómo alojar correo electrónico en un alias de dominio

Cómo administrar el host remoto de Windows usando Ansible

Arreglar el error "ADVERTENCIA:LA IDENTIFICACIÓN DEL HOST REMOTO HA CAMBIADO" en Linux

¿Cómo pasar parámetros a un alias?

SSH - "LA IDENTIFICACIÓN DEL HOST REMOTO HA CAMBIADO"

Cómo hacer una copia de seguridad de un host Linux remoto usando la utilidad rsync de rsnapshot

sshfs está fallando con el host remoto desconectado