NetworkDoc.Ru В помощь системному администратору

SSH в Powershell

Tuesday, May 14 2013, 10:32 AM
lp13
lp13
Offline
0
Всем привет.

Хочу написать на PowerShell программу, которая подключалась бы по ssh к ряду серверов и выполняла бы заданные мною команды.
Подскажите плз как работать с ssh через PowerShell.

Accepted Answer

lp13
lp13
Offline
Tuesday, May 14 2013, 11:08 AM - #permalink
0
Сам спросил, сам ответил.
В общем подключаться по ssh можно через .NET
Скачиваем библиотеку: http://sshnet.codeplex.com/releases/view/72214
Кладем ее куда-нибудь

Код будет выглядить следующим образом:
подключаем скачанную библиотеку
[void][reflection.assembly]::LoadFrom((Resolve-Path "путь к библиотеке"))
Далее создает объект для подключения
$sshclient = New-Object Renci.SshNet.SshClient("ip адрес", 22, "login", "password")
Подключаемся
$sshclient.Connect()
Проверяем. Если подключились, то выполняем команду и записываем в некий файл
if ($sshclient.isconnected)
{
$sshcommand = $sshclient.runcommand("show run")
$conffile = $sshcommand.result.split("`n") | out-file -filepath c:\Scripts\temp.txt
}

далее отключаемся и закрываем все объекты.
$sshcommand.dispose()
$sshclient.disconnect()
$sshclient.dispose()


Соотвественно далее скрипт можно модифицировать как угодно и с каким угодно количеством команд.
The reply is currently minimized Show
Responses (0)
  • There are no replies here yet.
Your Reply
Сеть
Сеть
6 post(s)
VOIP
VOIP
4 post(s)
Loading ...

Joomla! Debug Console

Errors

Session

Profile Information

Memory Usage

Database Queries