在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx

上传人:b****7 文档编号:10438762 上传时间:2023-02-11 格式:DOCX 页数:52 大小:3.15MB
下载 相关 举报
在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx_第1页
第1页 / 共52页
在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx_第2页
第2页 / 共52页
在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx_第3页
第3页 / 共52页
在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx_第4页
第4页 / 共52页
在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx_第5页
第5页 / 共52页
点击查看更多>>
下载资源
资源描述

在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx

《在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx》由会员分享,可在线阅读,更多相关《在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx(52页珍藏版)》请在冰豆网上搜索。

在 WebSphere MQ 和 WebSphere Message Broker 之间建立基于 SSL 的通信.docx

在WebSphereMQ和WebSphereMessageBroker之间建立基于SSL的通信

 开始之前

  本教程展示如何在z/OS上使用MQSSL和MicrosoftWindows在WebSphereMQ和WebSphereMessageBroker产品之间建立基于SSL的通信。

本教程还将展示如何检查SSLCipherSpecification(SSLCIPH)的各种组合,以及诸如无效证书和过期证书之类的错误场景。

  我们使用z/OS平台上的面板执行这些任务,这些面板使那些不熟悉z/OS的用户能够轻松完成这些任务。

在本文末尾,我们列示了z/OS上的所有RACF命令(如创建一个密匙环,将证书添加到密匙环等)。

对于在z/OS平台上建立MQSSL,这些命令可以执行与z/OS上的面板相同的操作。

  目标

  在z/OS队列管理器上建立MQSSL

  在z/OS队列管理器和WebSphereMessageBroker工具包之间建立单向SSL通信

  在z/OS队列管理器和WebSphereMessageBroker工具包之间建立双向SSL通信

  展示各种SSLCIP组合的SSL通信

  展示无效SSLCIPH组合、无效证书和过期证书的错误场景

  先决条件

  您应该熟悉:

  z/OS基础知识

  z/OS上的各种面板(ISPF、RACF等)的用途

  IBMWebSphereMQ

  IBMWebSphereMessageBroker(运行时和工具包)概念

  比较熟悉MicrosoftWindows上的SSL

  系统要求

  要执行本教程中的任务,您需要:

  一台MicrosoftWindows机器

  IBMWebSphereMQV6或更高版本

  IBMWebSphereMessageBrokerV6或V6.1

  IBMWebSphereMessageBrokerToolkitV6或V6.1

  安装了RACF的z/OSLPAR

  时间

  2小时

  关键字和定义

  为方便起见,本小节提供来自MQ信息中心的一些关键术语定义。

  SSL(SecureSocketsLayer,安全套接字层)

  SSL是一个工业标准协议,它在应用程序协议和通信层之间提供一个数据安全层,通常是TCP/IP。

SSL使用加密技术、数字签名和数字证书,在客户端和服务器之间提供消息隐私、消息完整性和相互验证。

  MQSSL

  在WebSphereMQ中,您可以对两个队列管理器之间的通信使用SSL,每个队列管理器都将使用一个数字证书。

  SSLCIPH(SSLCipherSpecification,SSL密码规范)

  SSLCIPH为一个SSL连接定义单个CipherSpec。

一个WebSphereMQSSL通道的两端都必须包括这个属性,SSLCIPH值必须在通道的两端指定相同的CipherSpec。

该值是一个字符串,最大长度为32个字符。

这个属性并不是对所有通道类型都有效。

它只对传输类型(TRPTYPE)为TCP的通道有效。

如果TRPTYPE不是TCP,将忽略数据且不发送错误信息。

SSLCIPH是一个可选属性。

  SSLCAUTH(SSLClientAuthentication,SSL客户端验证)

  SLCAUTH用于定义通道是否需要接收和验证来自一个SSL客户端的SSL证书。

可能的值包括:

  OPTIONAL——如果对等SSL客户端发送一个证书,则该证书被正常处理;如果该客户端不发送任何证书,验证并不失败。

  REQUIRED——如果SSL客户端不发送证书,验证失败。

  默认值是REQUIRED。

  您可以在一个非SSL通道定义上指定一个SSLCAUTH值,非SSL通道上没有或缺失SSLCIPH。

您可以使用这种方法临时禁用SSL以便调试,无需先清除SSL参数然后再重新输入这些参数。

  这个属性对可以接收一个通道初始化流的所有通道有效,发送器通道除外。

