“Uzak ana bilgisayar kimliği değişti” uyarısını yazdırmamaya zorlamak için ssh


23

Böyle bir uyarı mesajı yazdırmaktan kaçınmanın bir yolu var mı?

"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\r",
"@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @\r",
"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\r",

Uzaktaki ana bilgisayar kimliği değişti, ancak bunun iyi olduğunu ve yalnızca bu uyarıdan kurtulmak istediğini biliyorum.

Yanıtlar:


16

Dört yolu:

Yeni bir ana bilgisayar anahtarına sahip bir sisteme yalnızca bir kez, soruları yanıtlamak zorunda kalmadan bağlamak için aşağıdaki seçenekle bağlantı kurun:

ssh -q -o "StrictHostKeyChecking no" this.one.host.name

Tüm sistemler için uyarıyı kalıcı olarak kaldırmak için ~/.ssh/config, aşağıdaki satırları eklemek üzere dosyanızı düzenleyin :

Host *
StrictHostKeyChecking no

Kalıcı bunun için tüm uyarıları kaldırmak için bir sunucu, düzenleme için ~/.ssh/configdosya ve aşağıdaki satırları ekleyin:

Host this.one.hostname
StrictHostKeyChecking no  

Bu sunucu için yapılan bu değişiklik uyarısını kaldırmak için, o sunucunun ana bilgisayar anahtarını kaldırın ~/.ssh/known_hosts. Bir sonraki bağlanışınızda, yeni ana bilgisayar anahtarı eklenecektir.


İkinci seçenekte bu konfigürasyon sağa bağlandığımız sunucu tarafında yapılmalı mı?
coffeMug

Hayır, $HOME/.ssh/confighem ikinci hem de üçüncü seçenek için önemli olan sizindir.
Jenny D

Bu hala benim için bir uyarı yazdırıyor (bağlantıya izin vermesine rağmen).
Michael Mior

24

Bunu ~ / .ssh / config dosyasına ekleyin:

Host 10.*                            # use your own pattern here, eg. *.example.com, example.*.com
  StrictHostKeyChecking   no         # turn off the HostKey check                                                               
  LogLevel                ERROR      # keep it from printing to STDOUT
  UserKnownHostsFile      /dev/null  # (optional) add the host automatically to a black hole, otherwise it would be added to ~/.ssh/known_hosts and show you a warning/message at the top of your session. You may want it added to known_hosts if your shell uses `ssh` autocompletion, such as fish. 

3
MOD UP - soruyu gerçekten cevaplayan tek kişi - bu sadece işe yaramamak için verilen tek cevaptı, aynı zamanda UYARILARI DESTEKLEYİN.
Brad,

Hata Balık kullanıcıları ve muhtemelen herkes bunu ayarlamamalı.
Elijah Lynn,

Bu seçenekleri kullanmak yerine açıkça ifade etmek ssh0için bir betik / alias / işlevi ssh -o UserKnowHostsFile=/dev/null -o LogLevel=ERRORyapmalı ve kullanmalısınız ~/.ssh/config. Onları unutabilir ve daha sonra çalışmasını istediğinizde çeklerin neden işe yaramadığını merak edebilirsiniz.
Billy

20

Bu ev sahibinin hattını çıkarabilirsiniz ~/.ssh/known_host(her ev sahibinin orada giriş yapmış olduğu bir satır vardır).

Alternatif kullanmaktır:

ssh -q -o "StrictHostKeyChecking no" ....

Sadece kullanmak sessizce başarısız -qolurdu ssh.


9

Varsayılan $ HOME / .ssh / known_hosts cihazına ana bilgisayar anahtarları eklenmemesi bazen istenebilir.

Kullan -o UserKnownHostsFile=/dev/nullek olarak -qve -o StrictHostKeyChecking=nodüzenli known_hosts tutmak. İşte bir örnek:

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -q user@scripts.local

2

Alternatif bir öneri, ana bilgisayar anahtarının neden değiştiğini belirlemek ve bunu yapmayı bırakmasını sağlamaktır.

Örnek olarak: ev sahiplerini kaplarda veya bir sağlama sistemi aracılığıyla inşa ediyorsanız, bunların tutarlı bir şekilde bilinen bilinen ana bilgisayar anahtarını kullandıklarından emin olun.

Bunun her zaman mümkün olmadığını ve ana bilgisayarların kontrol kapsamınız dışında yönetilebileceğinin farkındayım, ancak bu ana bilgisayar uyarıları bir nedenden dolayı var ve önemli. İstisna sayısını azaltmak, İyi Bir Şeydir.

Aksi takdirde, ben oy StrictHostKeyChecking No Gözlerinde farklı ~/.ssh/config sadece söz konusu ana bilgisayar için.

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.