openssl.cnf是openssl命令的配置文件,很多证书签发和管理相关的设定都是在此配置文件中进行的,这篇文章介绍一下此配置文件常见的可设定的内容和方法。
设定文件的路径
文件路径:/etc/pki/tls/openssl.cnf
格式说明
格式说明:
[ 段1名称 ]
key1 = value1
key2 = value2
[ 段2名称 ]
key3 = value3
key4 = value4
语法说明
- 整体格式类似与脚本文件格式
- 注释使用# 在行首设定
- 在value的设定中可使用多行,\作为多行连接符使用
- 在value的设定中可以识别\n等符号
- 同段的值引用可以直接使用:${key1} 或者$key1
- 跨段的值引用可以使用:${段1名称::key1} 或者 $段1名称:key1
- 可以使用${ENV::环境变量} 方式引用系统环境变量,但系统环境变量不存在会出错
- 段名可以进行自定义
- 在开头的默认段也可以没有段名
- 如果同一段内存在相同的key的设定,后面的会覆盖掉前面的值,openssl命令会使用最后的key的设定值
主要段和设定的说明
默认段
#[ default ]
HOME = .
RANDFILE = $ENV::HOME/.rnd
设定项目 | 设定项目说明 |
---|---|
HOME | 定义HOME环境变量的默认值 |
RANDFILE | 默认的随机种子文件,与-rand选项相对应 |
oid_section | 扩展对象的定义,通过new_oids段进行保存和展开 |
使用技巧:
在读取配置文件时,首先会读取指定段