A melhor abordagem para acessar o servidor na DMZ (fora do domínio) da LAN via linha de comando (MS Windows)

1

Eu tenho dois servidores:

SVR1 (Windows Server 2008) na LAN - parte do domínio

SVR2 (Windows Server 2008) no DMZ - grupo de trabalho

Eu preciso acessar o SVR2 a partir do SVR1 via batch de linha de comando - copie alguns arquivos e execute o comando sc para gerenciar serviços no SVR2. Esse lote está agendado, portanto, preciso acessar o SVR2 sem a entrada de credenciais.

A única possibilidade que eu sei é ter o mesmo nome de usuário e senha em ambos os servidores, mas não é tão graciosa e é um risco potencial.

Qual é a melhor abordagem para resolver meu problema? Seria o melhor para fazer isso sem software de terceiros.

    
por teo 20.10.2014 / 21:11

1 resposta

2

Como o SVR1 e o SVR2 não fazem parte do mesmo domínio do AD, você precisará armazenar as credenciais do SVR2 em algum lugar no SVR1 para acessar seu script automatizado.

Usando o WinRM e o Powershell suficientemente atualizado, o Powershell Remoting permitirá que você estabeleça uma conexão do SVR1 ao SVR2 e faça tudo o que puder imaginar em uma linha de comando de maneira automática.

Você pode salvar uma senha no Cofre de Credenciais do Windows usando o Powershell e seu script pode acessar as credenciais do Cofre de Credenciais:

link

Eu recomendaria isso como uma maneira um pouco melhor de armazenar credenciais. A maneira antiga e clássica de armazenar credenciais era fazer algo assim:

read-host -assecurestring | convertfrom-securestring | out-file operationspassword.txt

Em seguida, no seu script, "decifre" a senha da seguinte forma:

$pass = Get-Content operationspassword.txt | convertto-securestring
$creds = New-Object -Typename System.Management.Automation.PSCredential -argumentlist "SRV2\admin",$pass

Os creds "criptografados" só podem ser descriptografados pela mesma conta e na mesma máquina em que foram originalmente criptografados, então você não pode simplesmente roubar a representação de texto do SecureString e usá-lo em outro lugar. Mas ainda é meio pouco profissional armazenar creds desta maneira e eu realmente não aconselho isso em geral.

Também não se esqueça de modificar sua lista Powershell TrustedHosts para permitir conexões com a máquina "não confiável" ... você deve fazer isso porque você não está usando Kerberos ou SSL.

Isso me lembra ... use o SSL para conexões do WinRM para melhorar a segurança: link

As portas Windows 2008 WinRM são 80 (HTTP) e 443 (HTTPS).

A Microsoft logo percebeu que essas portas já estavam em uso e, portanto:

O Windows 2008 R2 e as portas WinRM acima são 5985 (HTTP) e 5986 (HTTPS).

    
por 20.10.2014 / 21:32