Ssh sunucum tarafından desteklenen MAC'leri, Şifreleri ve KexAlogrithms'i nasıl listeleyebilirim?


19

Ssh sunucularım tarafından desteklenen desteklenen MAC'leri, Şifreleri, Anahtar uzunluğunu ve KexAlogrithms'i nasıl belirleyebilirim?

Dış güvenlik denetimi için bir liste oluşturmam gerekiyor. Benzer bir şey arıyorum openssl s_client -connect example.com:443 -showcerts. Araştırmamdan, sshlistelerde listelenen varsayılan şifreleri kullanır man sshd_config. Ancak ben bir komut dosyasında kullanabileceğiniz bir çözüm gerekir ve man sshd_configanahtar uzunluğu hakkında bilgi listelemez . Kendimi burada düzeltmek gerekir: belirtebilirsiniz ServerKeyBitsiçinde sshd_config.

Sanırım ssh -vv localhost &> ssh_connection_specs.outihtiyacım olan bilgileri döndürür ama listelenen şifrelerin istemci veya sunucu tarafından desteklenen şifreler olup olmadığından emin değilim. Ayrıca bu etkileşimli olmayan bir komut dosyasında nasıl çalışacağından emin değilim.

SSHBağlantı bilgilerini almanın uygun bir yolu var mı ?


3
ortaya çıktı sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"@Jakuje önerdiği gibi RHEL6 sadece RHEL7 ana çalışır, ancak. Kullanarak sona erdi nmap --script SSH2-hostkey localhostvenmap --script ssh-hostkey localhost
Henrik Pingel

ssh -vvdesteklenen işlevselliği istemciden sunucuya (ctos) ve sunucudan istemciye (stoc) çıktılar. Bununla birlikte, bu çıktıların her iki tarafın desteklediği ile sınırlı olduğu ve bu da onları bir güvenlik denetimi için daha az kullanışlı hale getirdiği görülmektedir.
Moshe

Yanıtlar:


18

Sorunuzda birkaç noktayı kaçırdınız:

  • OpenSsh sürümünüz nedir? Sürümlere göre biraz farklı olabilir.
  • ServerKeyBits Umarım devre dışı bırakmış olduğunuz protokol sürümü 1 için bir seçenektir!

Desteklenen Şifreler, MAC'ler ve KexAlgoritmalar her zaman manuel olarak mevcuttur ve bunun anahtar uzunlukları ile ortak bir yanı yoktur.

Etkin Yongalar, MAC'lar ve KexAlgoritmalar, işaret ettiğiniz gibi bağlantı kullanılarak sunulanlardır. Ancak başka yollarla da elde edilebilirler, örneğinsshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"

Sunucu anahtarlarınızın anahtar uzunluğunu almak için ssh-keygen kullanabilirsiniz: ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub

ancak muhtemelen anahtar değişimi sırasında sunulan ve kullanılan modül boyutlarını da isteyeceksiniz, ancak gerçekten anahtar değişimi yöntemine bağlıdır, ancak hata ayıklama çıktısından da okunabilir olmalıdır ssh -vvv host.


1
Teşekkürler. Sadece sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"RHEL7 ana bilgisayarlarımın çalıştığı, ancak RHEL6'nın çalışmadığı ortaya çıktı . Kullanarak nmap --script SSH2-hostkey localhostnmap --script ssh-hostkey localhost
bitirdim

1
En son opensh güncellemesine sahip RHEL6 ana bilgisayarının da düzeltilmesi gerekir.
Jakuje

kahretsin bu konuda haklısın. Sadece eski bir VM'yi kontrol ettim ... teşekkürler
Henrik Pingel

sshd -T sadece sshd_config dosyasında yapılandırılan şifreler hakkında bilgi sunacaktır, ikili dosya tarafından desteklenecek olanlara eklenemez
Daniel J.

11

Ssh sunucularım tarafından desteklenen desteklenen MAC'leri, Şifreleri, Anahtar uzunluğunu ve KexAlogrithms'i nasıl belirleyebilirim?

Görünüşe göre https://superuser.com/a/1219759/173408 adresindeki yanıt da sorunuza bir cevaptır. Bir satıra sığar:

nmap --script ssh2-enum-algos -sV -p 22 1.2.3.4

Mevcut SSH sürümüne sahip düz bir Debian 9.4 makinesinde çıktı:

Başlangıç ​​Nmap 7.01 (https://nmap.org) 2018-05-22 13:40 CEST'te
1.2.3.4 için Nmap tarama raporu
Sunucu yükseldi (0.00024s gecikme süresi).
LİMAN DEVLET HİZMETİ SÜRÜMÜ
22 / tcp açık ssh OpenSSH 7.4p1 Debian 10 + deb9u3 (protokol 2.0)
| ssh2-enum-algos:
| kex_algoritmalar: (10)
| curve25519-sha256
| curve25519-sha256@libssh.org
| ecdh-SHA2-nistp256
| ecdh-SHA2-nistp384
| ecdh-SHA2-nistp521
| Diffie-Hellman-grubu-değişim-sha256
| Diffie-Hellman-group16-sha512
| Diffie-Hellman-group18-sha512
| Diffie-Hellman-group14-sha256
| Diffie-Hellman-group14-SHA-1
| server_host_key_algoritmaları: (5)
| ssh-rsa
| rsa-sha2-512
| rsa-sha2-256
| ECDSA-SHA2-nistp256
| ssh-ed25519
| şifreleme_algoritmaları: (6)
| chacha20-poly1305@openssh.com
| AES128-ctr
| aes192-ctr
| AES256-ctr
| aes128-gcm@openssh.com
| aes256-gcm@openssh.com
| mac_algoritmaları: (10)
| umac-64-etm@openssh.com
| umac-128-etm@openssh.com
| hmac-sha2-256-etm@openssh.com
| hmac-sha2-512-etm@openssh.com
| hmac-sha1-etm@openssh.com
| umac-64@openssh.com
| umac-128@openssh.com
| HMAC-sha2-256
| HMAC-sha2-512
| HMAC-sha1
| sıkıştırma_algoritmaları: (2)
| Yok
| _ zlib@openssh.com
Servis Bilgisi: İşletim Sistemi: Linux; CPE: cpe: / o: linux: linux_kernel

Hizmet algılama gerçekleştirildi. Lütfen hatalı sonuçları https://nmap.org/submit/ adresinde bildirin.
Nmap bitti: 1 IP adresi (1 ana bilgisayar yukarı) 0,52 saniyede tarandı

1
Ben PORT STATE SERVICE VERSION 22/tcp filtered sshbu komut ile bir olsun - ssh üzerinden aynı sunucuya giriş yapabilirsiniz rağmen.
hey

Kelimenin tam anlamıyla komutu kullandınız mı veya 1.2.3.4sunucunuzun IP'siyle değiştirdiniz mi?
Stéphane Gourichon

Sunucumun IP adresini kullandım.
hey
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.