Použití příkazu PuTTYs plink k automatizaci akcí SSH v systému Windows

Shrnutí

SSH je bezpečná a pohodlná metoda pro automatizaci skriptů na vzdálených serverech. Na počítačích se systémy UNIX a Linux je nastavení SSH téměř triviální, v systému Windows je však náročnější. K automatizaci akcí SSH v systému Windows lze použít příkaz plink“ PuTTY. Příkaz „plink“ má na počítačích se systémem Windows některé specifické inicializační požadavky, aby jej bylo možné používat z rozhraní skriptů DPX. Tento článek se zabývá používáním příkazu „plink“ pro systém Windows, který je součástí sady nástrojů PuTTY. Nejedná se o vyčerpávající přehled použití příkazu „plink“. Konkrétně se zabývá tím, jak povolit požadované klíče hostitele pro použití se skriptovacím rozhraním DPX. „

Krok za krokem

PuTTY je volně dostupný klient SSH třetí strany pro platformy Windows. V době psaní tohoto článku je PuTTY k dispozici na adrese: www.chiark.greenend.org.uk/~sgtatham/putty/

Catalogic Software neposkytuje technickou podporu pro spustitelné programy třetích stran. Použití spustitelných souborů třetích stran je na vlastní nebezpečí.

„plink.exe“ lze použít v dávkovém skriptu systému Windows k automatizaci spouštění vzdálených skriptů prostřednictvím SSH. To je užitečné zejména při automatizaci operací NetApp a spouštění dalších skriptů na hostitelích UNIX a Linux. Typický příkaz vypadá takto:

plink -ssh -l root -pw "password" host-name command

Konkrétnější příklad je:

plink -ssh -l root -pw "password" 192.168.199.10 "reboot"

V kompatibilních systémech UNIX/Linux tento příkaz způsobí, že vzdálený počítač na adrese 192.168.199 bude spuštěn.10 okamžitě restartovat.

Při prvním spuštění příkazu plink z příkazového řádku systému Windows na novém hostiteli se zobrazí hlášení podobné následujícímu:

The server's host key is not cached in the registry. Youhave no guarantee that the server is the computer youthink it is.The server's rsa2 key fingerprint is:ssh-rsa 768 d1:1a:29:c0:6d:71:db:3b:36:7b:c1:01:b5:da:ca:d8If you trust this host, enter "y" to add the key toPuTTY's cache and carry on connecting.If you want to carry on connecting just once, withoutadding the key to the cache, enter "n".If you do not trust this host, press Return to abandon theconnection.Store key in cache? (y/n)

Jedná se o interaktivní výzvu, kterou nelze obejít. Pokud vyberete ‚y‘, klíč hostitele se uloží do mezipaměti v registru systému Windows a pro tohoto hostitele nebude otázka na otisk klíče znovu položena. Pokud vyberete ‚n‘, klíč nebude uložen do mezipaměti a tato otázka se zobrazí při každém pokusu o připojení k tomuto hostiteli.

„plink“ ukládá tyto klíče hostitele do mezipaměti v profilu uživatele v registru HKEY_CURRENT_USER. Tato oblast registru je specifická pro aktuální přihlášení; přetrvává mezi relacemi přihlášení, ale tyto hodnoty nejsou sdíleny s ostatními uživateli systému.

Tady vzniká problém. Výchozí účet používaný pro DPX je ‚Místní systémový účet‘. Toto nastavení zkontrolujte ve správci služeb systému Windows. Ve správci služeb najděte službu cmagent, klikněte na ni pravým tlačítkem myši, vyberte vlastnosti a zkontrolujte kartu „Přihlášení“. Aby služba DPX mohla účinně používat službu plink, musí být v registru HKEY_CURRENT_USER uložen hostitelský klíč pro uvedený přihlašovací účet služby cmagent. Problém je v tom, že „účet místního systému“ nemá žádnou přímou možnost, jak se přihlásit do konzoly a snadno tyto hodnoty nasadit.

Existují dvě možnosti:

  • Vytvořit účet správce, který má plný přístup ke všemu hardwaru místního počítače a podporovaným aplikačním rozhraním
  • Použít „účet místního systému“

Obecně jednodušší metodou je vytvořit účet správce, který má plný přístup ke všemu hardwaru místního počítače a podporovaným aplikačním rozhraním. Obvykle funguje účet správce místního stroje nebo správce domény, i když postačí jakýkoli účet, pokud má potřebná oprávnění pro správnou funkci operací zálohování a obnovy DPX. Po vytvoření účtu proveďte následující kroky:

  1. Přejděte do správce služeb systému Windows a změňte služby DPX (zejména cmagent) tak, aby používaly tento nový účet. Otestujte úlohu ochrany dat, abyste se ujistili, že tento účet pro DPX funguje.
  2. Přihlaste se pod tímto účtem a spusťte příkazový řádek. Pro každého hostitele, ke kterému se potřebujete připojit, spusťte příkaz „plink -ssh user@host-name“ a na dotaz ohledně otisku klíče odpovězte „y“, abyste hodnotu uložili do mezipaměti. Žádné další příkazy nejsou potřeba; všechny vyvolané interaktivní shelly můžete ukončit.

Potřebné hodnoty jsou uloženy v mezipaměti:
HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.