4Aug

Cómo obtener acceso de línea de comandos de SSH a Windows 7 usando Cygwin

¿Se siente cómodo con Linux / Unix y quiere acceso SSH a su máquina con Windows 7?Cygwin proporciona esta funcionalidad y le brinda un entorno familiar con el que puede trabajar en pocos pasos.

Estamos asumiendo que tiene Cygwin instalado y configurado. De lo contrario, consulte nuestro artículo Cómo usar los comandos de Linux en Windows con Cygwin para comenzar.

Instalación de OpenSSH

OpenSSH es lo que vamos a utilizar, por lo que si no lo tiene instalado, busque el archivo setup.exe de Cygwin y ejecútelo.

Puede mantener todos los mismos valores predeterminados que cuando configuró Cygwin originalmente. En la pantalla de selección de paquete, busque "abrir" y busque debajo del menú "Red".

Verás un paquete llamado "openssh".Haga clic debajo de la columna "Nuevo", donde dice "Omitir" hasta que aparezca una X en la columna "¿Bin?".Mire la captura de pantalla anterior para saber dónde hacer clic si está confundido. Pulse "Siguiente" y termine el resto del proceso de configuración, tal como lo hizo la última vez.

Configuración de OpenSSH en Cygwin

A diferencia de la mayoría de las distribuciones de Linux, OpenSSH no se configurará automáticamente para funcionar y solo funcionará.Necesitamos realizar unos pocos pasos sencillos. Primero, haga clic con el botón derecho en su acceso directo de Cygwin y haga clic en "Ejecutar como administrador":

Esto asegurará que tengamos los privilegios adecuados para todo. Verás aparecer una ventana de Cygwin vacía.

Introduzca el siguiente comando:

ssh-host-config

Verá que el script genera algunos archivos predeterminados, y luego se le preguntará si desea o no habilitar "Separación de privilegios". Está activado por defecto en el estándarinstalaciones de OpenSSH en otros sistemas, así que adelante y diga "sí" al aviso.

Se le pedirá que cree una nueva cuenta con privilegios especiales. Seleccione "sí" y la secuencia de comandos continuará.

A continuación, se le preguntará si desea que sshd se ejecute como un servicio. Esto le permitirá obtener acceso SSH independientemente de si Cygwin se está ejecutando o no, que es lo que queremos. Continúa y presiona "sí" para continuar.

A continuación, se le pedirá que ingrese un valor para el daemon. Ingrese lo siguiente:

ntsec

Verá que el script le brinda información sobre su sistema y luego le pedirá que cree una cuenta privilegiada con el nombre de usuario predeterminado "cyg_server".El valor predeterminado funciona bien, así que escriba "no" cuando le pregunte si desea usar un nombre de cuenta diferente, aunque puede cambiarlo si realmente le gusta.

Por supuesto, también deberá ingresar una contraseña para esta cuenta.

Cygwin le mostrará su contraseña en texto plano para su verificación, por lo tanto, asegúrese de estar en un lugar seguro. Verás que aparece información adicional y, si todo está bien, recibirás un mensaje que dice que se completó correctamente.

Puede reiniciar o ingresar el siguiente comando para iniciar el servicio sshd:

net start sshd

Ahora puede escribir "exit" para cerrar esta instancia de Cygwin.

Configuración del usuario de SSH

A continuación, crearemos las claves SSH apropiadas para su cuenta de usuario. Abre Cygwin normalmente e ingresa el siguiente comando:

ssh-user-config

Se te pedirá que crees claves específicas para tu cuenta de usuario, así que usa lo que necesites. Seguí adelante y dije "no" a la primera pregunta, y "sí" a la segunda.

SSH2 es más seguro, así que eso es lo que te recomiendo. Después de ingresar una contraseña, se le preguntará si desea usar esa identificación para acceder a su máquina. Escribe "sí".

A continuación, se le pedirá que cree un archivo de ID de DSA SSH2, si desea utilizar el acceso sin contraseña. Rechacé en este paso.

¡Eso es todo! Estás todo configurado. Si desea probar su configuración muy rápidamente, ingrese el siguiente comando en su ventana de Cygwin:

ssh -v localhost

La opción -v significa "detallado" y le da todos los detalles del proceso. Se le preguntará si desea continuar con la conexión, por lo tanto, ingrese "sí" y luego ingrese su contraseña en el aviso. Recuerde que cuando ingresa su nombre de usuario, ¡distingue entre mayúsculas y minúsculas!

Si todo salió bien, verás un mensaje bash normal.

Problemas menores

Si se ve atrapado en alguno de los pasos de configuración, asegúrese de que la cuenta de usuario de Windows que está ejecutando tenga acceso de administrador. Puede obtener errores extraños si intenta ejecutar la configuración de host como un usuario normal, por lo que debe asegurarse de ejecutar Cygwin con privilegios de administrador durante ese paso. Si, cuando sale, recibe un aviso acerca de dejar sus trabajos por lotes en ejecución, puede presionar "no" para cancelarlos.

Por último, si prueba el acceso SSH desde otra máquina y obtiene un error, asegúrese de que su firewall no esté bloqueando el acceso al puerto 22( o 23 si está utilizando SFTP).

Esto funciona extremadamente bien si te gusta la posibilidad de obtener acceso SSH / SFTP a tus archivos en una máquina con Windows 7 y también quieres un shell familiar para hacerlo. Cygwin monta unidades de Windows en "/cygdrive/ driveletter" en caso de que se lo pregunte.;-)