Exportovat (0) Tisk
Rozbalit vše

Programová správa certifikátů serveru v rámci služby IIS 6.0

Pomocí kombinace skriptů s objektem COM IISCertObj lze certifikáty spravovat programově a vzdáleně. Objekt IISCertObj umožňuje provádět následující úlohy:

  • importovat kopie certifikátů ze souboru PFX (soubor obsahující zašifrovaný certifikát ve formátu PFX a soukromý klíč) z jednoho serveru na více serverů,
  • ukládat záložní kopie certifikátů do centrální sítě,
  • kopírovat certifikát z jednoho serveru na více serverů.

Informace o možnostech získání certifikátů serverů SSL naleznete v tématu Získání certifikátů serveru.

Ukázky skriptů

Po získání certifikátu serveru SSL od certifikačního úřadu je třeba distribuovat kopie na všechny servery, k čemuž je nutné provést jeden nebo více z následujících kroků:

  • import kopií hlavních certifikátů na více serverů,
  • uložení záložních kopií certifikátů do centrálního archivu,
  • export certifikátů mezi více serverů.

Služba IIS v kombinaci s prostředky WSH (Windows Script Host) nebo ASP (Active Server Pages) umožňuje spustit skripty komunikující programově s objektem IISCertObj a zajistit tak import, archivaci a export certifikátů.

Import certifikátů na více serverů (CertImport.vbs)

Velké sítě často vyžadují použití jediného certifikátu SSL k zabezpečenému přihlašování uživatelů k více serverům. Přidávání kopií certifikátů na jednotlivé servery pomocí konzoly MMC by bylo časově extrémně náročné. Lepší řešení představují skripty, které instalují kopie téhož certifikátu na všechny cílové servery.

ImportantDůležité informace
Chcete-li spouštět skripty a spustitelné programy, musíte být členem skupiny Administrators v místním počítači. Z hlediska zabezpečení je nejlepší přihlásit se k počítači pod účtem, který není členem skupiny Administrators, a pak pomocí příkazu runas spouštět skripty nebo spustitelné programy jako správce. Na příkazovém řádku zadejte příkaz runas /profile /user:počítač\Administratorcmd. Do příkazového okna s oprávněními správce, které se zobrazí, zadejte příkaz cscript.exenázev_skriptu (včetně úplné cesty a všech případných parametrů skriptu).

Následující skript uložte pod názvem CertImport.vbs. Argumenty příkazů zadávaných do příkazového řádku upravte tak, aby odpovídaly konkrétním síťovým prostředkům. Pak použijte příkaz z příkazového řádku k importu certifikátu z úložiště certifikátu jednoho serveru na ostatní servery .

Option Explicit
Dim iiscertobj, pfxfile, pfxfilepassword, InstanceName, WebFarmServers, IISServer
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
pfxfile = WScript.Arguments(0)
pfxfilepassword = WScript.Arguments(1)
InstanceName = WScript.Arguments(2)
WebFarmServers = split(WScript.Arguments(3), ",")
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
For Each IISServer in WebFarmServers
  iiscertobj.ServerName = IISServer
  iiscertobj.InstanceName = InstanceName
  iiscertobj.Import pfxfile, pfxfilepassword, true, true
Next

Příkaz zadávaný v příkazovém řádku:

Certimport.vbs cert.pfx pfxpassword w3svc/1 iisserver1,iisserver2,iisserver3 Administrator aal34290

Uložení certifikátů do centrálního archivu (Save_all_certs.vbs)

Pomocí metody exportu IISCertObj můžete archivovat záložní kopie všech certifikátů ve webové serverové farmě do centrálního úložiště.

Následující skript uložte v textovém editoru pod názvem Save_all_certs.vbs. Argumenty příkazů zadávaných z příkazového řádku upravte tak, aby odpovídaly konkrétním síťovým prostředkům. Pak použijte příkaz z příkazového řádku k exportu kopií certifikátů do centrální sítě.

Option Explicit
Dim iiscertobj, targetServer, targetServers, pfxbasename, pfxpassword, InstanceName
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
pfxbasename = WScript.Arguments(0)
pfxpassword = WScript.Arguments(1)
InstanceName = WScript.Arguments(2)
targetServers = split(WScript.Arguments(3), ",")
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
iiscertobj.InstanceName = InstanceName
For Each targetServer in targetServers
  iiscertobj.ServerName = targetServer
  iiscertobj.Export pfxbasename + targetServer + ".pfx", pfxpassword, true, false, false
Next

Příkaz zadávaný v příkazovém řádku:

Save_all_certs.vbs C:\certbackup\ adsf-0324 w3svc/1 iisserver2,iisserver3,iisserver4 Administrator aal34290

Kopírování certifikátu z existujícího serveru na nový (CertCopy.vbs)

Pomocí dále uvedeného skriptu a příkazu zadávaného z příkazového řádku můžete využít metodu copy objektu IISCertObj ke zkopírování certifikátu nového serveru po přidání serveru do webové serverové farmy.

Následující skript uložte pod názvem certcopy.vbs. Argumenty příkazů zadávaných do příkazového řádku upravte tak, aby odpovídaly konkrétním síťovým prostředkům. Pak spusťte příkaz z příkazového řádku.

Option Explicit
Dim iiscertobj, targetServer, targetServers, targetInstance
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
iiscertobj.ServerName = WScript.Arguments(0)
iiscertobj.Instancename = WScript.Arguments(1)
targetServers = split(WScript.Arguments(2), ",")
targetInstance = WScript.Arguments(3)
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
For Each targetServer in targetServers
  iiscertobj.Copy true, true, targetServer, targetInstance
Next

Příkaz zadávaný v příkazovém řádku:

Certcopy.vbs iisServer1 w3svc/1 iisServer2 w3svc/1 Administrator asdf-0324

Byl tento obsah pro vás užitečný?
(Zbývající počet znaků: 1500)
Děkujeme za váš názor.

Obsah vytvořený komunitou

Přidat
Zobrazit:
© 2014 Microsoft