当前位置:首页 > Web开发 > 正文

nginx用tar包安置做443加密网站

2024-03-31 Web开发

一:为什么做加密以及简介

超文本传输安适协议(HTTPS)是以安适为方针的HTTP通道,简单来说就是HTTP安适版。https由两个部分构成:HTTP+SSL/TLS,在http 根本上加上了一层加密信息模块,处事端和客户真个信息插损胡城市通过TLS进行加密,传输的数据都是加密后的数据

为了解决HTTP协议的这些缺陷,需要使用另一种协议:HTTPS。为了数据传输的安适性,HTTPS在http的根本上加了SSL协议,SSL依靠证 书验证身份,并为浏览器和处事器之间通信加密;

SSL证书是一种数字证书,使用Secure Socket Layer协议在浏览器和web处事器之间成立一条安适通道,从而实现数据信息在客户端和处事器之间的加密传输,保证双方通报信息的安适性,不成被第三方窃听,而且用户可以通过处事器证书验证所访谒网站是否真实可靠;

加密的HTTPS和HTTP的区别:超文本传输协议HTTP协议被用于在web浏览器和网站处事器之间通报信息,HTTP协议以明文方法发送内容,不供给任何方法的加密数据,如果打击者截取了web浏览器和网站处事器之间的传输报文,就可以直接读取此中信息,因此,http协议不适合传输一些敏感信息;

HTTPS加密,解密,验证完成过程如图所示:

首先客户端发送请求,处事端接受到请求之后并申请生成公私秘钥,同时将公钥证书发送给客户端,,客户端收到之后并通过TLS进行解析验证,如果证书没有问题就会在客户端生成一个加密随机值,将随机值发送给处事端,处事端接收到之后,用本身的私钥解密,从而得到这个随机值,然后 通过这个随机值对内容进行对称加密。处事端将用私钥加密后的信息发送给客户端,最后,客户端用之前生成的私钥来解密处事器端发过来的信息,获取解 密后的内容

技术图片

筹备nginx安置包

请参考https://www.cnblogs.com/zgqbky/p/11696965.html

封锁防火墙selinux

[[email protected] ~]# iptables -F && setenforce 0 && systemctl stop firewalld

1.安置依赖包

[[email protected] ~]# yum -y install gcc pcre-devel openssl-devel

2.解包

[[email protected] ~]# tar -xf nginx-1.12.2.tar.gz

[[email protected] ~]# cd nginx-1.12.2/

3.加载模块并编译安置

[[email protected] nginx-1.12.2]# ./configure  \
> --prefix=http://www.mamicode.com/usr/local/nginx \              #指定安置路径
> --user=nginx \                               #指定用户
> --group=nginx \                            #指定组
> --with-http_ssl_module                #开启SSL加密成果

[[email protected] nginx-1.12.2]# make    &&   make install               (如果没有安置make请自行安置)

4.打开nginx配置文件

[[email protected] nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf

将443加密模块解开注释行

server {
        listen       443 ssl;
        server_name  localhost;

        ssl_certificate      /root/3309085_cszc.top.pem;           
        ssl_certificate_key  /root/3309085_cszc.top.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_protocols SSLv2 SSLv3 TLSv1;
        ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }

}

技术图片

5.启动处事

[[email protected] ~]# /usr/local/nginx/sbin/nginx
nginx: [emerg] getpwnam("nginx") failed
这里呈现了一行报错(没有安置nginx用户导致的无法启动)

解决报错:

[[email protected] ~]# useradd -s /sbin/nologin -M nginx

[[email protected] ~]# id nginx

[[email protected] ~]# /usr/local/nginx/sbin/nginx

[[email protected] ~]# ss -tlunp | grep nginx

技术图片

6.测试

在浏览器上输入https://192.168.175.100/

技术图片

技术图片

技术图片

这样加密就做完了。

总结:。。。。。。。。。。。此处省略一万字

nginx用tar包安置做443加密网站

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31525.html