Como proteger um Servidor de Área de Trabalho Remota voltado ao público?

16

Estou precisando expor meu Servidor de Área de Trabalho Remota (Serviços de Terminal) para ser acessado de fora da nossa rede. No momento, só pode ser acessado de dentro da nossa rede.

Sei que é fácil abrir o firewall e encaminhar a porta.

No entanto, como proteger a própria máquina e quais são as melhores práticas em torno disso? Minha preocupação é que os hackers possam trabalhar para invadir isso.

Quaisquer diretrizes / recomendações de melhores práticas seriam muito apreciadas.

Editar:

Pergunta sobre um produto que encontrei:

Filtre as conexões RDP recebidas por IP, endereço MAC, nome do computador e muito mais

Alguém pode comentar sobre a segurança disso? Parece que eu também poderia usá-lo para limitar o acesso por nome de máquina / mac? Alguém mais usou isso?

    
por me2011 19.04.2012 / 17:57

9 respostas

14

Isso pode ser mais do que o que você deseja fazer, mas eis como usamos o RDP para usuários remotos que não usam VPN.

Recentemente, começamos a usar o Gerenciador de Gateway RD com Serviços de Área de Trabalho Remota, uma função do Windows 2008. A configuração é feita para passar pelo servidor TMG e diretamente para uma máquina de usuários. Ele usa NLA como mencionado acima. O usuário que se conecta deve ser um membro do grupo AD correto e um membro do grupo local direito deve ter acesso permitido. Dependendo de como você deseja configurá-lo, você pode se conectar através de uma página da Web que abre mstsc e insere a configuração de proxy do Gateway RD, ou pode definir as configurações em sua máquina manualmente para que, sempre que abri-lo, tente ir através desse proxy. Até agora, funcionou muito bem e parece ser seguro.

    
por 19.04.2012 / 18:30
8

Como o histórico recente nos mostrou, há riscos inerentes à exposição do protocolo . Porém, existem algumas etapas que você pode seguir para proteger o sistema:

  • Aplicar a autenticação no nível da rede.
  • Aplicar criptografia de conexão.
  • Restringir os usuários autorizados a fazer login nos Serviços de terminal no mínimo absoluto e não permitir contas "especiais", como o domínio padrão Administrator account, ou idealmente qualquer outra conta de alto privilégio.
  • Verifique se as senhas são strongs em contas com permissão para efetuar login. Depende de quantos usuários e como suas políticas estão agora, mas descartar os hashes e tentar quebrá-los, aumentando os limites de tamanho da senha ou simplesmente educar os usuários são boas abordagens.
por 19.04.2012 / 18:03
6

Sugiro strongmente que você use o serviço de gateway de área de trabalho remota. Dá-lhe um lugar onde você pode aplicar políticas sobre quem pode se conectar ao que de onde. Ele oferece um bom local para registro, para que você possa ver quem está tentando fazer login sem inspecionar os logs de eventos dos servidores individuais em seu farm.

Se ainda não o fez, certifique-se de que as políticas de bloqueio da sua conta estão bem definidas. O RDP, mesmo com o NLA e um gateway, dá às pessoas algo para tentar forçar senhas brutas. Uma strong política de bloqueio dificulta muito o sucesso das tentativas de força bruta.

Instale certificados SSL válidos nos sistemas, para que o cliente notifique os usuários finais se alguém estiver tentando realizar algum tipo de ataque MITM.

    
por 19.04.2012 / 18:49
3

Isso não é muito seguro, no entanto, existem algumas maneiras de fortalecer a segurança.

Não permitir o acesso à Internet desse servidor. Muitos dos malwares mais sérios tentam se comunicar com seu servidor de comando e controle quando isso compromete seu sistema. Configurar uma regra de acesso de firewall para proibir o acesso de saída por padrão e uma regra para permitir o acesso de saída somente a redes internas / conhecidas e sub-redes RFC 1928 pode atenuar o risco.

Use cartões inteligentes ou algum outro tipo de autenticação de dois fatores. Isso é tipicamente caro e encontrado predominantemente em grandes organizações, no entanto, as opções estão melhorando (PhoneFactor vem à mente). Observe que a exigência de cartões inteligentes pode ser feita por servidor, como uma opção para configurá-lo no nível da conta.

Configure uma rede de perímetro, coloque o servidor de área de trabalho remota no perímetro e use uma VPN de baixo custo para fornecer o acesso. Um exemplo seria o Hamachi. Observe que a proibição de acesso à Internet de uma rede de perímetro também é uma boa prática.

Se possível, não forneça uma área de trabalho completa, mas publique os aplicativos de que eles precisam. Se alguém precisar apenas de acesso a um único aplicativo, também é possível configurar um "programa inicial", que pode ser um shell de invólucro simples que pode impor um logoff quando o aplicativo é fechado.

    
por 19.04.2012 / 18:20
1

Eu sugeriria as seguintes medidas:

  1. Alterar a porta usada para conexão de área de trabalho remota
  2. Não use nomes de usuário genéricos, mas uma política de nomenclatura mais complicada
  3. Requisitos de senhas altas
  4. Feche qualquer outra porta não usada de fora (entrada)

Opcional

  1. Use uma VPN (CISCO, Open VPN, etc.) e, em seguida, conecte-se ao servidor usando o IP interno.
  2. Use o login do cartão inteligente, se possível
por 19.04.2012 / 18:08
1

Você pode executar o WinSSHD na porta 22 e depois usar o Tunnelier cliente para criar um túnel para você e abrir automaticamente uma sessão de serviços de terminal através do túnel com um clique. Isso também lhe dá uma ótima opção segura de FTP, bem como para transferir arquivos.

    
por 19.04.2012 / 18:30
1

Eu uso o encaminhamento de porta ssh para essas coisas, e só permito autenticação baseada em chave pública e nível de usuário. Todas as chaves privadas dos usuários também devem ser criptografadas. No Windows Putty faz isso bem, e o concurso facilita o carregamento da chave pelos usuários. Se você não executar nenhum servidor Linux / BSD que tenha ssh por padrão, você pode usar o OpenSSH no Cygwin para fazer isso.

Eu recomendo um servidor shell remoto dedicado com um firewall local bloqueando coisas que você não quer que as pessoas façam remotamente, já que permitir o encaminhamento de porta no SSH é basicamente abrir qualquer servidor / porta interno para os usuários que você deseja.

    
por 19.04.2012 / 19:01
1

O Bitvise SSH é um bom SSH grátis para Windows.

Eu optaria por uma terminação SSL VPN barata do cliente para o perímetro de gateway da Internet para algo mais do que o uso casual (Commercial In-Confidence, por exemplo).

As postagens acima sobre como proteger o RDP também são boas práticas e devem sempre ser feitas se você não quiser compartilhar seus computadores com aproveitadores.

    
por 30.05.2014 / 01:02
0

não é realmente a melhor prática, mas alguns pensamentos aleatórios:

  • mantenha seu sistema atualizado - permita atualizações automáticas, não use produtos que estejam em fim de vida,
  • use senhas longas / complicadas para todas as contas do sistema
  • eu vou ser repreendido aqui por sugerir a "segurança através da obscuridade", mas não fará mal a você se você:
    • altere a porta padrão 3389 / tcp para outra coisa como 26438 / tcp
    • adicione port-knocking [se possível] no nível do firewall para que o usuário potencial do rdp tenha primeiro que visitar alguns sites página e só então pode rdp para o seu servidor.
por 19.04.2012 / 18:03