Linux Fu: Aplicaciones SSH interactivas

[Drew DeVault] Recientemente escribí algunas instrucciones interesantes sobre cómo empaquetar comandos de Linux basados ​​en texto interactivos para usuarios accesibles a través de ssh. Al principio parece simple, pero hay bastantes matices y [Drew] hace un buen trabajo cubriéndolos.

Una forma fácil, pero no muy versátil, es crear un usuario y hacer que el programa que desea iniciar sea el shell predeterminado. El ejemplo usado es hacer / usr / bin / nethack el shell y ahora la gente puede iniciar sesión como ese usuario y jugar nethack. Simple, ¿verdad? Sin embargo, hay mejores formas de lograrlo.

Hay algunos problemas. Primero, si el usuario pasa una línea de comando a un programa como nethack, las cosas se vuelven confusas. Sin embargo, puede agregar una declaración al archivo .ssh / allowed_keys, que selecciona un comando para iniciar con un shell real después de iniciar sesión. Puede configurar el shell en algo tan simple como / bin / sh o rbash (bash restringido) y usarlo para iniciar un nethack o el binario de su elección. Un shell limitado evita que los usuarios hagan cosas como cambiar carpetas, configurar algunas variables circundantes y más. Ofrece cierta seguridad contra la actividad malintencionada, aunque puede que no sea una actividad malintencionada grave.

Solo para completar el ejemplo, [Drew] muestra cómo aplica estas ideas a un verdadero sistema de trabajo. Tiene una serie de scripts de Python que funcionan con la integración continua de Sourcehut.

Nos encantan las pequeñas herramientas ssh. Si bien nos gusta ssh, si tiene una conexión poco confiable, es posible que prefiera Mosh.

  • 12AU76L6GC dice:

    Supongo que extraño la cosa. Puede ejecutar de forma remota cualquier programa con gráficos completos (o no) con xterm sobre el túnel ssh. Fácil con PuTTy / Xming en Windows y una línea de comandos simple en Linux ...

    • Al Williams dice:

      El problema con esto no son tantos programas en ejecución para usted. Expone un programa dedicado a usuarios externos. Entonces, un usuario puede usar SSH para iniciar sesión para ejecutar algún comando predeterminado y listo. Obviamente, no todos los comandos se crean de la misma manera, por lo que hay problemas de seguridad, etc., pero eso es algo de la publicación original.

  • Paulo Andrade dice:

    Gracias por la referencia de Mosh, compruébalo.

  • Juan Klos dice:

    No lo entiendo. ¿Cómo es eso específico de Linux?

Manuel Gómez
Manuel Gómez

Deja una respuesta

Tu dirección de correo electrónico no será publicada.