这个属性对以下通道类型有效:

  *Server

  *Receiver

  *Requester

  *Serverconnection

  *Clusterreceiver

  SSLPEER(SSLPeer,SSL对等)

  SSLPEER属性用于检查来自对等队列管理器或客户端(位于WebSphereMQ通道的另一端)的证书的DistinguishedName(DN)。

如果从对等SSL接收的DN与SSLPEER值不匹配,通道将不会启动。

SSLPEER是一个可选属性。

如果不指定属性值,通道启动时将不检查对等DN。

在z/OS上,该属性的最大长度是256字节,其他平台上是1024字节。

在z/OS上,将不会对这个属性值进行检查。

如果您输入错误的值,通道在启动时失败,错误消息写入通道两端的错误日志。

通道两端还将生成一个ChannelSSLError事件。

在支持SSLPEER的平台(除z/OS®外),字符串的有效性在首次输入时检查。

您可以在一个非SSL通道定义上指定一个SSLCAUTH值,非SSL通道上没有或缺失SSLCIPH。

您可以使用这种方法临时禁用SSL以便调试,无需先清除SSL参数然后再重新输入这些参数。

  假设

  以下小节提供在WebSphereMessageBrokerToolkit(Windows)和z/OS上的WebSphereMQ队列管理器之间建立一个MQSSL连接的步骤和屏幕截图。

  假设1:

队列管理器已建立并正在运行,通道初始化程序正在运行。

SSL设置还没有激活。

  假设2:

在本教程中,我们对队列管理器MA01和MA02分别使用两个用户ID:

MA01USR和MA02USR。

这些用户ID需要访问RACDERT命令。

咨询您的系统管理员,您要使用的用户ID是否能够访问RACDERT命令。

  在下面的小节中,您将学习如何创建一个密匙环。

密匙环可以视为存储数字证书的存储库。

这些证书用于确定客户端系统是否可以信任。

  创建一个密匙环

  选择选项R(RACF)(如图1所示)并按下Enter键。

图1.WMQIChangeTeamMenu

  选择选项7(DIGITALCERTIFICATESANDKEYRINGS)(如图2所示)并按下Enter键。

图2.ServicesOptionMenu

  选择选项6(KeyRingServices)(如图3所示)并按下Enter键。

图3.ServicesOptionMenu

  选择选项1(Createanewkeyring),在Foruser字段中输入用户名(这里是MA01USR,如图4所示),然后按下Enter键。

图4.DigitalCertificateKeyRingServices

  输入MA01作为密匙环的名称(如图5所示)并按下Enter键。

图5.DigitalCertificateKeyRingName

  图6展示了成功创建并添加到RACFDatabase的密匙环。

图6.确认密匙环已经添加

  按下F3键,直到返回主菜单。

  在下一个小节中,您将学习使用RACF创建一个CA证书。

  创建一个客户端验证(CA)证书

  选择选项1(Generateacertificateandapublic/privatekeypair)(如图7所示)并按下Enter键。

图7.DigitalCertificatesandRelatedServices

  输入X以请求一个CA证书(如图8所示)并按下F8键(F8是向下滚动功能键)。

图8.生成一个DigitalCertificate

  输入First.M.Last作为CommonName,SoftwareEngineer作为Title以及MVS作为OrganizationalUnit(如图9所示):

图9.生成一个DigitalCertificate(更多选项)

  输入这个CA证书的startdate/time和enddate/time的值(如图10所示),这些值基本上表明证书的有效性。

输入“CA01”作为这个CA证书的Labelname并按下F8键。

图10.生成一个DigitalCertificate(更多选项)

  输入一个X作为选项Certsign(如图11所示)。

如果没有出现错误消息,那么这个CA证书已成功创建并添加到RACF数据库。

图11.生成一个DigitalCertificate(更多选项)

  要列示CA证书CA01,选择选项4(如图12所示)并按下Enter键。

图12.DigitalCertificates和RelatedServices

  在ForCertificateType字段中的CertificateAuthority下输入一个X,然后选择选项3(如图13所示)并按下Enter键。

图13.DigitalCertificateServicesMainPanel

  输入CA01作为证书的标签并选择选项1(如图14所示),然后按下Enter键。

图14.DigitalCertificateListFilteringPanel

  图15显示了证书CA01的内容,按下F8显示更多证书细节。

图15.ChangeStatus/DeleteDigitalCertificate

  在下一小节中,您将学习创建一个由CA证书签署的个人证书。

