|
|
在Tengine服务器安装证书
7 N3 t$ w# J9 Y D6 W登录Tengine服务器。
4 {4 c9 a0 k' Q- ^执行以下命令创建证书存放目录。( l# V, |* r( }# j1 T# G( i
cd /usr/local/tengine/conf #证书默认安装目录,您可以根据实际配置调整。
& ]% _. |7 ]" `mkdir cert #创建证书目录,命名为cert。' r( L: C* ?& n0 m- g' `! M5 c
使用远程登录工具附带的本地文件上传功能,将证书相关文件上传到Tengine服务器的证书目录(示例中为/usr/local/tengine/conf)。
) P' M0 t4 e+ ~说明 如果您在申请证书时将 CSR生成方式设置为 手动填写,请将您手动创建的证书私钥文件上传至 /usr/local/nginx/conf/cert目录下。
2 \2 g+ s/ _1 h% g- K编辑Tengine配置文件nginx.conf,修改与证书相关的配置。配置内容如下:* K0 W( y, C6 {2 t6 e' t5 |
# HTTPS server9 u( L5 J8 ~7 F
0 f/ n) y( q% W" g2 x
server {4 E R( c5 @1 I2 ~$ N F. r, H
listen 443 ssl;. ~+ {/ G8 r, ^6 n( l5 G
server_name ssl.certqa.cn;) v9 b* M& U0 y7 v
Z4 x* a! E" U' C # 启用NTLS。Tengine针对BabaSSL中的NTLS功能进行了适配,本文使用BabaSSL作为Tengine的底层密码库来实现通信加密的能力。
' @, T" M8 y4 `; P. j enable_ntls on;
5 ?3 o; G% z, a; L) {) W2 g% X2 z3 `$ Z! P8 _7 u8 a
# 配置RSA算法证书& z& u: K3 Y4 L8 }4 }5 J1 g
ssl_sign_certificate cert / server_rsa.pem;
5 @: o8 ]6 I; j# W0 v* d7 z ssl_sign_certificate_key cert / server_rsa.key;
$ f+ X7 L+ |0 U+ {& S
1 _3 x: S- w( l2 S # 配置国密算法签名证书 1 |( s, i4 R9 T( s$ e; e, b
ssl_enc_certificate cert / server_sign.pem;- b7 w& D' G# Y9 K5 \( k
ssl_enc_certificate_key cert / server_sign.key;
& ^" f9 I# H$ a4 w4 i* y1 g
( }, ]; [1 r9 t& ~, p" A9 s # 配置国密算法加密证书
/ l( H, P) D. E. X0 o8 y3 E ssl_certificate cert / server_enc.pem;
4 w4 R9 W5 y" |0 _! s+ c) m ssl_certificate_key cert / server_enc.key;
+ E8 b- [5 O& g6 j6 V3 L! S3 q
5 R& z- N& J- B ssl_session_cache shared: SSL: 1 m; _* S9 C8 \6 j( \* {
ssl_session_timeout 5 m;
# a9 l+ N# G2 J; n8 R n7 h \ Z4 ]( h. ]
# 配置加密套件# ssl_ciphers HIGH: !aNULL: !MD5;5 O5 E: E8 W8 P$ ?2 N5 S! q
ssl_ciphers ECDHE - RSA - AES128 - GCM - SHA256: AES128 - SHA: DES - CBC3 - SHA: ECC - SM4 - CBC - SM3: ECDHE - SM4 - GCM - SM3: ECC - SM4 - SM3;) k. b, K# T/ m/ H( d
ssl_prefer_server_ciphers on;
. ?1 P# o4 }: j" G6 S- C4 ~2 V+ T
' e v$ k; _- w. Z2 I- p location / {$ d: Q2 z# S! {4 u
root html; #Web网站程序存放目录。- b9 W9 h) h x( P0 q
index index.html index.htm;. i9 H2 K) o. f/ }! f- k
}% J# ~- P3 ]+ H
}+ s5 P" N" a# d
& B1 Y9 u% i7 {+ m! X" V, w$ n
}
2 F- Q! `5 H: m# Y O; P执行如下命令,重启Tengine服务。# y0 k4 C' s+ v: \5 i/ G
cd /usr/local/tengine/bin #进入Tengine服务的可执行目录。" X1 J7 P7 e' h4 u
./nginx -s reload #重新载入配置文件。
' w0 p$ `1 C# H5 ]! q7 [" o步骤四:验证安装是否成功3 a7 c& Y/ L" e" {
证书安装完成后,您可通过访问证书的绑定域名验证该证书是否安装成功。9 S1 T# f5 Q: e% ?2 ~+ L
https://yourdomain #需要将yourdomain替换成证书绑定的域名。! u8 w( a/ \5 \# r3 D
国密算法证书验证需要使用国密浏览器(例如密信浏览器)测试。证书安装成功效果如下:国密算法# [, _8 J% W5 E3 d& u: V+ I8 }
RSA加密算法证书使用Google、Firefox、Edge、360等浏览器测试。证书安装成功效果如下:RSA加密算法
- O: d2 p- A' W$ J5 H/ Y
5 N' G0 C( M t. Q! M' I |
|