No dudes en divulgar nuestra página y códigos en tus redes sociales, ayúdanos a aumentar nuestra comunidad.
Solución:
Si no tiene una lista explícita de cifrados establecidos en ssh_config
utilizando el Ciphers
palabra clave, luego el valor predeterminado, según man 5 ssh_config
(lado del cliente) y man 5 sshd_config
(lado del servidor), es:
aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,
[email protected],[email protected],
[email protected],
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,
aes256-cbc,arcfour
Nótese la presencia de los cifrados arcfour. Por lo tanto, es posible que deba establecer explícitamente un valor más restrictivo para Ciphers
.
ssh -Q cipher
from the client le dirá qué esquemas puede admitir su cliente. Tenga en cuenta que esta lista no se ve afectada por la lista de cifrados especificados en ssh_config
. Quitar un cifrado de ssh_config
no lo eliminará de la salida de ssh -Q cipher
. Además, usando ssh
con el -c
opción para especificar explícitamente un cifrado anulará la lista restringida de cifrados que configuró en ssh_config
y posiblemente le permita usar un cifrado débil. Esta es una función que le permite usar su ssh
cliente para comunicarse con servidores SSH obsoletos que no admiten los cifrados más fuertes más nuevos.
nmap --script ssh2-enum-algos -sV -p
le dirá qué esquemas admite su servidor.
Para deshabilitar RC4 y usar cifrados seguros en el servidor SSH, codifique lo siguiente en /etc/ssh/sshd_config
ciphers [email protected],[email protected],[email protected],aes256-ctr,aes192-ctr,aes128-ctr
O si prefiere no dictar cifrados sino simplemente eliminar los cifrados inseguros, ejecute esto en la línea de comandos (en modo sudo):
sshd -T | grep ciphers | sed -e "s/(3des-cbc|aes128-cbc|aes192-cbc|aes256-cbc|arcfour|arcfour128|arcfour256|blowfish-cbc|cast128-cbc|[email protected]),?//g" >> /etc/ssh/sshd_config
Puede verificar los cifrados utilizados actualmente por su servidor con:
sudo sshd -T | grep ciphers | perl -pe 's/,/n/g' | sort -u
Asegúrese de que su cliente ssh pueda usar estos cifrados, ejecute
ssh -Q cipher | sort -u
para ver la lista.
También puede indicarle a su cliente SSH que negocie solo cifrados seguros con servidores remotos. En /etc/ssh/ssh_config
colocar:
Host *
ciphers [email protected],[email protected],[email protected],aes256-ctr,aes192-ctr,aes128-ctr
Los fragmentos anteriores provienen de aquí
Para probar la configuración de su servidor, puede usar ssh-audit
El problema de especificar explícitamente una lista de cifrados es que debe agregar manualmente nuevos cifrados a medida que aparecen. En su lugar, simplemente enumere los cifrados que desea eliminar, anteponiendo la lista (no cada cifrado individual) con un carácter ‘-‘. Entonces, en este caso, la línea Ciphers debería decir:
Ciphers -arcfour*
O si lo prefieres:
Ciphers -arcfour,arcfour128,arcfour256
Desde la página de manual de sshd_config en el Cifrados opción (desde OpenSSH 7.5, lanzado el 2017-03-20):
Si el valor especificado comienza con un carácter ‘+’, los cifrados especificados se agregarán al conjunto predeterminado en lugar de reemplazarlos. Si el valor especificado comienza con un carácter ‘-‘, los cifrados especificados (incluidos los comodines) se eliminarán del conjunto predeterminado en lugar de reemplazarlos.
Esto también se aplica a la Algoritmos Kex y MAC opciones