一、基础准备

为了创建和导入第三方SSL-certificate你需要做如下准备:
1、一个WLC(随着版本的不同,可能需要准备的也不同)这里以7.0.98版本为例。
2、一个外部的证书颁发机构(Certificate Authority,CA),这里以www.startssl.org为例,该网站提供免费的一类证书。
3、一个带有DNS和DHCP服务器的guest网络的独立VLAN。
4、适用于Windows的OpenSSL 0.9.8h,当然,在Linux系统中也可以使用OpenSSL。
5、一个TFTP服务器软件(这里离使用TFTP32)

二、控制器的准备

1、你必须为guest网络创建两个接口
第一个接口与其他接口一样,具有名称,IP地址和VLAN标签。
第二接口是virtual接口,参考如下截图创建:

设置IP地址并定义应该在证书中命名的DNS主机名称:

2、创建WLAN
定义guest WLAN,按照如下截图实现:

进入对应的SSID,选择你想绑定的接口并且进行设置:

这样定义完成后,点击Apply,你就能看到一个没加密的SSID,当你尝试连接它,并打开浏览器界面,你应该从自签名SSL证书收到一个“certificate error”的起来。这就需要我们去做第三方的证书了。

三、通过startssl.org准备创建SSL certificate

1、准备
要使用www.startssl.org创建SSL证书,您必须注册一个用户帐户。 通过创建用户帐户,您将收到一个用户证书,您将需要安全地登录到startssl.org。
可以肯定的是,请求的域名属于你,你必须验证你的域名。 因为我们只使用免费的1类证书,所以不需要其他验证。

2、验证你的域名
要为您的主机wlc.domain.org创建1类证书,您必须在www.startssl.org上验证域domain.org。 首先,您必须使用用户凭证登录www.startssl.org。
注意,wlc.domain.org是你在WLC上配置的DNS。
在登录之后,进入StartSSL PKI,然后到Control Panel。到Validation Wizard→Domain Name Validation→Continue

然后输入域名名称,选择TLD(top level domain,顶级的域名)然后,点击Continue

要验证你是域名所有者,StartSSL会将电子邮件发送到预定义的邮件地址。 在你的邮件系统中创建一个你使用的电子邮件地址,并以下面的形式选择它:

点击Continue按钮,并且等待验证邮件。只要你收到了验证邮件,就点击邮件中的验证链接,以验证这个domain。

四、在StartSSL.org请求证书

点击Certificates Wizard,选择Web Server SSL/TLS Certificate 并点击Continue

输入一个10-32位的密码,要记住这个密码,后面会需要它,并且之后不能修改恢复它。选择2048位的密钥大小(WLC不支持大于2048 bits的,而这里的StartSSL不支持小于2048 bits的)。当然如果其他的支持1024 bits,也可以选择1024 bits。

然后点击Continue,你会收到如下信息:

复制文本框中的完整内容并将其粘贴到新的文本文件中,命名该文本文件为private_key.txt 。该文件创建完毕后,点击Continue
这个private key对应的是mykey.pem

选择你想要的hostname并且点击Continue

接下来等待StartSSL的验证,你大概需要等待将近3小时。

五、下载设备证书(Device Certificate)

在手动验证了StartSSL之后,你将会收到一封确认邮件,然后在StartSSL安装如下指导选择Tool Box→Retrieve Certificate(取回证书)

选择所需的证书。 新的将被标记为绿色:

您将收到此信息:

复制文本框中的全部内容并将其粘贴到新的文本文件中。 将该文本文件另存为device_cert.pem
Device cert对应是合并证书的第一个证书

六、下载CA Certificate

按照如下指导点击Tool Box→StartCom CA Certificates
下载StartCom Root CA(PEM编码)Class 1 Intermediate CA两个证书

七、合并证书

创建一个新的文件文件,保存为All-Certs.pem ,并且以文本方式打开,按照下列顺序插入三个文件。
 
    Device certificate
    Class 1 Intermediate Server CA
    StartCom Root CA

转换证书:

你需要使用OpenSSL来转换证书,这里使用的是OpenSSL 的Windows版本0.9.8h,打开OpenSSL并且执行如下命令:
操作命令1:这里是将All-Certs.pem证书和private_key.txt合成我们的All-certs.p12文件。
pkcs12 -export -in D:\All-Certs.pem -inkey D:\private_key.txt -out D:\All-certs.p12  -clcerts –passin pass:PASSWORD –passout pass:PASSWORD
操作命令2:合成p12文件后,由于我们的WLC不能支持,所以要转换回.pem文件。
pkcs12 -in D:\All-certs.p12 -out D:\final-cert.pem -passin pass:PASSWORD -passout pass:PASSWORD

