当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 获取 IIS 证书

作者:精品下载站 日期:2024-12-14 22:01:30 浏览:13 分类:玩电脑

PowerShell 获取 IIS 证书


PowerShell 中的 Get-ChildItem cmdlet 用于从证书位置存储中获取证书。要获取 IIS 证书和 IIS 站点绑定 SSL 证书,请使用 IIS:SSLBindings 目录查询现有的 SSL 证书绑定。

要将 IIS:SSLBindings 目录与 Get-ChildItem cmdlet 一起使用,请导入模块 WebAdministration。

在此 PowerShell 脚本中,我们将讨论如何获取 IIS(Internet 信息服务)中的所有 SSL 绑定以及与 IIS 站点关联的 SSL 证书。

用于获取所有 IIS 绑定和 SSL 证书的 PowerShell 脚本

使用 IIS:Bindings目录查询并获取Internet信息服务(IIS)中的所有SSL绑定。

运行以下 PowerShell 脚本以获取 IIS 和 SSL 证书中的所有绑定。

# Import module WebAdministration to use IIS:SSLBindings directory
Import-Module WebAdministration

# Query existing SSL bindings 
Get-ChildItem -Path IIS:SSLBindings | ForEach-Object {

    if ($_.Sites)
    {
        # Get certificate that matches thumprint of certificate stored in My Store
        $iisCertificate = Get-ChildItem -Path CERT:LocalMachine\My |
            Where-Object Thumbprint -eq $_.Thumbprint

            
        # Create Custom Object to get all certificates details

        [PsCustomObject]@{
            Site             = $_.Sites.Value
            FriendlyName      = $iisCertificate.FriendlyName
            DnsNameList       = $iisCertificate.DnsNameList
            ExpirationDate    = $iisCertificate.NotAfter
            StartDate         = $iisCertificate.NotBefore
            Issuer            = $iisCertificate.Issuer
            Subject           = $iisCertificate.Subject
        }
    }
}

在上面的 PowerShell 脚本中,Get-ChildItem 命令查询 IIS:SSLBindings 目录并检索 IIS 中的所有 SSL 绑定,并使用 Foreach-Object 迭代每个 SSL 绑定。

ForEach-Object 循环中,它检查站点是否有价值,并使用存储在 LocalMachine\My 存储中的 SSL 绑定证书检查 IIS 站点证书的指纹。

它使用 [PsCustomObject]@{} 创建自定义对象来存储 IIS 站点证书详细信息,例如指纹、颁发者、主题和到期日期。

上述用于获取 IIS 证书和 SSL 绑定的 PowerShell 脚本的输出为:

Site           : HMITest
FriendlyName   : HMITest
DnsNameList    : {localhost}
ExpirationDate : 01-12-2023 00:00:00
StartDate      : 31-01-2023 12:22:36
Issuer         : CN=localhost
Subject        : CN=localhost

[玩转系统] PowerShell 获取 IIS 证书

结论

希望上述有关如何使用 PowerShell 脚本获取 IIS 证书和 SSL 绑定的文章对您有所帮助。

您可以在 ShellGeek 主页上找到有关 PowerShell Active Directory 命令和 PowerShell 基础知识的更多主题。

推荐文章

如何在 PowerShell 中创建自签名证书

如何将证书绑定到 IIS 站点

如何使用 PowerShell 导入要存储的证书

如何在Windows操作系统上删除自签名证书

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