Le estoy permitiendo a un amigo una cuenta local en mi máquina, exclusivamente para SCP. ¿Puedo especificar el shell de su cuenta como /bin/true
? , o de alguna otra manera limitar la cuenta, sin dejar de permitir SCP?
Respuesta aceptada:
Puede configurar el shell de ese usuario en rssh
o scponly
, que están diseñados precisamente para ese propósito:
rssh es un shell restringido para usar con OpenSSH, que solo permite scp y/o sftp. Ahora también incluye soporte para rdist, rsync y cvs.
scponly es un "shell" alternativo (de algún tipo) para administradores de sistemas que deseen proporcionar acceso a usuarios remotos para leer y escribir archivos locales sin proporcionar ningún privilegio de ejecución remota.
Cuando ejecuta scp, el demonio OpenSSH dispara un scp
proceso con -f
opción. Cuando ejecuta sftp, el demonio OpenSSH activa un sftp-server
proceso. En cualquier caso, el subproceso se ejecuta a través del shell del usuario, por lo que el shell debe admitir al menos estos comandos, con una sintaxis similar a la de Bourne. Cualquier shell de estilo Bourne funcionará, al igual que csh (creo que sus reglas de comillas son lo suficientemente compatibles para lo que sshd
usos). Rssh y scponly permiten estos comandos y nada más. /bin/true
ni siquiera ejecutaría estos comandos.