Como posso listar MACs, Ciphers e KexAlogrithms suportados pelo meu servidor ssh?

7

Como posso determinar os MACs suportados, Cifras, comprimento de chave e KexAlogrithms suportados pelos meus servidores ssh?

Eu preciso criar uma lista para uma auditoria de segurança externa. Estou procurando algo semelhante a openssl s_client -connect example.com:443 -showcerts . Da minha pesquisa, o ssh usa as cifras padrão listadas em man sshd_config . No entanto, eu preciso de uma solução que eu possa usar em um script e man sshd_config não liste informações sobre o tamanho da chave . Eu preciso me corrigir aqui: Você pode especificar ServerKeyBits em sshd_config .

Eu acho que ssh -vv localhost &> ssh_connection_specs.out retorna a informação que eu preciso, mas não tenho certeza se as cifras listadas são as cifras suportadas pelo cliente ou pelo servidor. Também não sei como executar este não interativo em um script.

Existe uma maneira conveniente de obter SSH informações de conexão?

    
por Henrik Pingel 10.11.2015 / 10:40

2 respostas

12

Você sente falta de alguns pontos em sua pergunta:

  • Qual é a sua versão do openssh? Pode diferir um pouco nas versões.
  • ServerKeyBits é a opção para a versão 1 do protocolo, que você esperou ter desativado!

As cifras, MACs e KexAlgorithms suportados estão sempre disponíveis em manual e isto não tem nada em comum com comprimentos de chaves.

Ativado Os Chiphers, MACs e KexAlgorithms são os que são oferecidos usando a conexão como você indica. Mas eles podem ser obtidos também de outras formas, por exemplo, usando sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"

Para obter o tamanho da chave da (s) chave (s) do seu servidor, você pode usar o ssh-keygen: ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub

mas você provavelmente desejará também os tamanhos de módulos oferecidos e usados durante a troca de chaves, mas isso realmente depende do método de troca de chaves, mas também deve ser legível na saída de depuração ssh -vvv host .

    
por 10.11.2015 / 17:13
1

How can I determine the supported MACs, Ciphers, Key length and KexAlogrithms supported by my ssh servers?

Parece que a resposta no link também é uma resposta à sua pergunta. Cabe em uma linha:

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

Aqui está a saída em uma máquina simples Debian 9.4 com a versão atual do SSH:

Starting Nmap 7.01 ( https://nmap.org ) at 2018-05-22 13:40 CEST
Nmap scan report for 1.2.3.4
Host is up (0.00024s latency).
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.4p1 Debian 10+deb9u3 (protocol 2.0)
| ssh2-enum-algos: 
|   kex_algorithms: (10)
|       curve25519-sha256
|       [email protected]
|       ecdh-sha2-nistp256
|       ecdh-sha2-nistp384
|       ecdh-sha2-nistp521
|       diffie-hellman-group-exchange-sha256
|       diffie-hellman-group16-sha512
|       diffie-hellman-group18-sha512
|       diffie-hellman-group14-sha256
|       diffie-hellman-group14-sha1
|   server_host_key_algorithms: (5)
|       ssh-rsa
|       rsa-sha2-512
|       rsa-sha2-256
|       ecdsa-sha2-nistp256
|       ssh-ed25519
|   encryption_algorithms: (6)
|       [email protected]
|       aes128-ctr
|       aes192-ctr
|       aes256-ctr
|       [email protected]
|       [email protected]
|   mac_algorithms: (10)
|       [email protected]
|       [email protected]
|       [email protected]
|       [email protected]
|       [email protected]
|       [email protected]
|       [email protected]
|       hmac-sha2-256
|       hmac-sha2-512
|       hmac-sha1
|   compression_algorithms: (2)
|       none
|_      [email protected]
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.52 seconds
    
por 22.05.2018 / 13:42

Tags