MSTSC: A Ferramenta CLI Definitiva para Controle Remoto e Acesso

No mundo acelerado da tecnologia da informação de hoje, o acesso remoto é essencial para uma conectividade perfeita e operações eficientes. Felizmente, com o Microsoft Terminal Server Client (MSTSC), você pode acessar e controlar remotamente outro PC.

O MSTCS é um comando que executa o Remote Desktop para acessar hosts ou servidores remotamente. E neste tutorial, você aprenderá o básico do uso do MSTSC para acesso remoto e uma visão geral de suas funcionalidades.

Preparado? Continue lendo para aprimorar suas habilidades de controle remoto!

Pré-requisitos

Este tutorial é projetado como uma demonstração prática. Para acompanhar, você precisará de um host local e remoto com Windows. Este tutorial utiliza o Windows 10 Pro em ambos os hosts.

Observe que seu host remoto deve ter um sistema operacional Windows Pro para permitir conexões remotas de desktop. Se você tiver um Windows Home, faça o upgrade para o Windows Pro antes de continuar com este tutorial:
Faça o upgrade do Windows 10 Home para o Windows 10 Pro
Faça o upgrade do Windows Home para o Windows Pro

Habilitando o Protocolo de Área de Trabalho Remota (RDP)

O RDP é um protocolo desenvolvido pela Microsoft que permite aos usuários acessar remotamente um computador ou servidor baseado no Windows por meio de uma rede. Com o RDP, você pode se conectar a um computador remoto e usar seus recursos como se estivesse na frente dele.

Para habilitar o RDP no Windows, siga estas etapas:

1. Abra o PowerShell como administrador em seu servidor remoto e certifique-se de que o diretório de trabalho seja C:\Windows\System32.

2. Em seguida, execute o seguinte comando ./reg add no PowerShell para fornecer uma modificação de registro com confirmação (-f).

Esse comando habilita as conexões de Área de Trabalho Remota da seguinte forma:

  • "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" O caminho para a chave do registro que controla as configurações do Terminal Services.
  • /v – Especifica o nome do valor a ser modificado. Neste caso, o valor fDenyTSConnections controla se as conexões de Desktop Remoto são permitidas ou negadas.
  • /t – Especifica o tipo de dados a ser modificado, que, neste caso, é um tipo de dados DWORD (double-word) (REG_DWORD).
  • /d – Define o valor da chave fDenyTSConnections para 0, permitindo conexões de Desktop Remoto.
./reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
Enabling Remote Desktop connections in the registry

3. Agora, execute o comando ./netsh advfirewall abaixo para definir a regra do firewall que permite conexões de Desktop Remoto. Este comando garante que o Firewall do Windows não bloqueie o tráfego de Desktop Remoto recebido via RDP.

./netsh advfirewall firewall set rule group="remote desktop" new enable=yes
Setting a firewall rule to allow Remote Desktop connections

Talvez você não precise mais acessar a máquina com Windows remotamente e queira melhorar a segurança da máquina. Se for o caso, execute os comandos abaixo para bloquear o tráfego de Desktop Remoto recebido.

./reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f
./netsh advfirewall firewall set rule group="remote desktop" new enable=No

Conectando a um Host Remoto em Modo de Tela Cheia

O cliente de Conexão de Área de Trabalho Remota da Microsoft oferece uma interface gráfica do usuário (GUI) amigável para conexões remotas, o que é excelente. No entanto, a GUI pode não ser a solução mais eficiente para acessar rapidamente um host remoto.

Felizmente, o MSTSC oferece uma interface de linha de comando (CLI) que permite conectar-se diretamente e obter controle do seu servidor RDP com apenas um comando. Além disso, o MSTSC suporta um modo de tela cheia que permite visualizar mais da sessão de desktop remoto para trabalhar de maneira mais eficiente.

Para se conectar a um host remoto em modo de tela cheia:

