He leído ¿ Detener inicio de sesión ssh al imprimir motd desde el cliente? Sin embargo, mi situación es un poco diferente:
- Quiero mantener Banner / path / to / somext serveride
- Me gustaría pasar una opción en condiciones específicas para que Banner no se imprima (por ejemplo
ssh -o "PrintBanner=No" someserver).
¿Alguna idea?

-qo-o LogLevel=errorfuncionan bien ahora :-)Hay una
LogLevelopción:Silencia el banner, pero aún puede recibir errores:
fuente
Lo he probado, creo que puedes usarlo
-qen el comando ssh. El parámetro -q significa modo silencioso . Hace que se supriman la mayoría de los mensajes de advertencia y diagnóstico, por ejemploo
Espero que esto pueda ayudar a otros
fuente
Actualice ~ / .ssh / config con lo siguiente para suprimir el banner
fuente
Debería poder establecer un valor diferente
Banner(a ninguno) dentro de unMatchbloque.Por ejemplo:
Pero esto debe hacerse del lado del servidor , en función de condiciones específicas. No puedes hacerlo desde el lado del cliente .
fuente
Parece que estás buscando -q :
Modo silencioso. Provoca que se supriman la mayoría de los mensajes de advertencia y diagnóstico.
Con
-qAgradable y tranquilo El banner todavía está configurado pero no te molesta.
En otra nota: no use pancartas. Es mejor no confirmar ni negar nada. No te ayudará con las personas que no te preocupaban y las personas que te preocupan se reirán mientras trabajan más allá
;-)fuente
Para mi,
-o LogLevel=errorfue mejor que-qporque este último suprime la información de error importante (que luego puede obtener solo a través del código de salida).Compare esto (sin opciones):
[root@myserver804 myuser1]# ssh targetserver1; echo "exit code=$?" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending RSA key in /root/.ssh/known_hosts:1735 RSA host key for targetserver1 has changed and you have requested strict checking. Host key verification failed. exit code=255con esto (tranquilo)
[root@myserver804 myuser1]# ssh -q targetserver1; echo "exit code=$?" exit code=255con esto (solo errores de registro)
[root@myserver804 myuser1]# ssh -o LogLevel=error targetserver1; echo "exit code=$?" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending RSA key in /root/.ssh/known_hosts:1735 RSA host key for targetserver1 has changed and you have requested strict checking. Host key verification failed. exit code=255Entonces, la conclusión es: si todavía está interesado en errores relevantes, use
-o LogLevel=errorfuente
Ni el
-qni el-oLogLevel=errorobras.Lo que funciona es suprimir STDERR
ssh hostname command 2>/dev/nullSin embargo, la desventaja es que la supresión de STDERR se aplica a todo el comando y no solo al programa SSH.
fuente
Simplemente llame a un shell, eso debería suprimir el banner.
Sin embargo, tenga en cuenta que, al menos para mí, mi $ PS1 no se configura, por lo que parece que está colgando. Tuve que escribir un par de comandos para verificar que funcionaba.
fuente
Banneropción en/etc/sshd_config(al menos no en FreeBSD / OpenSSH_5.8p2)Para mí -q hizo el truco y todavía podía trabajar con la salida guardada en un archivo.
ssh -q root @ server28 "ls -alF / dr_mksysb | egrep -v \" total | perdido + encontrado | ./ | ../ \ "| awk '{print \ $ NF}' | sed 's /.\$ // g '"> $ {basedir} /28.list
fuente
-qparámetro. El resto no tiene ninguna relación y solo es útil para usted. El parámetro ya se ha dado como respuesta, así que siéntete libre de votarlo si te ayudó, pero esta "respuesta" solo recibirá votos negativos