这个签署CA证书是您在上一小节创建的,标签为CA01。

  创建一个个人证书

  选择选项1(如图16所示)并按下Enter键。

图16.DigitalCertificatesandRelatedServices

  输入任意个人用户ID以生成一个个人证书。

选择CertificateAuthority作为SigningCertificatetype,输入CA01作为Label(如图17所示)。

按下F8向下滚动。

图17.生成一个DigitalCertificate

  输入MAO1.PERSONAL作为您选择的CommonName(如图18所示),按下F8键向下滚动。

图18.生成一个DigitalCertificate(更多选项)

  在Label字段中输入个人证书的名称。

常用的格式是ibmWebSphereMQXXXX,其中XXXX代表4个字母的队列管理器名。

选择选项Handshake(如图19所示)并按下Enter键。

图19.生成一个DigitalCertificate(更多选项)

  连接证书和密匙环

  下面需要将CA证书和个人证书添加到密匙环,因为当队列管理器执行与客户端系统的SSL“握手”时,将检查密匙环中的证书列表。

  将CA证书CA01连接到密匙环MA01

  在本小节中,您将学习将CA证书连接(添加)到密匙环。

  选择选项6(Create,List,orDeleteanentirekeyringorConnectorRemoveacertificateto/fromakeyring)(如图20所示)并按下Enter键。

图20.DigitalCertificatesandRelatedServices

  选择选项4以将一个数字证书连接到一个密匙环(如图21所示)并按下Enter键。

图21.DigitalCertificateKeyRingServices

  输入密匙名称MA01并选择CertificateAuthority选项作为CertificateType,输入CA01作为Labelname,选择CertificateAuthority作为Usage证书(如图22所示)并按下Enter键。

图22.将数字证书连接到密匙环

  图23显示CA证书CA01已经成功连接到密匙环MA01。

图23.DigitalCertificateKeyRingServices

  在下一小节中,您将学习将个人证书连接(添加)到密匙环。

  将个人证书ibmWebSphereMQMA01连接到密匙环MA01

  输入创建个人证书的用户ID(MA01USR)并选择选项4(Connectadigitalcertificatetoakeyring)(如图24所示)并按下Enter键。

图24.DigitalCertificateKeyRingServices

  输入密匙环名称MA01,输入用户IDMA01USR作为CertificateType(因为这是一个个人证书)。

下面输入ibmWebsphereMQMA01作为Labelname,选择Personal作为Usage字段(如图25所示)并按下Enter键。

图25.将数字证书连接到密匙环

  图26显示个人证书ibmWebsphereMQMA01已经成功连接到密匙环MA01。

图26.DigitalCertificateKeyRingServices

  在下一小节中,您将学习如何列示连接(添加)到密匙环的所有证书。

  列示连接到密匙环的证书

  选择选项3(Listexistingkeyring(s)),输入MA01USR作为用户ID(如图27所示)并按下Enter键。

图27.DigitalCertificateKeyRingServices

  输入密匙环名称MA01(如图28所示)并按下Enter键。

图28.DigitalCertificateListKeyRingServices

  图29显示所有连接到密匙环MA01的证书。

图29.列示密匙环名称

  清单1展示了通道初始化程序(MA01CHIN))日志的一个代码段。

注意变量SSLTASKS(=0)和SSLKEYR(='')的值和消息“0SSLserversubtasksstarted,0failed”,该消息表明队列管理器还没有准备好进行SSL通信。

  还应注意表明位于端口地址1501的监听器已经启动的消息。

清单1.通道初始化程序(MA01CHIN)日志的一个代码段

CSQX080I MA01 CSQXGIP SSLTASKS=0, SSLRKEYC=0           

CSQX081I MA01 CSQXGIP SSLKEYR=                  

CSQX082I MA01 CSQXGIP SSLCRLNL=                 

CSQX085I MA01 CSQXGIP LU62CHL=200, LUGROUP= , 

 LUNAME= , LU62ARM= 

CSQX090I MA01 CSQXGIP TCPCHL=200, 

 TCPKEEP=NO, TCPNAME=TCPIP   

CSQX091I MA01 CSQXGIP TCPSTACK=SINGLE, IPADDRV=IPV4       

CSQX092I MA01 CSQXGIP OPORTMIN=0, OPORTMAX=0           

CSQX093I MA01 CSQXGIP DNSWLM=NO, DNSGROUP=            

CSQX094I MA01 CSQXGIP RCVTIME=0, 

 RCVTTYPE=MULTIPLY, RCVTMIN=0  