Abra o PowerShell em sua máquina local e execute um dos comandos ./mstsc abaixo para se conectar ao seu host remoto.

Certifique-se de substituir as seguintes informações:

  • <Endereço_IP> – O endereço IP público real do seu host remoto.
  • <Porta> – A porta que você configurou para o seu host remoto, diferente da porta padrão (3389). Caso contrário, omita a porta para usar a padrão automaticamente.
# Conectando ao host remoto com porta RDP configurada
./mstsc /v:<IP_Address>:<Port> /f
# Conectando ao host remoto usando a porta RDP padrão (3389)
./mstsc /v:<IP_Address> /f

Se preferir executar o comando mstsc independentemente do diretório de trabalho, adicione o caminho do MSTSC (C:\Windows\System32\mstsc) à variável de ambiente PATH. Uma vez adicionado, você pode executar o comando como o exemplo abaixo: mstsc /v:<Endereço_IP>:<Porta> /f

Quando solicitado, forneça suas credenciais de host remoto, conforme mostrado abaixo, e clique em OK para autenticar a conexão.

Authenticating the remote desktop connection

A saída abaixo mostra uma conexão de Área de Trabalho Remota em modo de tela cheia.

Viewing a remote desktop connection in full-screen mode

Personalizando a Resolução para Conexões de Área de Trabalho Remota

Você viu como se conectar a um host remoto em modo de tela cheia, o que ajuda se você trabalha com muitas ferramentas. Mas observe que a resolução da sessão de Área de Trabalho Remota pode não coincidir com a resolução de exibição local.

Personalizar a resolução para conexões remotas permite que você ajuste o tamanho da sessão da área de trabalho remota.

Para personalizar a resolução das suas conexões de Área de Trabalho Remota:

Execute o comando abaixo para se conectar ao seu host remoto com uma largura personalizada (/w) e altura (/h). Substitua <Largura> e <Altura> por valores que representem a resolução de pixels desejada.

Este comando garante que a sessão da área de trabalho remota se ajuste confortavelmente à sua tela e que texto, imagens e outros elementos sejam exibidos com clareza e legibilidade.

./mstsc /v:<IP_Address>:<Port> /w:<Width> /h:<Height>

Observe abaixo que a sessão da Área de Trabalho Remota é como uma janela regular, que você pode maximizar até o limite da resolução especificada.

Customizing the resolution for Remote Desktop connections

Correspondendo Automaticamente à Resolução da Exibição Local

Personalizando a resolução da sua conexão de Área de Trabalho Remota funciona muito bem se você estiver familiarizado com os valores corretos. Mas e se você preferir ajustar a resolução para combinar com a do seu monitor local? A bandeira /span vai resolver, conhecida como modo “spanning” para conexões de Área de Trabalho Remota.

Execute o seguinte comando, acrescentando a bandeira /span, para se conectar ao seu host remoto enquanto ajusta a resolução para combinar com a do seu monitor local.

Quando o modo spanning está ativado, o MSTSC detecta automaticamente a resolução do seu monitor local e ajusta a resolução da conexão remota para combinar com ela.

./mstsc /v:192.168.1.100 /span
Matching to local display resolution automatically

Conectando-se a um Host Remoto no Modo Público

Além de se conectar a um host remoto em modos de tela cheia e spanning, você também pode se conectar ao seu host remoto no modo público. Este modo é útil ao se conectar a uma máquina remota a partir de um computador público compartilhado por vários usuários.

Quando o modo público está ativado, as credenciais que você usa para fazer login no host remoto não são salvas ou armazenadas em cache. Esse comportamento impede que outros usuários acessem sua máquina remota — ufa!

Execute o seguinte comando para se conectar ao seu host remoto no modo público (/public)

./mstsc /v:<IP_Address>:<Port> /public

Você pode precisar inserir as credenciais da conta de usuário remoto para acessar a sessão remota. Todas as alterações feitas durante a sessão remota, incluindo preferências e configurações, são descartadas automaticamente ao desconectar a sessão.

