安全 : 用于 Windows 的思科安全访问控制服务器

Windows的v3.2 Secure ACS与EAP-TLS计算机验证

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

本文描述如何配置可扩展的认证协议–传输层安全(EAP-TLS)用思科安全访问控制系统(ACS) Windows版本3.2的。

注意: 计算机验证不支持与Novell Certificate Authority (CA)。ACS能使用EAP-TLS支持计算机验证到Microsoft Windows活动目录。最终用户客户端可能会将用于用户身份验证的协议限制为用于计算机身份验证的同一协议。也就是说,使用 EAP-TLS 进行计算机身份验证可能需要使用 EAP-TLS 进行用户身份验证。有关计算机身份验证的详细信息,请参阅 Cisco 安全访问控制服务器 4.1 用户指南 中的计算机身份验证部分。

注意: 当设置ACS通过EAP-TLS和ACS时验证机器为计算机验证设置,客户端必须配置执行仅计算机验证。欲知更多信息,请参考如何启用基于802.1X的网络的计算机验证在Windows比斯塔,在Windows服务器2008年和在Windows XP服务包3。

先决条件

要求

本文档没有任何特定的前提条件。

使用的组件

本文档中的信息基于以下软件和硬件版本。

  • Cisco Secure ACS for Windows v3.2

  • Microsoft 证书服务(作为企业根证书颁发机构 [CA] 安装)

    注意: 有关详细信息,请参阅证书颁发机构设置分步指南leavingcisco.com

  • DNS 服务和 Windows 2000 Server(装有 Service Pack 3 和修补程序 323172leavingcisco.com

    注意: 如果遇到 CA 服务器问题,请安装修补程序 323172leavingcisco.com Windows 2000 SP3 客户端需要修补程序 313664 才能启用 IEEE 802.1x 身份验证。leavingcisco.com

  • Cisco Aironet 1200 系列无线接入点 12.01T

  • 运行 Windows XP Professional(装有 Service Pack 1)的 IBM ThinkPad T30

本文档中的信息都是基于特定实验室环境中的设备创建的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您是在真实网络上操作,请确保您在使用任何命令前已经了解其潜在影响。

背景理论

EAP-TLS和受保护可扩展的身份验证协议 (PEAP) 建立和使用TLS/Secure套接层(SSL)隧道。EAP-TLS 在 ACS 服务器(身份验证、授权和记帐 [AAA])和客户端都有证书的情况下使用相互认证,证明它们彼此的身份。然而,PEAP 仅使用服务器端身份验证;只有服务器才具备证书,并向客户端证明其身份。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

网络图

本文档使用下图所示的网络设置。

/image/gif/paws/43722/acs-eap-01.gif

配置 Cisco Secure ACS for Windows v3.2

按照以下步骤配置 ACS 3.2。

  1. 获取 ACS 服务器证书

  2. 配置 ACS 以使用存储中的证书

  3. 指定 ACS 应信任的其他证书颁发机构

  4. 重新启动服务并在 ACS 上配置 PEAP 设置

  5. 将接入点指定并配置为 AAA 客户端

  6. 配置外部用户数据库

  7. 重新启动服务

获取 ACS 服务器证书

按照以下步骤获取证书。

  1. 在 ACS 服务器上打开 Web 浏览器,并输入 http://CA-ip-address/certsrv 以便访问 CA 服务器。

  2. 以管理员身份登录到域。

    /image/gif/paws/43722/acs-eap-02.gif

  3. 选择 Request a certificate,然后单击 Next。

    /image/gif/paws/43722/acs-eap-03.gif

  4. 选择 Advanced request,然后单击 Next。

    /image/gif/paws/43722/acs-eap-04.gif

  5. 选择 Submit a certificate request to this CA using a form,然后单击 Next。

    /image/gif/paws/43722/acs-eap-05.gif

  6. 配置证书选项:

    1. 选择 Web Server 作为证书模板,并输入 ACS 服务器的名称。

      /image/gif/paws/43722/acs-eap-06a.gif

    2. 在 Key Size 字段中输入 1024,并选中 Mark keys as exportable 和 Use local machine store 复选框。

    3. 根据需要配置其他选项,然后单击 Submit

      /image/gif/paws/43722/acs-eap-06b.gif

      注意: 如果显示 Potential Scripting Violation 对话框,请单击 Yes 以继续。

      acs-eap-07.gif

  7. 单击 Install this certificate

    /image/gif/paws/43722/acs-eap-08.gif

    注意: 如果显示 Potential Scripting Violation 对话框,请单击 Yes 以继续。

    acs-eap-09.gif

  8. 如果安装成功,将显示 Certificate Installed 消息。

    acs-eap-10.gif

配置 ACS 以使用存储中的证书

请完成以下步骤以便将 ACS 配置为使用存储中的证书。

  1. 打开 Web 浏览器,并输入 http://ACS-ip-address:2002/ 以访问 ACS 服务器。

  2. 单击 System Configuration,然后单击 ACS Certificate Setup。

  3. 单击 Install ACS Certificate

  4. 单击 Use certificate from storage 单选按钮。

  5. 在 Certificate CN 字段中,输入您在本文档获取 ACS 服务器证书部分的步骤 5a 中指定的证书名称。

  6. 单击 submit

    /image/gif/paws/43722/acs-eap-11.gif

    配置完成之后,将显示一条确认消息,指示 ACS 服务器配置已发生更改。

    注意: 此时无需重新启动 ACS。

    /image/gif/paws/43722/acs-eap-12.gif

指定 ACS 应信任的其他证书颁发机构

ACS 自动信任颁发其自己的证书的 CA。如果客户端证书由其他 CA 颁发,您必须完成以下步骤:

  1. 单击 System Configuration,然后单击 ACS Certificate Setup。

  2. 单击 ACS Certificate Authority Setup 以向受信任的证书列表添加 CA。

  3. 在 CA 证书文件的字段中,输入证书的位置,然后单击 Submit

    /image/gif/paws/43722/acs-eap-13.gif

  4. 单击 Edit Certificate Trust List

  5. 选中 ACS 应该信任的所有 CA,不要选择 ACS 不应信任的所有 CA。

  6. 单击 submit

    /image/gif/paws/43722/acs-eap-14.gif

重新启动服务并在 ACS 上配置 EAP-TLS 设置

完成以下步骤,以便重新启动服务和配置 EAP-TLS 设置:

  1. 单击 System Configuration,然后单击 Service Control。

  2. 单击 Restart 以重新启动服务。

  3. 要配置 EAP-TLS 设置,请单击 System Configuration,然后单击 Global Authentication Setup。

  4. 选中 Allow EAP-TLS,然后选中一个或多个证书比较。

  5. 单击 submit

    /image/gif/paws/43722/acs-eap-15.gif

将接入点指定并配置为 AAA 客户端

完成这些步骤为了配置接入点(AP)作为AAA客户端:

  1. 单击 Network Configuration

  2. 在 AAA Clients 下,单击 Add Entry

    /image/gif/paws/43722/acs-eap-16.gif

  3. 在 AAA Client Hostname 字段中输入接入点主机名,在 AAA Client IP Address 字段中输入 IP 地址。

  4. 在 Key 字段中输入 ACS 和接入点的共享密钥。

  5. 选择 RADIUS (Cisco Aironet) 作为身份验证方法,并且单击 Submit。

    /image/gif/paws/43722/acs-eap-17.gif

配置外部用户数据库

完成以下步骤以便配置外部用户数据库。

  1. 单击 External User Databases,然后单击 Database Configuration。

  2. 单击 Windows Database

    注意: 如果尚未定义 Windows 数据库,请单击 Create New Configuration,然后单击 Submit。

  3. 单击 Configure

  4. 在 Configure Domain List 下,将 SEC-SYD 域从 Available Domains 移至 Domain List。

    /image/gif/paws/43722/acs-eap-18.gif

  5. 在 Windows EAP Settings 区域中,单击 Permit EAP-TLS machine authentication 复选框以启用计算机身份验证。

    注意:  更改计算机身份验证名称前缀。Microsoft 当前使用“/host”(默认值)区分用户身份验证和计算机身份验证。

  6. 或者,您也可以选中 EAP-TLS Strip Domain Name 复选框以便启用域剥离。

  7. 单击 submit

    /image/gif/paws/43722/acs-eap-19.gif

  8. 单击 External User Databases,然后单击 Unknown User Policy。

  9. 单击 Check the following external user databases 单选按钮。

  10. Windows Database 从 External Databases 列表移至 Selected Databases 列表。

  11. 单击 submit

    /image/gif/paws/43722/acs-eap-19a.gif

重新启动服务

在完成 ACS 配置之后,请完成以下步骤以便重新启动服务:

  1. 单击 System Configuration,然后单击 Service Control。

  2. 单击 Restart

配置 MS 证书计算机自动注册

完成以下步骤以便为域配置计算机证书自动注册:

  1. 转至 Control Panel > Administrative Tools > Open Active Directory Users and Computers

  2. 右键单击 domain sec-syd,并选择 Properties。

  3. 单击 Group Policy 选项卡。

  4. 单击 Default Domain Policy,然后单击 Edit。

  5. 转至 Computer Configuration > Windows Settings > Security Settings > Public Key Policies > Automatic Certificate Request Settings

    acs-eap-20.gif

  6. 在菜单栏上转至 Action > New > Automatic Certificate Request,并单击 Next。

  7. 选择 Computer,并单击 Next。

  8. 选中证书颁发机构,在本示例中为“Our TAC CA”。

  9. 单击 Next,然后单击“Finish”。

配置 Cisco 接入点

完成以下步骤以便将 AP 配置为使用 ACS 作为身份验证服务器:

  1. 打开 Web 浏览器,并输入 http://AP-ip-address/certsrv 以便访问 AP。

  2. 请在工具栏上单击 Setup

  3. 请在 Services 下单击 Security,然后单击 Authentication Server。

    注意: 如果您已在 AP 上配置相应帐户,则必须登录。

  4. 输入身份验证程序配置设置:

    • 在 802.1x Protocol Version 中选择 802.1x-2001(适用于 EAP 身份验证)。

    • 在 Server Name/IP 字段中,输入 ACS 服务器的 IP 地址。

    • 选择 RADIUS 作为服务器类型。

    • 在 Port 字段中输入 1645 或 1812。

    • 输入您在将接入点指定并配置为 AAA 客户端中指定的共享密钥。

    • 选中 EAP Authentication 选项以指定服务器的使用方式。

  5. 请在完成后单击 OK

    /image/gif/paws/43722/acs-eap-21.gif

  6. 单击 Radio Data Encryption (WEP)

  7. 输入内部数据加密设置。

    • 从 Use of Data Encryption by Stations is 下拉列表中选择 Full Encryption,以便设置数据加密的级别。

    • 对于 Accept Authentication Type,请选中 Open 复选框以便设置接受的身份验证类型,并选中 Network-EAP 以便启用 LEAP。

    • 对于 Require EAP,请选中 Open 复选框以便需要 EAP。

    • 在 Encription Key 字段中输入加密密钥,并从 Key Size 下拉列表中选择 128 bit

  8. 请在完成后单击 OK

    acs-eap-22.gif

  9. Network > Service Sets > Select the SSID Idx为了确认使用正确服务集标识(SSID)。

  10. 单击 Ok

    /image/gif/paws/43722/acs-eap-22a.gif

配置无线客户端

完成以下步骤以便配置 ACS 3.2:

  1. 加入域

  2. 获取用户证书

  3. 配置无线网络

加入域

完成以下步骤以便向域添加无线客户端。

注意: 要完成这些步骤,无线客户端必须连接到 CA,可以通过有线连接或禁用了 802.1 安全功能的无线连接。

  1. 以本地管理员身份登录到 Windows XP。

  2. 转至 Control Panel > Performance and Maintenance > System

  3. 单击 Computer Name 选项卡,然后单击 Change。

  4. 在 Computer Name 字段中输入主机名。

  5. 选择 Domain,然后输入域名(在本示例中为 SEC-SYD)。

  6. 单击 Ok

    /image/gif/paws/43722/acs-eap-23.gif

  7. 当显示 Login 对话框时,请使用具有足够的权限的帐户登录以加入域。

  8. 在计算机成功加入域之后,请重新启动该计算机。

    计算机随即成为该域的成员。由于配置了计算机自动注册,因此计算机安装有 CA 颁发的证书和计算机身份验证证书。

获取用户证书

完成以下步骤以便获取用户证书。

  1. 使用需要证书的帐户在无线客户端(便携式计算机)上登录到 Windows XP 和域 (SEC-SYD)。

  2. 打开 Web 浏览器,并输入 http://CA-ip-address/certsrv 以便访问 CA 服务器。

  3. 使用同一帐户登录到 CA 服务器。

    注意: 证书存储在无线客户端上的当前用户的配置文件下;因此,必须使用同一 帐户以便登录到 Windows 和 CA。

    /image/gif/paws/43722/acs-eap-24.gif

  4. 单击 Request a certificate 单选按钮,然后单击 Next。

    /image/gif/paws/43722/acs-eap-03.gif

  5. 单击 Advanced request 单选按钮,然后单击 Next。

    /image/gif/paws/43722/acs-eap-04.gif

  6. 单击 Submit a certificate request to this CA using a form 单选按钮,然后单击 Next。

    /image/gif/paws/43722/acs-eap-05.gif

  7. 从 Certificate Template 中选择 User,并在 Key Size 字段中输入 1024。

  8. 根据需要配置其他选项,然后单击 Submit

    /image/gif/paws/43722/acs-eap-25.gif

    注意: 如果显示 Potential Scripting Violation 对话框,请单击 Yes 以继续。

    acs-eap-07.gif

  9. 单击 Install this certificate

    /image/gif/paws/43722/acs-eap-08.gif

    注意: 如果显示 Potential Scripting Violation 对话框,请单击 Yes 以继续。

    acs-eap-09.gif

    注意: 如果尚未在无线客户端上保存 CA 自己的证书,则可能会显示 Root Certificate Store。单击 Yes 以便将证书保存到本地存储。

    acs-eap-26.gif

    如果安装成功,则会显示一条确认消息。

    acs-eap-10.gif

配置无线网络

完成以下步骤以便设置无线网络的选项:

  1. 以域用户身份登录到域。

  2. 转至 Control Panel > Network and Internet Connections > Network Connections

  3. 右键单击 Wireless Connection,并选择 Properties。

  4. 单击 Wireless Networks 选项卡。

  5. 从可用网络列表中选择无线网络,然后单击 Configure

    /image/gif/paws/43722/acs-eap-23.gif

  6. 在 Authentication 选项卡上,请选中 Enable IEEE 802.1x authentication for this network 复选框。

  7. 从 EAP 类型下拉列表选择 Smart Card or other Certificate,然后单击 Properties。

    注意: 要启用计算机身份验证,请选中 Authenticate as computer when computer information is available 复选框。

    /image/gif/paws/43722/acs-eap-27.gif

  8. 单击 Use a certificate on this computer 单选按钮,然后选中 Use simple certificate selection 复选框。

  9. 选中 Validate server certificate 复选框,并单击 OK。

    注意: 当客户端加入域时,CA 证书将作为可靠的根证书颁发机构自动安装。客户端将自动以隐式方式信任签署客户端证书的 CA。通过在 Trusted Root Certification Authorities 列表中检入其他 CA,也可以信任其他 CA。

    /image/gif/paws/43722/acs-eap-28.gif

  10. 在网络属性窗口的 Association 选项卡上,选中 Data encryption (WEP enabled) 和 The key is provided for me automatically 复选框。

  11. 单击 OK,然后再次单击 OK 以关闭网络配置窗口。

    /image/gif/paws/43722/acs-eap-29.gif

验证

本部分提供了可用于确认您的配置是否正常运行的信息。

  • 要验证无线客户端是否已通过验证,请完成以下步骤:

    1. 在无线客户端上,转至 Control Panel > Network and Internet Connections > Network Connections

    2. 在菜单栏上转至 View > Tiles

    此时,无线连接应显示“Authentication succeeded”消息。

  • 要验证无线客户端是否已通过验证,请在 ACS Web 界面上转至 Reports and Activity > Passed Authentications > Passed Authentications active.csv

故障排除

本部分提供的信息可用于对配置进行故障排除。

  • 验证是否已在 Windows 2000 Advanced Server(装有 Service Pack 3)上将 MS 证书服务安装为企业根 CA。

  • 验证您是否正在使用 Cisco Secure ACS for Windows v3.2 和 Windows 2000(装有 Service Pack 3)。

  • 如果机器认证在无线客户端出现故障,在无线连接将没有网络连接。只有档案存储在无线客户端上的缓存中的帐户才能登录到域。计算机必须插入到有线网络中,或者设置为没有任何 802.1x 安全功能的无线连接。

  • 如果 CA 在加入域时自动注册失败,请查看事件查看器以查找可能的错误原因。

  • 如果无线客户端用户的配置文件无有效证书,且密码正确,那么您仍然能登录机器和域,但注意不能建立无线连接。

  • 如果无线客户端上的 ACS 证书无效(取决于证书生效的起止日期、客户端日期和时间设置以及 CA 信任),客户端将拒绝该证书,从而导致身份验证失败。ACS 将在 Web 界面中的 Reports and Activity > Failed Attempts > Failed Attempts XXX.csv 下记录失败的身份验证,其中含有与“EAP-TLS or PEAP authentication failed during SSL handshake.”类似的身份验证失败代码。CSAuth.log 文件中的预期错误消息与此消息相似:

    AUTH 06/04/2003 14:56:41 E 0345 1644 EAP: buildEAPRequestMsg: 
    other side probably didn't accept our certificate
  • 如果 ACS 上的客户端证书无效(取决于认证生效的起止日期、客户端日期和时间设置和 CA 信任),客户端将拒绝证书,导致认证失败。ACS 将在 Web 界面中的 Reports and Activity > Failed Attempts > Failed Attempts XXX.csv 下记录失败的身份验证,其中含有与“EAP-TLS or PEAP authentication failed during SSL handshake.”类似的身份验证失败代码。如果 ACS 因为不信任 CA 而拒绝了客户端证书,CSAuth.log 文件中的预期错误消息则与此消息相似:

    AUTH 06/04/2003 15:47:43 E 0345 1696 EAP: ProcessResponse:
    SSL handshake failed, status = 3 (SSL alert fatal:unknown CA certificate)

    如果 ACS 因为客户端证书已过期而拒绝了该证书,CSAuth.log 文件中的预期错误消息则与此消息相似:

    AUTH 06/04/2005 15:02:08 E 0345 1692 EAP: ProcessResponse:
    SSL handshake failed, status = 3 (SSL alert fatal:certificate expired)
  • 在注册ACS Web接口,在两个报告和活动下>在格式<user-id>@<domain>通过认证>通过认证XXX.csv和Reportsand活动>失败的尝试>失败的尝试XXX.csv, EAP-TLS验证显示。PEAP 身份验证以 <DOMAIN>\<user-id> 格式显示。

  • 您能通过遵从下面的步骤验证 ACS 服务器的认证和信任。

    1. 使用具有管理员特权的帐户登录到 ACS 服务器上的 Windows。

    2. 转至“开始”>“运行”,键入 mmc,并单击 OK 以打开 Microsoft 管理控制台。

    3. 在菜单栏上,转至“控制台”>“添加/删除管理单元”,然后单击“添加”。

    4. 选择“证书”,并单击“添加”。

    5. 选择“计算机帐户”,单击“下一步”,然后选择本地计算机(正在运行此控制台的计算机)。

    6. 依次单击“完成”、“关闭”和“确定”。

    7. 要验证 ACS 服务器是否具有有效的服务器端证书,请转至 Console Root > Certificates (Local Computer) > Personal > Certificates,并验证 ACS 服务器是否具有相应证书(在本示例中名为 OurACS)。

    8. 打开证书,并验证以下各项:

      • 对所有预先计划而没有验证的证书没有的警告。

      • 没有任何有关此证书不受信任的警告。

      • “此证书用于 - 确保远程计算机的身份”。

      • 认证未到期,仍然有效(检查“起止”日期是否有效)。

      • “您具有与此证书相对应的私钥”。

    9. 在Details制表符上,验证 Version 字段有 V3 的值,并且增强的密钥用法字段至少包含客户端验证这个值 (1.3.6.1.5.5.7.3.1)。

    10. 要验证 ACS 服务器是否信任 CA 服务器,请转至 Console Root > Certificates (Local Computer) > Trusted Root Certification Authorities > Certificates,并验证 ACS 服务器是否具有相应证书(在本示例中名为 Our TAC CA)。

    11. 打开证书,并验证以下各项:

      • 对所有预先计划而没有验证的证书没有的警告。

      • 没有任何有关此证书不受信任的警告。

      • 证书旨在用于正当目的。

      • 认证未到期,仍然有效(检查“起止”日期是否有效)。

      如果 ACS 和客户端没有使用同一个根 CA,则应验证是否安装了完整的 CA 服务器证书。如果证书是从子证书颁发机构获取的,上述内容则同样适用。

  • 您能通过遵从下面的步骤验证无线客户端的机器认证和信任。

    1. 使用具有管理员特权的帐户登录到 ACS 服务器上的 Windows。打开 Microsoft 管理控制台,方法是:转至“开始”>“运行”,键入 mmc,并单击“确定”。

    2. 在菜单栏上,转至“控制台”>“添加/删除管理单元”,然后单击“添加”。

    3. 选择“证书”,并单击“添加”。

    4. 选择 Computer account,单击 Next,然后选择 Local computer(运行此控制台的计算机)。

    5. 依次单击“完成”、“关闭”和“确定”。

    6. 验证计算机是否具有有效的客户端证书。如果证书无效,计算机身份验证将失败。要验证证书,请转至 Console Root > Certificates (Local Computer) > Personal > Certificates。验证计算机是否具有相应证书;其名称格式为 <host-name>.<domain>。打开证书,并验证以下各项。

      • 对所有预先计划而没有验证的证书没有的警告。

      • 没有任何有关此证书不受信任的警告。

      • “此证书用于 - 向远程计算机证明您的身份”。

      • 认证未到期,仍然有效(检查“起止”日期是否有效)。

      • “您具有与此证书相对应的私钥”。

  • 在 Details 选项卡上,验证 Version 字段的值为 V3,并且增强的密钥用法字段至少包含客户端认证这个值 (1.3.6.1.5.5.7.3.2)。还可能列出其他用途。确保 Subject 字段包含值 CN = <host-name>.<domain>;还可能列出其他值。验证主机名和域是否与证书中的指定内容相匹配。

  • 要确认客户端的配置文件信任 CA 服务器,请转到 Console Root > Certificates (Current User) > Trusted Root Certification Authorities > Certificates。验证是否存在 CA 服务器的证书(在本例中命名为 Our TAC CA)。打开证书,并验证以下各项。

    • 对所有预先计划而没有验证的证书没有的警告。

    • 没有任何有关此证书不受信任的警告。

    • 证书旨在用于正当目的。

    • 认证未到期,仍然有效(检查“起止”日期是否有效)。

    如果 ACS 和客户端没有使用同一个根 CA,则应验证是否安装了完整的 CA 服务器证书。如果证书是从子证书颁发机构获取的,上述内容则同样适用。

  • 按照配置 Cisco Secure ACS for Windows v3.2 中的说明验证 ACS 设置。

  • 按照配置 MS 证书服务中的说明验证 CA 设置。

  • 按照配置 Cisco 接入点中的说明验证 AP 设置。

  • 按照配置无线客户端中的说明验证无线客户端设置。

  • 验证用户帐户是否存在于 AAA 服务器的内部数据库或某个已配置的外部数据库中,并确保未禁用该帐户。

  • CA发出的证书构件在安全散列算法2 (SHA-2)不是与Cisco Secure ACS兼容,因为他们开发与到现在不支持SHA-2的Java。为了解决此问题,请重新安装CA并且配置它发行与SHA-1的证书。

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 43722