CSQX011I MA01 CSQXGIP Client attachment feature available    

CSQX141I MA01 CSQXADPI 8 adapter subtasks started, 0 failed   

CSQX151I MA01 CSQXSSLI 0 SSL server subtasks started, 0 failed 

CSQX410I MA01 CSQXREPO Repository manager started        

CSQX015I MA01 CSQXSPRI 5 dispatchers started, 0 failed      

CSQX022I MA01 CSQXSUPR Channel initiator initialization complete 

CSQX251I MA01 CSQXSTRL Listener started, 

 TRPTYPE=TCP INDISP=QMGR 

CSQX023I MA01 CSQXLSTT Listener started,             

port 1501 address *,                       

  提取CA证书

  现在,队列管理器拥有了一个证书。

当Toolkit(作为一个MQClient)连接时,队列管理器向Toolkit出示该证书。

要验证队列管理器的证书,Toolkit需要CA证书。

  在此之前,为用户ID(WebSphereMessageBrokerToolkit使用此用户ID启动)创建一个配置管理器并定义一个ACL条目。

  按照以下步骤将CA文件提取到一个物理序列(PS)文件中:

  使用如图30所示的参数创建一个PS文件,该文件将用于提取CA证书CA01。

图30.DataSetInformation

  选择选项3(Writeacertificatetoadataset)(如图31所示)并按下Enter键。

图31.DigitalCertificatesandRelatedServices

  由于CA证书将传递到Windows机器,选择选项CertificateAuthority作为CertificateType(如图32所示)。

输入标签名CA01并输入将在其中保存提取的证书的数据集名。

选择选项Base64encodedX.509certificate,这是提取的证书的默认格式类型。

按下Enter键。

图32.将证书写入DataSet

  使用ISPF3.4选项,您可以查看提取的证书。

  清单2显示了提取的证书CA01的内容。

清单2.CA证书CA01的内容

********************************* Top of Data ********************************** 

-----BEGIN CERTIFICATE-----                           

MIICfTCCAeagAwIBAgIBADANBgkqhkiG9w0BAQUFADBBMQwwCgYDVQ 

QLEwNNVlMxGjAYBgNVBAwTEVNvZnR3YXJlIEVuZ2luZWVyMRUwEwYDV 

QQDEwxGaXJzdC5NLkxhc3QwHhcNMDkwMzI5MTgzMDAwWhcNMTAwMz 

MwMTgyOTU5WjBBMQwwCgYDVQQLEwNNVlMxGjAYBgNVBAwTEVNvZn 

R3YXJlIEVuZ2luZWVyMRUwEwYDVQQDEwxGaXJzdC5NLkxhc3QwgZ8w 

DQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMUbsc1Z5TNBP0GIGcWvSJZ 

2Mh7WV3lsbA80z9KeXKEI+pHwePrKttk3Xbz3EHwk6ImiaFlMEdwdfCaib5/I       

5chXa5qXrQRknpMywCBvbBYvnX0IK/eX2OushIIxOecDoCdejNZPucq2qjc 

bhKX5kXqvE0CeMxUWoZJWBcbcVwEjAgMBAAGjgYQwgYEwPwYJYIZIAYb 

4QgENBDITMEdlbmVyYXRlZCBieSB0aGUgU2VjdXJpdHkgU2VydmVyIGZv 

ciB6L09TIChSQUNGKTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BA 

UwAwEB/zAdBgNVHQ4EFgQUhc9SF6OS/fmxfZhbWeyXiKPg6dUwDQYJKo 

ZIhvcNAQEFBQADgYEAceSBdwf6cU6vc/O63WE8E6kB/lY1XLwSIWefEa6L 

MicJHu+sbgsf/tRTu8L47D/wbo7JEEoCV3kYWvkFV3QasjFmCch9MfR0SP 

FKXmUpcLPVtaHTyb+gSvCe5ZaOeCDlxbp2SZpNdKF2r2OLmhrssfAuNIa 

+fE5l9Ed3nIMrpTE=                             

-----END CERTIFICATE-----                            

******************************** Bottom of Data ******************************** 

  将CA证书文件传输到WindowsToolkit的存储库

  按照以下步骤将CA证书文件传输到Windows:

  使用WindowsExplorer或命令提示创建一个目录C:

MQSSLMA01:

C:

>md MQSSL 

C:

>cd MQSSL 

C:

MQSSL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1