Есть ли способ вывести, ssh
какие MAC-адреса, шифры и Kex-алгоритмы он поддерживает?
Мне бы хотелось узнать это динамически, а не заглядывать в источник.
решение1
Соответствующая страница руководства OpenSSH:https://man.openbsd.org/ssh#Q
Ciphers
:ssh -Q cipher
MACs
:ssh -Q mac
KexAlgorithms
:ssh -Q kex
PubkeyAcceptedKeyTypes
:ssh -Q key
решение2
Вы также можете удаленно проверить сервер SSH на предмет поддерживаемых им шифров с помощью последних версий nmap:
nmap --script ssh2-enum-algos -sV -p <port> <host>
И есть онлайн-сервис, который называетсяsshcheck.com
а также (и довольно большое количество подобных проектов сканеров, как я только что узнал).
решение3
Некоторые старые версии OpenSSH не поддерживают эту -Q
опцию, но она работает для всех версий ssh
и имеет то преимущество, что показывает оба варианта.клиентисерверопции, без необходимости использования каких-либо сторонних инструментов, таких как nmap
:
ssh -vv username@servername
Просканируйте выходные данные, чтобы узнать, какие шифры, алгоритмы KEX и MAC поддерживаются...
- вашим клиентом:«местный клиент KEXINIT предложение»
- сервером:«предложение однорангового сервера KEXINIT»
...
debug2: local client KEXINIT proposal
debug2: KEX algorithms: 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,ext-info-c
debug2: host key algorithms: [email protected],[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,[email protected],[email protected],[email protected],[email protected],ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: ciphers stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,[email protected],zlib
debug2: compression stoc: none,[email protected],zlib
...
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: 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
debug2: host key algorithms: rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519
debug2: ciphers ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: ciphers stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,[email protected]
debug2: compression stoc: none,[email protected]
...
решение4
# sudo sshd -T | egrep 'ciphers|macs|kexalgo'