PAS安全:普元应用服务器PAS,HTTPS单向认证配置说明

PAS V6.5默认携带SSL证书,可以用于业务应用https方式访问。用户如需使用特定证书,可以按照如下方式进行操作。

准备JKS证书

PAS V6.5基于JAVA实现,因此SSL证书需要使用JKS格式,SSL证书包括:keystore.jks(私钥证书库),cacerts.jks(信任库)。

使用keytool 生成JKS

注意:keytool 工具是JDK提供的,请确保服务器上已经安装好JDK,并配置环境变量。

如用户自己生成jks证书可以按照如下操作进行。例如生成别名为app的,密钥库口令为testpass的SSL证书:

  • 使用keytool -genkey命令生成私钥证书库(keystore.jks)。
keytool -genkey -storetype pkcs12 -keyalg RSA -keystore keystore.jks \ 
-alias app -dname CN=localhost,OU=OATest,O=OATest,L=Shanghai,ST=Shanghai,C=CN \
-storepass testpass
  • 导出cer文件
keytool -export -keystore keystore.jks -storetype pkcs12 -alias app \
-file app.cer -storepass testpass
  • 基于cer制作信任库(cacerts.jks)
keytool -import -noprompt -keystore cacerts.jks -alias app -file \
app.cer -storepass testpass

使用pem和key文件生成JKS

如用户不是使用keytool工具生成证书文件,则需要将证书转换为jks格式,本章节以用户拿到pem,key文件讲解。例如:用户证书是:wfapp.pemwfapp.key文件,证书别名为:wfapp,证书密码是testpass

  • 由于pem不能直接导出jks,因此需要先将wfapp.pemwfapp.key文件导出pfx格式文件
openssl pkcs12 -export -out wfapp.pfx -in wfapp.pem -inkey wfapp.key
# 执行后需输入两次密码:testpass
  • 将pfx转为私钥证书库(keystore.jks)文件
keytool -importkeystore -srckeystore wfapp.pfx -destkeystore keystore.jks \
-srcstoretype PKCS12 -deststoretype pkcs12 -srcstorepass testpass \
-storepass testpass
# -srcstorepass <arg>                   源密钥库口令
# -storepass <arg>                   证书库口令,此处设置密码与源密码一致
  • 查看jks信息,查看keystore别名
keytool -list -v -keystore keystore.jks -storepass testpass
# 执行后可以看到如下信息
# 密钥库类型: PKCS12
# 密钥库提供方: SUN

# 您的密钥库包含 1 个条目

# 别名: 1
# ……
  • 根据查看结果发现,证书别名设置为1,可以使用如下命令修改别名
keytool -changealias -keystore keystore.jks -alias 1 -destalias wfapp \
-storepass testpass
# -alias <alias>                  证书中当前的alias(别名)
# -destalias <destalias>          指定的是要修改的别名名称
  • 修改后,可以通过命令查看别名修改成功。
  • 生成信任库(cacerts.jks)文件
keytool -export -keystore keystore.jks -storetype pkcs12 -alias wfapp \
-file wfapp.cer -storepass testpass

keytool -import -noprompt -keystore cacerts.jks -alias wfapp \
-file wfapp.cer -storepass testpass

使用keystore和cer文件生成JKS

用户申请的证书如果是.keystore.cer格式文件,需要将.keystore转成P12格式,再使用keytoo工具转换为jks文件。例如用户获取到app1.keystoreapp1.cer操作示例如下:

  • 生成keystore.jks文件
# keystore转成p12格式
keytool -importkeystore -srckeystore app1.keystore -srcstoretype JKS -deststoretype PKCS12 -destkeystore app1.p12 

# p12转成jks格式
keytool -v -importkeystore -srckeystore app1.p12 -srcstoretype PKCS12 -destkeystore keystore.jks -deststoretype JKS

#查看生成的jsk格式证书,可以根据需要调整证书别名,例如设置别名为app1
keytool -v -list -keystore keystore.jks
  • 生成cacerts.jks文件
# 生成别名为app1的cacerts.jks
keytool -import -alias app1 -file app1.cer -keystore cacerts.jks

