PulsarTLS传输加密-创新互联

成都创新互联长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为侯马企业提供专业的成都做网站、成都网站建设,侯马网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。> 默认情况下,Apache Pulsar客户端以纯文本与Apache Pulsar服务通信。可以通过配置TLS传输加密,开启TLS要影响传输性能。 以下是具体配置Pulsar TLS操作和注意事项。(Pulsar 2.4.2版本测试通过) 一 创建根证书CA /data目录下 $ mkdir my-ca $ cd my-ca $ wget --no-check-certificate https://raw.githubusercontent.com/apache/pulsar/master/site2/website/static/examples/openssl.cnf $ export CA_HOME=$(pwd) $ mkdir certs crl newcerts private $ chmod 700 private/ $ touch index.txt $ echo 1000 > serial 生成根证书的私钥,需要录入秘密,记录此密码后边会使用 $ openssl genrsa -aes256 -out private/ca.key.pem 4096 生成根证书CA $openssl req -config openssl.cnf -key private/ca.key.pem \ -new -x509 -days 7300 -sha256 -extensions v3_ca \ -out certs/ca.cert.pem 1)先录入上边的私钥密码 2)填写信息,记录录入的信息后边用到 Country Name (2 letter code):CN //国家名 State or Province Name:beijing //省名 Locality Name:beijing //城市名 Organization Name:test //组织名称 Organizational Unit Name:test //组织单位名称 Common Name: 服务器域名或是ip Email Address:邮件 $ chmod 444 certs/ca.cert.pem 二 生成服务器证书 生成服务器证书密钥 $ openssl genrsa -out broker.key.pem 2048 $ openssl pkcs8 -topk8 -inform PEM -outform PEM \ -in broker.key.pem -out broker.key-pk8.pem -nocrypt 生成服务器证书请求,根据提示填写信息国家等基本信息和CA根证书一一致。 Common Name要填写服务器的域名(单Broker可以填写IP) $ openssl req -config openssl.cnf \ -key broker.key.pem -new -sha256 -out broker.csr.pem $ openssl ca -config openssl.cnf -extensions server_cert \ -days 1000 -notext -md sha256 \ -in broker.csr.pem -out broker.cert.pem 三 Broker配置 broker.conf文件中 默认brokerServicePortTls webServicePortTls为空,不启动TLS通过填写端口号告诉服务器开启TL通道, 如果相关闭普通通道把brokerServicePort和webServicePort的端口去掉。 brokerServicePort=6650 brokerServicePortTls=6651 webServicePort=8080 webServicePortTls=8443 tlsCertificateFilePath=/data/my-ca/broker.cert.pem tlsKeyFilePath=/data/my-ca/broker.key-pk8.pem tlsTrustCertsFilePath=/data/my-ca/certs/ca.cert.pem 注意:官方文档中tlsProtocols tlsCiphers 如果配置了我使用客户端测试时会不通过。此两项不填写测试可以通过。 四 配置完成broker.conf启动Broker查看日志文件提示以下信息说明服务端开启了TLS服务 Started PulsarServerConnector@6a2eea2a{SSL,[ssl, http/1.1]}{0.0.0.0:8443} 五 JAVA客户端测试 1)拷出刚才生成的公有证书 /data/my-ca/certs/ca.cert.pem 放到客户端服务上 2)java 主要代码,发送或接收数据正常说明配置成功 PulsarClient client =PulsarClient.builder() .serviceUrl(url) .tlsTrustCertsFilePath("D:/jar/ca.cert.pem")//客户端服务器上公有证书路径 .enableTlsHostnameVerification(false) .allowTlsInsecureConnection(false)
分享标题:PulsarTLS传输加密-创新互联
文章来源:http://pwwzsj.com/article/ceccpd.html