Ответ 1
MichaelGG получил все правильно - все, что вам нужно сделать, это использовать собственный удаленный доступ, доступный в PowerShell V2. Это дает вам сумасшедшую степень контроля над сетью, используя протокол WS-MAN (стандартный протокол управления, который реализуется нашей службой WINRM).
Как работает удаленное взаимодействие V2, вы можете вызывать команду (одиночную команду, конвейер, набор команд или целую script) на удаленной машине (машинах) и указать, как вы хотите, чтобы эта команда выполнялась.
например.
Invoke-Command {get-process} -Computername (cat servers.txt)
Invoke-Command
(1)-ScriptBlock | -Command <ScriptBlock>
(0)[-ComputerName | -Cn <String[]>]
[-ApplicationName <String>]
[-ArgumentList | -Args <Object[]>]
[-AsJob ]
[-Authentication <Basic | Credssp | Default | Digest | Kerberos | Negotiate | NegotiateWithImplicitCredential>]
[-CertificateThumbprint <String>]
[-ConfigurationName <String>]
[-Credential <PSCredential>]
[-HideComputerName | -HCN ]
[-InputObject <PSObject> (ByValue)]
[-JobName <String>]
[-Port <1->]
[-SessionOption <System.Management.Automation.Remoting.PSSessionOption>]
[-ThrottleLimit <Int>]
[-UseSSL ]
Вы также можете предоставить SessionOptions
New-WSManSessionOption
[-NoEncryption ]
[-OperationTimeout <0->]
[-ProxyAccessType <ProxyAutoDetect | ProxyIEConfig | ProxyNoProxyServer | ProxyWinHttpConfig>]
[-ProxyAuthentication <Basic | Digest | Negotiate>]
[-ProxyCredential <PSCredential>]
[-SkipCACheck ]
[-SkipCNCheck ]
[-SkipRevocationCheck ]
[-SPNPort <0->]
[-UseUTF16 ]
New-WSManSessionOption
[-NoEncryption ]
[-OperationTimeout <0->]
[-ProxyAccessType <ProxyAutoDetect | ProxyIEConfig | ProxyNoProxyServer | ProxyWinHttpConfig>]
[-ProxyAuthentication <Basic | Digest | Negotiate>]
[-ProxyCredential <PSCredential>]
[-SkipCACheck ]
[-SkipCNCheck ]
[-SkipRevocationCheck ]
[-SPNPort <0->]
[-UseUTF16 ]
Как вы можете видеть, вы можете указать, как перемещаться по прокси, вы можете предоставить один набор учетных данных прокси и другой набор учетных данных для конечной точки. Все, что было сказано, простой случай заключается в том, что вы ничего не укажете, и мы будем использовать порт 80.
Эксперимент! Наслаждайтесь! Engage!
Джеффри Сновер [MSFT]
Архитектор проекта управления Windows