No se puede conectar a un servidor RDS TSG externo desde casa

9

Tenemos un servidor RDS (Remote Desktop Server) TSG (Terminal Services Gateway) de la compañía, que permite a los empleados conectarse a una sesión RDS desde su hogar, para que puedan ver un escritorio RDS desde su hogar.

Esto funciona bien en sus computadoras domésticas que usan Windows 7 con la siguiente configuración:

                        Configuración general

                        Configuraciones de conexión

Sin embargo, algunos usuarios tienen Linux en casa y están tratando de usar freerdp 1.2.0.

He probado esto en una computadora portátil conectada a la LAN interna de la compañía usando el siguiente comando y funciona bien:

$ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /u:administrator /p:

Sin embargo, si trato de usar ese comando en una computadora portátil, que no usa la conexión LAN de la compañía, es decir, una conexión doméstica, obtengo esto:

freerdp_set_last_error 0x2000C
Error: protocol security negotiation or connection failure

Así que ahora estoy tratando de usar algunos de los nuevos comandos TSG en freerdp 1.2.0 de la siguiente manera, pero eso tampoco funciona.

Solo puedo ver 4 comandos relacionados con TSG:

/g:<gateway>[:port] Gateway Hostname
/gu:[<domain>&#93;<user> or <user>[@<domain>] Gateway username
/gp:<password> Gateway password
/gd:<domain> Gateway domain

Leí en alguna parte que realmente solo necesito usar /gen mi escenario particular, puede que lo haya leído incorrectamente.

Entonces cuando lo intento:

$ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /g:rds.company.com /u:administrator /p:

Eso me dará:

Could not open SAM file!
Could not open SAM file!
Could not open SAM file!
Could not open SAM file!
rts_connect: error! Status Code: 401
HTTP/1.1 401 Unauthorized
Content-Type: text/plain
Server: Microsoft-IIS/7.5
WWW-Authenticate: Negotiate
WWW-Authenticate: NTLM
WWW-Authenticate: Basic realm="rds.company"
X-Powered-By: ASP.NET
Date: Wed, 02 Jul 2014 12:36:41 GMT
Content-Length: 13

Considerando el comando original:

$ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /u:administrator /p:

Esto funciona en una computadora portátil Linux, que está conectada a la red dentro de la LAN de la empresa.

¿Por qué no puedo usar un comando similar (con los parámetros TSG adicionales) en la misma computadora portátil Linux, que está conectada a Internet en casa?

¿No estoy usando los nuevos interruptores TSG correctamente?

oshirowanen
fuente
¿Qué pasa cuando VPN'd en la LAN de la empresa? ¿Funciona entonces?
sparticvs
@sparticvs, lamentablemente no estoy en condiciones de configurar una conexión VPN para probar esto.
oshirowanen

Respuestas:

4

Debe asegurarse de que el diseño del comando que está escribiendo es correcto. Si tiene una cosa desordenada o en la ubicación incorrecta, tendrá un error sin importar lo que intente.

el comando que intentaste ejecutar $ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /g:rds.company.com /u:administrator /p:

necesitas escribir el comando así: xfreerdp /cert-ignore /v:WORKSTATION /d:DOMAIN /u:USERNAME /p:PASSWORD /g:GATEWAY

Ahora, si no está utilizando la misma cuenta para el servidor de terminal para la puerta de enlace RD, deberá ejecutar esto xfreerdp /v:WORKSTATION /d:DOMAIN /u:USERNAME /p:PASSWORD /g:GATEWAY /gd:GATEWAYDOMAIN /gu:GATEWAYUSERNAME /gp:GATEWAYPASSWORD. La razón por la que esto es necesario es que si el usuario que se está conectando aún no está guardado en la rd gateway como una cuenta autorizada, se negará a conectar a ese usuario. por lo tanto, el usuario principal de la puerta de enlace que tiene todos los derechos para acceder a la conexión podrá forzar la conexión y deberá realizar la conexión completa. Esto permite una especie de conexión de fuerza

También asegúrese de que su enrutador que está utilizando en la compañía esté configurado para tener acceso desde conexiones remotas desde fuera de la oficina. Esto también causará fallas de conexión si nunca se configuró o configuró incorrectamente.

bgrif
fuente
Creo que necesito el / p: al final, por lo que cuando el usuario presiona la tecla Intro, se le solicita la contraseña. Si no tengo / p: al final, tienen que ingresar la contraseña en la cadena de comandos que permanece en el historial y es un riesgo de seguridad. Además, si observa las capturas de pantalla, notará que la opción [usar mis credenciales de la puerta de enlace para el equipo remoto] está marcada, por lo que parece que las mismas credenciales se usan tanto para el usuario como para la puerta de enlace.
oshirowanen
Me di cuenta de eso. Pero eso es para sus máquinas con Windows 7. Por lo tanto, es posible que deba tener la información en el comando para el inicio de sesión de la puerta de enlace en sus máquinas Linux. Pero si el / p al final funciona para usted, úselo de esa manera. Solo le estoy dando la información que uso cuando conecto de forma remota para mi trabajo y usamos máquinas Linux fuera de la oficina con conexiones remotas.
bgrif
Gracias, ahora solo necesito descubrir cómo no obtener la contraseña para permanecer en el historial del terminal.
oshirowanen
0

También tuve el error al conectarme con mi computadora portátil a un invitado kvm en un host kvm hasta que agregué /sec:rdp

/usr/local/bin/xfreerdp /f /rfx /cert-ignore /v:myhostip /u:mywindowsuser /p:mypassword /sec:rdp
user1007017
fuente