¿Es la utilidad sshpass insegura que la autenticación manual de contraseña ssh?

5

Estoy planeando automatizar la copia de un archivo grande a un servidor remoto a través de ssh usando rsync, usando el siguiente comando:

sshpass -p '<PASS>' rsync --partial -av --progress --inplace --rsh='ssh -p 22' ${TAR_PATH} <SERVER_IP>:

Este comando se ejecutará a través de Jenkins. El operador ingresará la contraseña en Jenkins.

Estoy usando sshpass aquí para proporcionar automáticamente la contraseña a ssh. ¿Es inseguro en comparación con la operación manual de ssh? Si ejecuto el rsync manualmente sin sshpass, ¿será más seguro de alguna manera?

    
pregunta amolkul 13.01.2014 - 12:34
fuente

2 respuestas

5

Es menos seguro que hacerlo manualmente, pero si estás usando Jenkins, claramente estás intentando automatizar. Dicho esto, preste atención a la página de inicio de sshpass cuando dice:

Most users should use SSH's more secure public key authentication instead.

El uso de sshpass probablemente dejará la contraseña de texto sin formato en los archivos de registros y / o en los registros del historial de comandos, lo que es altamente indeseable. Una clave sin contraseña sería más segura que eso.

    
respondido por el gowenfawr 13.01.2014 - 15:09
fuente
1

Es menos seguro hasta que elimine el riesgo de exponer las contraseñas a terceros.

Hay un problema si el comando sshpass todavía se está ejecutando y otros usuarios, incluso con privilegios de acceso limitados, pueden emitir un comando ps. La contraseña puede aparecer temporalmente en la lista como parte de la llamada de proceso, incluso fuera de los registros y los historiales de comandos sin pasar por las restricciones de vista de archivos. Estos solo funcionan para la lectura directa de esos archivos de registro e historial en su lugar.

Hay varias soluciones para leer la contraseña en una entrada estándar desde un recurso externo para evitar que aparezca en la llamada de proceso. Está fuera del alcance de esta respuesta señalar ciertas soluciones.

Aún debe auditar si el acceso a las contraseñas almacenadas en otros lugares es lo suficientemente seguro para sus requisitos.

    
respondido por el Armin Stross-Radschinski 11.06.2018 - 17:54
fuente

Lea otras preguntas en las etiquetas