当前位置: > Linux服务器 > ios服务器 >

IOS CA服务器和客户端的配置

时间:2014-05-11 19:59来源:linux.it.net.cn 作者:it
SCEP方式,实验分为两步:

一、配置IOS的CA:九个步骤

1、产生和导出RSA密钥信息(可选的)

用途:CA需要RSA密钥对来产生一个根证书上的签名和验证。
可以在CA配置过程中自动产生,但是有两个局限:
第一是不可以导出密钥,除非在IOS 12.3(11)T的版本。第二是固定的1024位密钥长度。

为导出密钥到安全位置,常使用手动产生密钥对,并标记为可以导出。
手动产生密钥命令语法:
conf t
cry key generate rsa general-keys label CA-name exportable
(产生密钥,标记名,定义为可导出)
cry key export rsa CA-name pem url tftp://192.168.1.99/CA-name des cisco123
(导出到TFTP服务器,使用DES加密该密钥,设置密码为cisco123,在导入的时候要使用该密码,否则密钥失效)
cry key import rsa CA-name2 pem url tftp://192.168.1.99/CA-name des [exportable] cisco123
这个语法不是错误的,这里有个小方法,用来保护密钥对:将CA-name的密钥对导入到路由器上,并且重新指定为CA-name2,这里有个可选项[exportable] ,如果不选择,则CA-name2将不可导出,即使你拥有路由器15级的权限。接着要做的是这样:
cry key zeroize rsa CA-name(删除原来的,可导出的密钥对)
如果保存在NVRAM中,则拷贝到安全的带外区域,并删除NVRAM中的密钥对(见TFTP语法),现在,即使CA路由器受到灾难,天下是太平的,你可以随时恢复你的CA架构。

2、启动CA(必需的)

简单的配置只需要三个命令
conf t
ip http server
cry pki server CA-name(此时进入子模式)
no shut(如果没有手动产生的密钥可以匹配,将自动产生密钥对,在自动产生密钥方式中,可以通过database archive 指定PKCS12或PEM的文件格式,默认为PKCS12 )
CA发起后,默认在NVRAM中产生三个文件,.ser,申请数据库,含有被路由器CA颁发的身份证书;.p12或PEM,含有加密的公钥和私钥;.crl   含有CRL。

3、定义额外的CA参数(可选的)

conf t
crypto pki server R2(进入子模式)
这里有很多重要的参数建议配置,否则管理是困难的

database level[minimal/names/complete]:

默认为minimal,只存储最小的信息来保证证书是唯一的;
如:db_version = 1
last_serial = 0x2
names,证书的序列号和名字存储在.SER中,使得证书的发现和吊销特别容易
complete:保存了完整内容在数据库中,真正的仿真了真实的CA产品要做的事情。

database username deng pass deng
(此命令允许对数据库文件.ser的访问权限)

lifetime enrollment-request
以小时计,一个请求允许保留在数据库中的时间,默认为一个星期,可扩展到1000小时

grant [none/auto/ra-auto]
当用SCEP发起一个证书请求,则以初始状态添加到申请数据库中,被分配给一个唯一的请求ID号。如配置为NONE,客户端收到一个挂起的回应,CA管理员需要登陆到CA,批准或者拒绝这个请求;如配置为AUTO,给用户提供一个正确的口令,请求被允许,否则拒绝。如未批准,则在lifetime enrollment-request期满后从申请数据库中清除。

lifetime certificate
颁发给客户的证书有效时间,默认为一年,范围是1-1825天

4、处理申请请求(必需的)

注意这里的命令都在特权模式下完成

cryp pki server R2 info request
查看请求信息

cry pki server R2 remove{all/reqid}
这个命令和拒绝是不同的,用来清除相同的请求信息的老的请求信息,因为CA是不检查老的请求信息的,相反,它只接受新的请求信息

cry pki server R2 grant{all/reqid}
允许一个请求ID或是允许ALL,执行此命令会建立两个文件 (.crt 、.cnm)在datebase url指定的位置,.crt 包含实际的客户身份证书,.cnm包含证书的描述。一旦证书被下载,CA清除申请数据库中的条目。如未批准,则在lifetime enrollment-request期满后从申请数据库中清除。

cry pki server R2 reject{all/reqid}
拒绝一个请求ID或是允许ALL

cry pki server R2 password generate
1-1440分钟,默认是一个小时,提供一个随机口令来保护证书请求,客户在下载自己的证书的时候需要匹配这个密码

cry pki server R2 requst pkcs10{tftp://192.168.1.99/R1.req}
用于不支持SCEP的情况,执行手动申请过程。在客户端建立一个PKCS10文件,CA导入这个文件来产生客户证书。必须满足两个条件:第一是TFTP可达,第二是客户文件存在

5、吊销身份证书
cry pki server R2 revoke {cert-id}
执行这个命令将产生CRL条目,用cry pki server R2 info crl可检查CRL列表。

6、建立IOS RA

有一个局限:CA也必须是IOS的路由器
RA的执行过程:当收到申请请求(手动或是SCEP),RA可以基于策略批准或拒绝该请求,一旦批准,请求被转发到CA,CA产生身份证书,交给RA,请求者联系RA得到证书。
RA的功能:负责记录或者核实请求信息,验证现有证书。RA不能产生身份证书,也不能吊销身份证书。

建立RA只需要完成两步:第一是向CA登记,第二是定义自己为RA
配置示例:
conf t

向CA登记
cry key generate rsa
cry pki trustpoint R2(必需的,定义CA)
enrollment url http://R2(必需的,定义如何和CA交互)
subject-name cn=R1 ou=ios RA o=cisco c=china(可选的,标识自己为RA)
exit

定义自己为RA
cryp pki server R1
mode RA
grant ra-auto
no shut

不必要使用cryp ca authentucate来申请根证书,也不必要使用cry ca enroll来申请自己的身份证书,当建立自己为RA后,将自动完成这个过程。

7、备份CA

应当经常备份的文件:
ser
crl
p12
这是CA在NO SHUT后产生的三个文件

cer,保存着CA的根证书

crt
cnm
这是批准请求后产生的客户端证书和信息

run config
现在的配置文件

8、恢复CA

利用备份的文件来恢复CA是很简单的
三步:
拷贝备份文件到路由器
导入RSA密钥对
重新配置和发起CA

始终记得,如果没有备份文件的话,要恢复CA是不可能的

9、清除CA服务

只需要一条命令,CA信任点、CA证书、CA RSA密钥对都会被自动清除
conf t
no cry pki server R2
(责任编辑:IT)
------分隔线----------------------------