SSL/TLS加密证书生成(一)

clientNxlog或者rsyslogserverclient证书生成

生成证书应该是在server端生成的,server和client的证书都是在server端生成,生成的命令如下:

1.生成CA本身

SHA-1 算法

openssl genrsa 2048 > ca-key.pem

openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca-cert.pem

openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.98 -out ca-cert.pem

 

 /C :  Country Name

/ST  :   State or Province Name

/L    :   Locality Name

/O   :   Organization Name

/OU:   Organizational Unit Name

/CN:   Common Name

 

SHA-2算法

openssl genrsa 2048 > ca-key.pem

openssl req -new  -sha256  -x509 -nodes -days 3600 -key ca-key.pem -out ca-cert.pem

openssl req -new  -sha256 -x509 -nodes -days 3600 -key ca-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.98 -out ca-cert.pem

 

 

 

 

 2.生成证书(server和client的生成方式相同)

SHA-1算法

openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -out server-req.pem

openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.98 -passin pass:123456 -out server-req.pem

 

openssl rsa -in server-key.pem -out server-key.pem

openssl x509 -req  -in server-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

 

openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -out client-req.pem

openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.57 -passin pass:123456 -out client-req.pem

 

openssl rsa -in client-key.pem -out client-key.pem

openssl x509 -req -in client-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

 

SHA-2算法

openssl req -newkey  rsa:2048  -sha256 -days 3600 -nodes -keyout server-key.pem -out server-req.pem

openssl req -newkey  rsa:2048 -sha256 -days 3600 -nodes -keyout server-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.98 -passin pass:123456 -out server-req.pem

 

openssl rsa -in server-key.pem -out server-key.pem

openssl x509 -req  -in server-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

 

openssl req -newkey rsa:2048  -sha256 -days 3600 -nodes -keyout client-key.pem -out client-req.pem

openssl req -newkey rsa:2048  -sha256 -days 3600 -nodes -keyout client-key.pem -subj /C=CN/ST=BJ/L=bj/O=AXTX/OU=axtx/CN=192.168.161.57 -passin pass:123456 -out client-req.pem

 

openssl rsa -in client-key.pem -out client-key.pem

openssl x509 -req -in client-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Netty是一款高性能的网络应用框架,支持SSL/TLS加密来保护网络通信的安全性。SSL(Secure Sockets Layer)和TLS(Transport Layer Security)是网络通信中广泛使用的加密协议,用于在客户端和服务器之间建立安全的通信信道。 Netty提供了一些组件和类来实现SSL/TLS加密。首先,我们需要使用javax.net.ssl包中的类来创建SSLContext对象。SSLContext是SSL/TLS协议的入口点,它包含用于加密和解密数据的加密算法和密钥。我们需要为SSLContext对象配置密钥库和信任库,密钥库用于存储证书和私钥,而信任库用于存储可信的证书。 接下来,我们需要创建SslHandler对象,将其添加到Netty的ChannelPipeline中。SslHandler作为一个ChannelHandler,负责处理SSL/TLS握手过程和数据的加密解密。当建立连接时,SslHandler会自动执行握手过程,包括协商加密算法、验证证书以及生成会话密钥等。 一旦握手完成,SslHandler会将数据加密后发送到网络,并将接收到的密文解密成明文。这样可以确保在网络传输过程中的数据保密性和完整性。此外,SslHandler还提供了一些方法来获取会话信息,如远程主机的证书和协商的加密算法。 使用Netty的SSL/TLS加密功能能够有效地提高网络通信的安全性。通过配置SSLContext和添加SslHandler,我们可以方便地实现对网络通信的加密和解密。无论是在客户端还是服务器端,都可以使用Netty的SSL/TLS加密功能来保护数据的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值