Connecting to a remote host in public mode

Conectando-se a um Host Remoto como Administrador

Você tem acessado seu host remoto como um usuário comum, o que é bom. No entanto, gerenciar hosts remotos geralmente requer privilégios administrativos.

Por exemplo, você pode precisar instalar um pacote de software ou acessar configurações do sistema que só estão disponíveis a partir de uma conta de administrador.

Execute o comando abaixo para se conectar ao seu host remoto com uma resolução personalizada como um /admin, que tem privilégios elevados e pode realizar tarefas administrativas no host remoto.

./mstsc /v:<IP_Address> /w:900 /h:720 /admin
Connecting to a remote host as an admin

Agora, abra o Painel de Controle e navegue até a seção de Contas de Usuário.

Você vê uma saída semelhante à abaixo? Parabéns! Você se conectou com sucesso ao seu host remoto como administrador.

Verifying administrator privileges

Conectando-se ao Host Remoto via um Arquivo Existente de .rdp

Até agora, você se conectou com sucesso ao seu host remoto de diferentes maneiras. Mas especificar diferentes parâmetros cada vez que você se conecta ao seu host remoto pode ser tedioso a longo prazo.

Por que não salvar uma cópia das configurações de conexão do Remote Desktop em um arquivo .rdp? Um arquivo .rdp contém todas as configurações necessárias para estabelecer uma conexão com um host remoto, que você pode usar em vez de inserir manualmente argumentos de linha de comando do MSTSC.

Ao adquirir um serviço de controle remoto, você geralmente baixa um arquivo .rdp de provedores de serviços, como Amazon Web Services e Azure RDP.

Para estabelecer uma conexão com um host remoto usando um arquivo .rdp existente:

Execute o seguinte comando, substituindo <RDP_FILE_PATH> pelo caminho completo do seu arquivo .rdp existente para se conectar ao seu host remoto de acordo com as configurações especificadas no seu arquivo .rdp.

./mstsc <RDP_FILE_PATH>

O exemplo abaixo mostra como se conectar a uma instância AWS EC2 usando um arquivo .rdp existente (ec2_instance.rdp) localizado na pasta C:\\Users\\admin\\Documents\\.

./mstsc C:\Users\admin\Documents\ec2_instance.rdp 

Ignore a mensagem de aviso de segurança e clique em Conectar para prosseguir.

Connecting to the remote host via an existing .rdp file

Modificando as Configurações de um Arquivo .rdp Existente

Talvez seu arquivo .rdp não contenha todas as configurações necessárias para estabelecer uma conexão, ou você deseja modificar as configurações. De qualquer forma, a bandeira /edit será útil.

Para modificar as configurações do seu arquivo .rdp existente:

Execute o seguinte comando, adicionando a bandeira /edit, que abre o arquivo .rdp na janela de configurações da Conexão de Área de Trabalho Remota.

./mstsc /edit <RDP_FILE_PATH>

Depois de satisfeito com as configurações modificadas, clique em Salvar para salvar as alterações ou Salvar como para salvar as configurações em um novo arquivo .rdp.

Modifying an existing .rdp configuration file

Conclusão

O acesso remoto a um host ou servidor permite que você acesse arquivos sem precisar transportar pen drives ou discos rígidos de um lado para o outro. E neste tutorial, você aprendeu como habilitar o RDP e usar o MSTSC para se conectar a um host remoto em modos diferentes, resoluções e até mesmo por meio de um arquivo .rdp existente.

Aproveitando o MSTSC, você pode gerenciar de forma eficiente computadores e estações de trabalho remotas, independentemente da localização física.

Agora, você pode usar o MSTSC com confiança como sua ferramenta de linha de comando para estabelecer conexões remotas seguras e eficientes com hosts remotos. Que tal experimentar os comandos qwinsta ou rwinsta para gerenciar suas sessões de desktop remoto?

Source:
https://adamtheautomator.com/mstsc/