![Какой эквивалент «SSH» для Windows 10?](https://rvso.com/image/1641914/%D0%9A%D0%B0%D0%BA%D0%BE%D0%B9%20%D1%8D%D0%BA%D0%B2%D0%B8%D0%B2%D0%B0%D0%BB%D0%B5%D0%BD%D1%82%20%C2%ABSSH%C2%BB%20%D0%B4%D0%BB%D1%8F%20Windows%2010%3F.png)
Недавно мне пришлось заняться управлением удаленными системами Windows 10 (не серверами), и мне интересно, существует ли эквивалент SSH для удаленного запуска команд командной строки.
Есть ли стандартная утилита для этого?
решение1
В комментариях упоминаются сборки SSH для Windows, но фактический эквивалент для управления системами Windows из Windows — этосеансы Powershell. Вот несколько хороших отправных точек:
Enable-PSRemoting
: Настраивает ПК для приема сеансов PS: открывает порт брандмауэра, проверяет работу службы и т. д.
Enter-PSSession
эквивалентно обычной ssh
команде. Она подключается к удаленной машине, запускает командную строку Powershell и передает ее обратно на ваш терминал:
Enter-PSSession Win10PC
# Equivalent to
ssh MyUsername@Win10PC
# Prompt will look like this to show you're in the remote PC:
[Win10PC]: PS C:\WINDOWS\system32>
Invoke-Command
использует тот же процесс удаленного сеанса, но просто запускает указанную вами команду и отправляет вам результат (лучше для скриптов):
Invoke-Command -ComputerName Win10PC -ScriptBlock {Get-PSDrive}
Как и SSH, Powershell будет использовать текущего пользователя для подключения к удаленной машине и запустится как администратор, если это возможно. Чтобы запустить как другой пользователь, добавьте -Credential
флаг
Enter-PSSession Win10PC -Credential (Get-Credential)
Для этого не обязательно находиться в домене Windows, но если это так, то все будет работать намного лучше.