MSTSC: A Ferramenta CLI Definitiva para Controle Remoto e Acesso

No acelerado mundo da TI de hoje, o acesso remoto é necessário para uma conectividade sem falhas e operações eficientes. Felizmente, com o Cliente do Servidor de Terminais da Microsoft (MSTSC), você pode acessar e controlar remotamente outro PC.

O MSTCS é um comando que executa a Área de Trabalho Remota para acessar hosts ou servidores remotamente. E neste tutorial, você aprenderá o básico sobre como usar o MSTSC para acesso remoto e uma visão geral de suas funcionalidades.

Preparado? Continue lendo para aprimorar o seu jogo 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 para ambos os hosts.

Observação: o seu host remoto deve ter o sistema operacional Windows Pro para permitir conexões de desktop remoto de entrada. Se você tiver o Windows Home, faça o upgrade para o Windows Pro antes de continuar com este tutorial:
Atualize o Windows 10 Home para o Windows 10 Pro
Atualize o 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 sentado na frente dele.

Para habilitar o RDP no Windows, siga estes passos:

1. Abra o PowerShell como administrador no 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 no registro com confirmação de solicitação (-f).

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

  • "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 Remote Desktop 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 Remote Desktop.
./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 abaixo ./netsh advfirewall para set a regra do firewall que permite conexões Remote Desktop. Este comando garante que o Firewall do Windows não bloqueie o tráfego de entrada do Remote Desktop 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 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 entrada do Remote Desktop.

./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 Remote Desktop Connection da Microsoft fornece uma interface gráfica de usuário amigável para conexões remotas, o que é excelente. Mas 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 que você se conecte diretamente e ganhe controle do seu servidor RDP com apenas um comando. Além disso, o MSTSC suporta um modo de tela cheia que permite ver mais da sessão de desktop remoto para que você possa trabalhar com mais eficiência.

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 os seguintes valores:

  • <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 usar, além da porta padrão (3389). Caso contrário, omita a porta para usar automaticamente a porta padrão.
# Conectando ao host remoto com a 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 você 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 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

O resultado 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ê aprendeu como se conectar a um host remoto em modo de tela cheia, o que ajuda se você trabalha com muitas ferramentas. Mas, atenção, a resolução da sessão da Área de Trabalho Remota pode não corresponder à resolução da tela local.

Personalizar a resolução para conexões remotas permite ajustar 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 largura (/w) e altura (/h) personalizadas. Substitua <Largura> e <Altura> pelos valores que representam a resolução desejada em pixels.

Esse 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 de forma clara e legível.

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

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

Customizing the resolution for Remote Desktop connections

Correspondendo Automaticamente à Resolução da Tela 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 combinar a resolução do seu monitor local? A bandeira /span fará o truque, conhecida como modo “espancamento” para conexões de Área de Trabalho Remota.

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

Quando o modo de espancamento está ativado, o MSTSC detecta automaticamente a resolução do seu monitor local e ajusta a resolução da conexão remota para combiná-la.

./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 de espancamento, você também pode se conectar ao seu host remoto no modo público. Este modo é útil ao conectar-se 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. Este 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 obter acesso à sessão remota. Todas as alterações que você fizer durante sua sessão remota, incluindo preferências e configurações, são automaticamente descartadas 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 apenas acessíveis a partir de uma conta de administrador.

Execute o comando abaixo para se conectar ao seu host remoto com resolução personalizada como um /admin, que tem privilégios elevados e pode executar 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 vá para 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 em modos diferentes. Mas especificar diferentes parâmetros cada vez que se conecta ao seu host remoto pode ser tedioso a longo prazo.

Que tal salvar uma cópia das configurações de conexão do Remote Desktop em um arquivo .rdp em vez disso? 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 digitar manualmente argumentos de linha de comando do MSTSC.

Ao comprar um serviço de controle remoto, geralmente você faz o download de 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 o seu arquivo .rdp não contenha todas as configurações necessárias para estabelecer uma conexão, ou você deseja modificá-las. De qualquer forma, a flag /edit será útil.

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

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

./mstsc /edit <RDP_FILE_PATH>

Quando estiver satisfeito com as configurações modificadas, clique em Salvar para salvar as alterações ou em Salvar Como para salvar as configurações em um novo arquivo .rdp.

Modifying an existing .rdp configuration file

Conclusã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 diferentes modos, resoluções e até mesmo via 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. Por que não tentar os comandos qwinsta ou rwinsta em seguida para gerenciar suas sessões de desktop remoto?

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