其中D:\表示你的证书所在的路径,PASSWORD表示您在StartSSL主页上定义的密码。 两行应该没有错误的执行。
为-passout参数配置的密码必须与在WLC上配置的证书密码参数相匹配。

八、导入证书到WLC

允许TFTP server,选择你证书的路径,打开WEB界面,Security→Web Auth→Certificate→勾选Download SSL Certificate,然后输入下面的类似信息

点击Apply按钮提交,成功安装证书后,需要重启WLC.

额外需要的网络配置:
您必须在guest vlan中配置您的DHCP和DNS服务器。 在DNS服务器上,您需要为wlc.domain.org设置指向IP地址2.2.2.2的区域条目。

原文地址:
https://www.burkard.it/2011/05/add-third-party-ssl-certificate-to-cisco-wlcs-web-authentication-page/

WLC-Download 3-party CA to WLC的更多相关文章

  1. WLC Crash采集什么信息?

    WLC和思科的路由器交换机不同,Cisco的WLC采用的是AireOS. 如果WLC crash或无故重启,可以尝试采集如下信息: AireOS WLC version 8.0.140.0 or hi ...

  2. iOS APNS配置(转)

    Introduction To send Push notification to an application/device couple you need an unique device tok ...

  3. Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式

    Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cut ...

  4. "This connection is untrusted" - Firefox error message

    Error Messages I am receiving the following error message in Firefox: After selecting Cancel to clos ...

  5. (转)Apple Push Notification Services in iOS 6 Tutorial: Part 1/2

    转自:http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1 Upda ...

  6. Docker Data Center系列(三)- DTR安装指南

    本系列文章演示如何搭建一个mini的云平台和DevOps实践环境. 基于这套实践环境,可以部署微服务架构的应用栈,演练提升DevOps实践能力. 1 系统要求 1.1 硬件和软件要求 成为UCP管理的 ...

  7. expdp和impdp快速导出导入,不用创建虚拟目录

    expdp 和impdp不用创建虚拟目录:在cmd直接   expdp 用户名/密码 回车 就导出了,(如果提示输入用户名和密码就输入).再将导出的文件放在oracle默认的dpdump文件夹里面,然 ...

  8. Generate a Push Certificate

    To send Push notification to an application/device couple you need an unique device token (see the O ...

  9. 9-lvs-lvs集群-及keepalived健康检查

    注意: 配置前需要将上一篇的配置都清除掉 ifconfig eth1: down service ipvsadm restart nginx作为请求分发服务器时, 有健康检查机制, 挂了的服务器不会在 ...

随机推荐

  1. (c#)独一无二的出现次数

    题目 解

  2. JavaScript错误-throw、try和catch

    try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行. JavaS ...

  3. SparkStreaming个人记录

    一.SparkStreaming概述 SparkStreaming是一种构建在Spark基础上的实时计算框架,它扩展了Spark处理大规模流式数据的能力,以吞吐量高和容错能力强著称. SparkStr ...

  4. .net core各种修改环境变量的方式

    除了修改系统变量,或者程序硬编码中修改,还有以下方法: 发布在IIS中,修改web.config <environmentVariables> <environmentVariabl ...

  5. 神经网路的层数,损失函数(loss)

    神经网络的复杂度:可用神经网络的层数和神经网络中待优化参数个数表示 神经网路的层数:一般不计入输入层,层数 = n 个隐藏层 + 1 个输出层 神经网路待优化的参数:神经网络中所有参数 w 的个数 + ...

  6. 小白艰难的Python图像的绘制

    1.贪吃蛇 代码: import turtle turtle.setup(650,350) turtle.penup() turtle.fd(-250) turtle.pendown() turtle ...

  7. EVE无法安装vim

    有些时候,由于一些错误的操作,可能导致vim无法使用,例如如下情况: root@eve-ng:~# vim /etc/profile-bash: vim: command not found 此时,一 ...

  8. Eclipse使用段注释格式化代码后混乱情况解决

    今天在Eclipse写代码用到段注释代码块注释一个方法,习惯使用格式化代码,结果一看格式化后的代码就乱了.就像下面那样. 觉得太乱了,而且不好对比检查.如果取消注释中间的**还保存了的,好纠结.于是就 ...

  9. [LEETCODE] 初级算法/数组 1.1删除排序数组中的重复项

    题目: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成. ...

  10. C 语言实例 - 判断三边能否构成三角形

    原理: 要判断输入的三条边能否够成三角形,只需满足条件两边之和大于第三边即可. #include<stdio.h> int main() { printf("请输入三个边长:\n ...