Splunk替换默认3年的自签证书

Splunk替换默认3年的自签证书

01 问题描述

Splunk默认的自签证书为3年,证书过期后会导致KVStore存储无法使用。为了不每三年重启一次Splunk,解决证书的问题。故签发一个100年的自签证书。

02 创建CA根证书(颁发机构证书)

根证书颁发机构证书充当基础证书,用于签署其他证书,您将分发到部署中的 Splunk 平台实例。它被称为“根证书颁发机构证书”的原因如下:作为证书颁发机构,您确定信任基于此根证书的任何证书。

您只需创建一个根证书颁发机构证书。

2.1 创建证书保存目录

1
$ mkdir /opt/splunk/etc/auth/tls

2.2 创建CA证书私钥

进入到/opt/splunk/etc/auth/tls目录为根证书颁发机构证书创建私钥

1
$ /opt/splunk/bin/splunk cmd openssl genrsa -out CA-PrivateKey.key 2048

2.3 生成CSR文件

基于刚才创建的CA私钥生成CA-Certificate.csr文件

1
$ /opt/splunk/bin/splunk cmd openssl req -new -key CA-PrivateKey.key -out CA-Certificate.csr -subj "/C=CN/ST=guangdong/L=shenzhen/O=eccom/OU=IT/CN=site=xxx.info,email=xx.xxxx@outlook.com,server=splunk"

subj参数可以自定义设置如下是subj参数说明

参数 示例 含义
C CN 国家(Country Name)
ST guangdong 州或省(State or Province Name)
L shenzhen 地区或市(Locality Name)
O Eccom 组织(Organization Name)
OU IT 部门(Organization Unit Name)
CN CN=site=xxx.info,email=xx.xxxx@outlook.com,server=splunk 证书使用者的通用名称(Common Name)

2.4 生成CA证书

使用创建的CSR文件并使用之前创建的CA私钥对其进行签名,创建根证书颁发机构证书。CA的证书有效期为100年!

1
$ /opt/splunk/bin/splunk cmd openssl x509 -req -in CA-Certificate.csr -sha512 -signkey CA-PrivateKey.key -CAcreateserial -out CA-Certificate.pem -days 36500

03 创建服务器证书

3.1 创建服务器证书

创建根证书颁发机构证书后,您可以创建其他证书,然后使用CA(根)证书对其进行签名。

与根CA证书类似,您必须创建私钥和证书签名请求才能为Splunk服务器生成证书。

3.2 创建服务器证书私钥

1
2
3
4
# 进入到/opt/splunk/etc/auth/tls目录,为服务器证书创建私钥
$ cd /opt/splunk/etc/auth/tls
# 创建私钥
$ /opt/splunk/bin/splunk cmd openssl genrsa -out ServerPrivateKey.key 2048

3.3 生成服务器CSR文件

在每台服务器上执行,这里使用了Linuxhostname命令为每台服务器设置单独的证书CN信息,最终subj它的效果为:/C=CN/ST=guangdong/L=shenzhen/O=eccom/OU=IT/CN=LinuxApps。其中的LinuxApps为服务器的主机名。

1
$ /opt/splunk/bin/splunk cmd openssl req -new -key ServerPrivateKey.key -out ServerCertificate.csr -subj "/C=CN/ST=guangdong/L=shenzhen/O=eccom/OU=IT/CN=`hostname`" 

3.4 生成服务器证书

1
$ /opt/splunk/bin/splunk cmd openssl x509 -req -in ServerCertificate.csr -SHA256 -CA CA-Certificate.pem -CAkey CA-PrivateKey.key -CAcreateserial -out ServerCertificate.pem -days 36500

3.5 合并证书

1
$ cat ServerCertificate.pem ServerPrivateKey.key CA-Certificate.pem > server.pem

04 服务器调整

4.1 证书备份

进入到/opt/splunk/etc/auth/目录

1
2
3
4
5
6
7
8
进入到/opt/splunk/etc/auth/目录
$ cd /opt/splunk/etc/auth/

# 备份 ca.pem 证书
mv ca.pem ca.pem_bak

# 备份 server.pem 证书
mv server.pem server.pem_bak

4.2 证书迁移

1
2
$ cp /opt/splunk/etc/auth/tls/CA-Certificate.pem /opt/splunk/etc/auth/ca.pem
$ cp /opt/splunk/etc/auth/tls/server.pem /opt/splunk/etc/auth/server.pem

4.3 重启Splunk服务

1
/opt/splunk/bin/splunk restart

05 检查证书

有效期检查

1
2
3
$ openssl x509 -in /opt/splunk/etc/auth/server.pem -noout -dates
notBefore=Aug 23 15:03:56 2024 GMT
notAfter=Jul 30 15:03:56 2124 GMT

Splunk 8089端口证书检查


Splunk替换默认3年的自签证书
https://hesc.info/8d31cd7b1948/
作者
需要哈气的纸飞机
发布于
2024年8月24日
许可协议