网站怎么发布到服务器,企业网站建设专业精准丨 鸣远科技,php网站开发案例教程ppt,关闭wordpress注册功能准备
1、服务器准备#xff1a;本文搭建使用的服务器是CentOS 7.6 2、安装包准备#xff1a;需要GmSSL、国密Nginx#xff0c;可通过互联网下载或者从 https://download.csdn.net/download/m0_46665077/89936158 下载国密GmSSL安装包和国密Nginx安装包。
服务器安装依赖包…准备
1、服务器准备本文搭建使用的服务器是CentOS 7.6 2、安装包准备需要GmSSL、国密Nginx可通过互联网下载或者从 https://download.csdn.net/download/m0_46665077/89936158 下载国密GmSSL安装包和国密Nginx安装包。
服务器安装依赖包
服务器、安装包准备好了之后先执行如下命令安装依赖包
yum install -y lrzsz tree screen psmisc lsof tcpdump wget ntpdate gcc gcc-c glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel net-tools iotop bc zip unzip zlib-devel bash-completion nfs-utils automake libxml2 libxml2-devel libxslt libxslt-devel perl perl-ExtUtils-Embed 安装GmSSL
1.将安装包 GmSSL-master.zip 上传到目标机器 /root 目录下并解压、编译安装逐次执行如下命令
unzip /root/GmSSL-master.zip
cd GmSSL-master/
./config --prefix/usr/local/gmssl
make -j4 sudo make install2.调整软连接主要调整 libssl.so.1.1 和 libcrypto.so.1.1 库文件链接 和 gmssl 快捷链接不调整的执行gmssl version会报错
ln -s /usr/local/gmssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/gmssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
ln -sv /usr/local/gmssl/bin/gmssl /usr/sbin/3.查看gmssl版本确保gmssl安装成功
gmssl versionGmSSL安装成功参考如下截图
安装Nginx支持国密的版本
1.将Nginx安装包 nginx-1.21.6.zip 上传到目标机器 /root 目录下并解压到 /usr/local/ 目录进入nginx目录
unzip -d /usr/local/ nginx-1.21.6.zip
cd /usr/local/nginx-1.21.6/2.编译安装nginx
./configure --prefix/home/nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module \
--with-openssl/usr/local/gmsslmake -j4 sudo make install3.创建nginx的软链接并验证nginx版本
ln -sv /home/nginx/sbin/nginx /usr/sbin
nginx -VNginx安装成功参考如下截图 至此GmSSL、国密Nginx安装完成
GmSSL安装路径/usr/local/gmsslNginx安装路径、配置文件路径/home/nginx
Nginx配置
nginx开机启动
1.配置 nginx 开机自启创建 /etc/systemd/system/nginx.service 的服务文件
sudo vim /etc/systemd/system/nginx.service#添加如下内容
[Unit]
DescriptionNginx HTTP Server
Afternetwork.target[Service]
Typeforking
ExecStart/home/nginx/sbin/nginx -c /home/nginx/conf/nginx.conf
ExecReload/home/nginx/sbin/nginx -s reload
ExecStop/home/nginx/sbin/nginx -s stop
PrivateTmptrue[Install]
WantedBymulti-user.target2.保存文件重新加载系统服务配置文件并设置开机启动Nginx服务
systemctl daemon-reload
systemctl start nginx
systemctl enable nginx 约定证书命名和存放路径
约定证书命名和存放路径如下 国密证书存放/usr/local/gmssl/ssl/gm/
签名证书命名域名_sign.crt、域名_sign.key加密证书命名域名_enc.crt、域名_enc.key
国际RSA证书存放/usr/local/gmssl/ssl/rsa/
RSA证书命名域名_rsa.crt、域名_rsa.key 上传签名证书、加密证书、RSA证书到指定目录
mkdir /usr/local/gmssl/ssl/gm
mkdir /usr/local/gmssl/ssl/rsa签发证书
可访问 https://www.gmcrt.cn/gmcrt/index.jsp 签发免费的国密测试证书进行测试
创建nginx配置文件
1.创建 conf.d 文件不创建的话需要直接修改 nginx.conf 文件让 nginx.conf 主配置文件支持读取以 conf 结尾的子配置文件
mkdir /home/nginx/conf/conf.d2.创建nginx配置文件
vi /home/nginx/conf/conf.d/test.conf#test.conf添加的配置如下
server{listen 443 ssl;server_name test.com;#国际RSA证书配置若不需要可单独删除此部分ssl_certificate /usr/local/gmssl/ssl/rsa/test_rsa.crt;ssl_certificate_key /usr/local/gmssl/ssl/rsa/test_rsa.key;#国密证书配置先配置签名证书再配置加密证书 ssl_certificate /usr/local/gmssl/ssl/gm/test_sign.crt;ssl_certificate_key /usr/local/gmssl/ssl/gm/test_sign.key; ssl_certificate /usr/local/gmssl/ssl/gm/test_enc.crt;ssl_certificate_key /usr/local/gmssl/ssl/gm/test_enc.key;ssl_session_cache shared:SSL:1m; #开启缓存 大小1Mssl_session_timeout 5m; # 指定客户端可以重用会话参数的时间超时之后不可使用ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECC-SM4-SM3:ECDHE-SM4-SM3:SM2-WITH-SMS4-SM3:ECDHE-SM2-WITH-SMS4-GCM-SM3:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;ssl_verify_client off;location / {root html;index index.html index.htm;}
}启动nginx
ginx -c /home/nginx/conf/nginx.conf
nginx -s reload #重新加载nginx配置访问测试
启动Nginx后进行访问测试