¿Cómo puedo determinar los MAC, cifrados, longitud de clave y KexAlogrithms compatibles con mis servidores ssh?
Necesito crear una lista para una auditoría de seguridad externa. Estoy buscando algo similar a openssl s_client -connect example.com:443 -showcerts
. De mi investigación, ssh
utiliza los cifrados predeterminados que se enumeran en man sshd_config
. Sin embargo, necesito una solución que pueda usar en un script y . Necesito corregirme aquí: puede especificar man sshd_config
no enumere información sobre la longitud de la claveServerKeyBits
en sshd_config
.
Supongo que eso ssh -vv localhost &> ssh_connection_specs.out
devuelve la información que necesito, pero no estoy seguro de si los cifrados enumerados son los cifrados admitidos por el cliente o por el servidor. Además, no estoy seguro de cómo ejecutar esto no interactivo en un script.
¿Hay alguna forma conveniente de obtener SSH
información de conexión?
ssh -vv
genera la funcionalidad admitida como cliente a servidor (ctos) y servidor a cliente (stoc). Sin embargo, parece que esos resultados están limitados a lo que ambas partes admiten, lo que los hace menos útiles para una auditoría de seguridad.
sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"
según lo sugerido por @Jakuje, solo funciona en hosts RHEL7, pero no en RHEL6. Terminé usandonmap --script SSH2-hostkey localhost
ynmap --script ssh-hostkey localhost