Implementación de SSH para cmd.exe

¿Existe una implementación de SSH2 que se ejecutará en la consola Win32 (es decir, cmd.exe)?

Hasta donde yo sé (corríjame si me equivoco), conozco las siguientes implementaciones de SSH:

  • PuTTY: no se ejecuta en la consola Win32
  • TeraTerm SSH: no se ejecuta en la consola Win32
  • SecureCRT: precios exorbitantes, no se ejecuta en la consola Win32
  • SSH a través de Cygwin: dependencia enorme
SSH de Cygwin se ejecuta en la consola Win32.
También puedes probar plinkel que viene con masilla. El soporte de la consola es... muy limitado (dicho: inexistente) - no admitirá ninguna secuencia ansi-escape, pero si no las necesita, podría ser suficiente.
SSH viene como una dependencia de Git para Windows. Viene con un conjunto completo de herramientas de estilo POSIX que se ejecutan en Windows de forma nativa a través de MinGW. Podría decirse que MinGW es una opción más ligera y más 'nativa' que Cygwin. Además, el instalador de Git tiene solo ~ 20 MB y es fácil de instalar.

Respuestas (5)

Puede usar OpenSSH para Windows :

  • libre
  • funciona con cmd
  • admite SSH2
  • también proporciona funcionalidad de servidor SSH

ingrese la descripción de la imagen aquí

¿Cómo podría estar recomendando software relacionado con la seguridad como ssh que no se ha actualizado desde mediados de 2004, solo un par de meses antes de los 10 años?
El OP solo quiere al cliente. ¿Qué tipo de problemas de seguridad temes con un cliente?
¿Por qué la seguridad sería una preocupación menor si es el cliente? Las versiones anteriores de PuTTY sufren varios problemas de seguridad, por ejemplo.
@cnst La mayoría de los ataques se refieren a servidores, los clientes SSH son bastante seguros (un poco menos si se conecta a algunos servidores no autorizados): chiark.greenend.org.uk/~sgtatham/putty/changes.html
Eso solo depende de quién esté haciendo el ataque; Es probable que la NSA y el GCHQ estén más interesados ​​(y sean capaces) de atacar a los clientes que solo a los servidores. Desde la página que ha vinculado, arbitrary code execution on the client by a malicious SSH-2 server before host key verification, has been fixedchiark.greenend.org.uk/~sgtatham/putty/wishlist/… , es exactamente el tipo de ataque (de finales de 2004, nada menos) que permite que cualquier persona con el control de su tubería de Internet posea usted fácilmente. ¿Puede confirmar que el puerto no oficial de OpenSSH para Windows de mediados de 2004 está a salvo de algo similar?
No sé: la mayoría de las veces me conecto a servidores no maliciosos.
¿Y cómo puede estar seguro de que el servidor al que se está conectando no es malicioso?
Red privada de OpenStack. No digo que sea 100% seguro, nada lo es, pero aun así me las arreglo para dormir. De todos modos, en este punto, supongo que, como usted dice, nosotros (lo dejo en manos del OP) deberíamos verificar los problemas de seguridad del cliente OpenSSH desde 2004 y dejar que el OP decida si representa un peligro para él. OpenSSH para Windows obtiene ~500 descargas/día en SF, por lo que todavía se usa con bastante frecuencia.

No estoy seguro si esto está fuera de tema, pero... Hay un envoltorio de cmd de Windows llamado ConEmu que admite pestañas y le permite insertar ventanas en esas pestañas:

Inicio de una instancia de masilla con el gancho de argumento -new_consoleInicio de una instancia de masilla con el gancho de argumento -new_console

Aparece la GUI de Putty, se puede evitar con los argumentos adecuados pasados ​​en el primer paso. Aparece la GUI de Putty, se puede evitar con los argumentos adecuados pasados ​​en el primer paso.La consola Putty es una pestaña nueva en la ventana ConEmu (tenga en cuenta que la división de la pantalla es causada por ":s" en "-new_console:sLa consola Putty es una pestaña nueva en la ventana ConEmu (tenga en cuenta que la división de la pantalla es causada por ":s" en "-new_console:s

Hay un ejecutable ssh presente en cada instalación de git. La ubicación puede cambiar según la versión, pero debe estar presente. Tenga en cuenta que el ejecutable ssh no estará en su RUTA de forma predeterminada después de instalar git, por lo que no funcionará desde la línea de comandos así.

En lugar de agregar la carpeta a mi RUTA (eso agregaría muchos ejecutables, que quiero evitar), uso un script ssh.batque se encuentra en una carpeta en mi RUTA.

REM Note: this was the path for Git 2.6.2
REM the @ prevents the command being shown twice in the cmd window
REM %* forwards all parameters
@"c:\Program Files\Git\usr\bin\ssh.exe" %*
Me gusta esta respuesta, pero Git simplemente está usando MSYS aquí. Y, si tiene cuidado (por ejemplo, al usar Dependency Walker), puede extraer lo que necesita directamente de MSYS sin tener que instalar Git o MSYS.
También puede simplemente usar un script bat para agregar "C:\Program Files\Git\usr\bin" a la ruta var, luego ssh.exese llamará directamente con ssh.set PATH=C:\Program Files\Git\usr\bin;%PATH%

Necesitaba esto para un proyecto multiplataforma. Y como ninguna de las otras respuestas me resolvió el problema con precisión, seguí adelante y lo construí:

ssh.exe de 32 bits: https://github.com/cubiclesoft/ssh-win32

ssh.exe de 64 bits: https://github.com/cubiclesoft/ssh-win64

La plinkversión de PuTTY es una aplicación de consola que se puede ejecutar desde cmd.

Bienvenido a SR. Las respuestas de solo enlace no son de calidad aceptable; actualice para incluir por qué recomienda esto/comentario sobre la estabilidad/algunos detalles más.
Creo que esta es una respuesta adecuada. plink es una buena solución a este problema, pero parece que estaba destinado a procesar scripts, no a proporcionar una interfaz de usuario para SSH. No puedo entender cómo hacer que los controles visuales funcionen en él (por ejemplo, irssi)