# 查看生成的jsk格式证书
keytool -v -list -keystore cacerts.jks

合并证书

由于PAS V6.5中SSL证书除了用于应用访问使用,也会用于PAS V6.5自身的功能,因此不能直接进行证书替换,而是要将用户生成的证书私钥证书库与信任库和PAS V6.5携带的JKS文件进行合并。

注意:PAS V6.5携带的证书包含两个别名:s1aspas-instance,因此请用户注意证书别名不要冲突。

本章节将讲解如何进行JKS合并:

例如用户生成的JKS文件文件路径:/home/test/ssl/keystore.jks/home/test/ssl/cacerts.jks,证书别名:wfapp,密码口令:testpass

PAS V6.5安装在/opt/primeton目录下,则PAS V6.5的JKS文件路径:/opt/primeton/pas6/pas/domains/domain1/config/keystore.jks/opt/primeton/pas6/pas/domains/domain1/config/cacerts.jks,密码口令:changeit

  • 停止PAS V6.5服务,备份PAS V6.5的证书的私钥证书库与信任库。
  • 拷贝PAS V6.5证书到临时目录,创建合并证书目录
cd /home/test/ssl
mkdir old
mkdir new
cp /opt/primeton/pas6/pas/domains/domain1/config/*.jks /home/test/ssl/old
  • 合并keystore.jks
keytool -importkeystore -srckeystore /home/test/ssl/old/keystore.jks \ 
-destkeystore /home/test/ssl/new/keystore.jks -srcstorepass changeit \
-deststorepass changeit -deststoretype pkcs12

keytool -importkeystore -srckeystore /home/test/ssl/keystore.jks \ 
-destkeystore /home/test/ssl/new/keystore.jks -srcstorepass testpass \
-deststorepass changeit -destkeypass changeit -deststoretype pkcs12
  • 合并cacerts.jks
keytool -importkeystore -srckeystore /home/test/ssl/old/cacerts.jks \ 
-destkeystore /home/test/ssl/new/cacerts.jks -srcstorepass changeit \
-deststorepass changeit -deststoretype pkcs12

keytool -importkeystore -srckeystore /home/test/ssl/cacerts.jks \ 
-destkeystore /home/test/ssl/new/cacerts.jks -srcstorepass testpass \
-deststorepass changeit -deststoretype pkcs12
  • 将合并后的SSL证书替换PAS V6.5原先使用的证书
cp /home/test/ssl/new/* /opt/primeton/pas6/pas/domains/domain1/config

配置应用SSL证书

将合并的ssl证书放到PAS V6.5后,启动PAS V6.5服务,配置应用使用的证书。

  • 使用管理员登录PAS V6.5管理控制台

  • 配置HTTP监听程序

    • 如应用部署到默认server上,点击PAS V6.5管理控制台左侧[配置/server-config/HTTP 服务/HTTP 监听程序]菜单项,进入HTTP 监听程序页面

    • 如应用部署到默认独立实例上,例如独立实例名为ins1,点击左侧[配置/ins1-config/HTTP 服务/HTTP 监听程序]菜单项,进入HTTP 监听程序页面。

    • 如应用部署到默认集群上,例如集群名为clusterA,点击左侧[配置/clusterA-config/HTTP 服务/HTTP 监听程序]菜单项,进入HTTP 监听程序页面。

  • 点击http-listener-2链接进入编辑 HTTP 监听程序页面,点击 [SSL] tab页,配置证书昵称,此处填写用户导入证书的别名,设置后点击<保存>按钮。

  • 保存后,在浏览器访问查看证书是否正确,例如:https端口:8181,服务器IP地址:127.0.0.1。在浏览器中访问https://127.0.0.1:8181。

    • 访问时如果提示您的连接不是私密连接,这是因为浏览器认为证书不是专业机构发放,需要点击继续前往访问页面。

    • 访问页面成功,可以在浏览器中查看证书信息,查看证书颁发者与实际一致,SSL证书替换完成。

       

【原文链接】

http://doc.primeton.com/pages/viewpage.action?pageId=82157056

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值