OpenSSH istemcisinden ssh başlığını bastırma


34

Bir ssh afiş kümesi olan bir sunucuya giriş yapıyorum. Onu bastırmak isterim (özellikle etkileşimli olmayan kullanım için). Sunucuya erişimim yok sshd_config.

Şimdiye kadar bulduğum en iyi çözüm LogLevel ERROR, müşterideki seçeneği belirlemektir . Sorun, bunun INFOzorunlu olarak saklamak istemediğim diğer seviyedeki mesajları bastırmasıdır ( logitörnekler için OpenSSH kaynağını arayın ). Ben de kullanabilirdim ssh -qama bu daha da bastırır.

Başka daha özel çözümler var mı?

Yanıtlar:


43

AFAIK, " ssh -q" veya " LogLevel QUIET" in ~/.ssh/configafişini susturmanın "geleneksel" yoludur. Yani zaten " LogLevel ERROR" ile "daha iyi" bir uzlaşmaya sahipsin .

Daha özel bir çözüm, eğer bir seçenekse, ssh istemcisinin özel yamalı versiyonunu kullanmak olacaktır.


2
Sanırım LogLevel ERRORsadece banner’ı OpenSSH’nin daha yeni sürümlerinde bastırıyor. Eski sürümlerde LogLevel QUIETveya ssh -qgereklidir.
Michael Hoffman,

3
Eğer -q: (Bu Debian 7 benim için yoktu) o zaman başka bir soru bir çözümü kullanabilirsiniz eser yok serverfault.com/a/764403/62024
Nux

1

Ayrıca kullanabilirsiniz:

Banner none

üzerinde

/etc/ssh/sshd_config

1
OP "Sunucuya erişimim yok sshd_config" olarak belirtti, bu nedenle ne yazık ki bu soruya cevap vermiyor.
Bay Shunz

@MrShunz Haklısınız, ancak bu sayfaya Suppressing ssh banner from OpenSSH clientve bu cevabı arayarak geldim , OP sorusuna tam olarak cevap vermese de, gelecekteki kullanıcılara yardımcı olabilir.
Pedro Lobito

0

Hexedit'i kurun:

apt-get update && apt-get install hexedit

Sshd binary'inizi yedekleyin ve düzenlenebilir bir çalışma kopyası oluşturun (root olarak):

  cp -p /usr/sbin/sshd /tmp/sshd.backup
  cp -p /tmp/sshd.backup /tmp/sshd.new

Binary'i hexedit ile güncelleyin:

hexedit /tmp/sshd.new

HEX'ten ASCII alanına geçmek için SEKME tuşuna basın.

Arama istemini getirmek ve banner'ınızdaki metni gizlemek istediğinizden aramak için CTRL + S tuşlarını kullanın, örneğin 'OpenSSH_7.4'.

Gibi bir şey görmelisin:

0007DA54   61 67 65 6E  74 00 00 00  4F 70 65 6E  agent...Open
0007DA60   53 53 48 5F  37 2E 34 70  31 20 52 61  SSH_7.4p1 Ra
0007DA6C   73 70 62 69  61 6E 2D 31  30 2B 64 65  spbian-10+de
0007DA78   62 39 75 32  00 00 00 00  4F 70 65 6E  b9u2....Open

Güncellemek istediğiniz dizenin başlangıcını vurgulamak ve yerine yenisini yazmak için ok tuşlarını kullanın.

Orijinal afişin uzunluğu dahilinde kalmaya dikkat edin. Her sözcüğü '00' olarak ayarlayan dizgiyi sadece silmek istiyorsanız, HEX alanına geri dönmek için SEKME tuşuna da basabilirsiniz.

Değişikliğiniz şöyle görünmeli:

0007DA54   61 67 65 6E  74 00 00 00  48 65 72 65  agent...Here
0007DA60   20 62 65 20  64 72 61 67  6F 6E 73 2E   be dragons.
0007DA6C   20 54 75 72  6E 20 42 61  63 6B 00 00   Turn Back..
0007DA78   00 00 00 00  00 00 00 00  4F 70 65 6E  ........Open

Değişikliklerinizi CTRL + x ve Y ile kaydedin.

Kaçırdığımız herhangi bir örnek olup olmadığını kontrol edin (şimdi çıktı beklemiyoruz):

strings /tmp/sshd.new | grep Rasp

Sshd'yi güncelleyin ve iyi bir önlem almak için servisi yeniden başlatın:

rm /usr/sbin/sshd
cp -p /tmp/sshd.new /usr/sbin/sshd
systemctl restart ssh.service

Hala SSH içerdiğinden emin olun (aksi halde yedeği geri yükleyin veya OpenSSH'yi paket yöneticinizden tekrar yükleyin!):

ssh -vv user@ip

NOT!!

Bu değişiklik yalnızca OpenSSH’yi güncellediğiniz herhangi bir zamanda geçici olacak, ikili dosya değiştirilecektir.


2
O soru aslında yazma erişimine sahip olmadığını belirtmedi doğru olsa da sshd, oldukça büyük olasılıkla bu yana görünüyor yaptığı hiçbir belirtmek sshd_configerişimi. Müşteri bazlı bir çözüm arıyorlar.
Mike Scott
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.