linux中级wed服务器(https搭建加密服务器)

一。非对称加密算法:

公钥:公共密钥,开放

私钥:私有密钥,保密

1.发送方用自己的公钥加密,接受方用发送方的私钥解密:不可行

2.发送方用接受方的公钥加密,接受方用自己的私钥解密:私密性

3.发送方用自己的私钥加密,接受方用发送方的公钥解密:身份验证,不可抵赖

4.发送方用接受方的私钥加密,接受方用自己的公钥解密:不可行

二。nginx的模块准备

1.nginx -V:查看是否由以下模块,否则需要下载,mod_ssl:yum install mod_ssl

2.配置文件:

证书文件:/...../xxx.crt(证书存放的是公钥)

私钥文件:/...../xxx.key(存放私钥)

实验一:搭建nginx+ss的加密认证wed服务器

1.setenforce 0(关闭SElinux)

2.systemctl stop firewalld(防火墙)

3.systemctl disable firewalld

4.yum install nginx mod_ssl -y

5.systemctl start nginx

6.systemctl enable nginx(开机启动)

7.mkdir -p /www/new_file(创建网站文件夹)

8.openssl genrsa -aes128 2048 > /etc/nginx/zy.key (在etc/nginx目录下制作证书所用的私钥文件zy.key,再输入密码123456)

9.openssl req -utf8 -new -key ++/etc/nginx/zy.key++ -x509 -days 365 -out /etc/nginx/zy.crt(制作证书)

需要输入:++国家代码,省份,城市,公司,部门,主机名,管理员邮箱++

注释:通过openssl制作一个证书,设置字符集,制作公钥对应的私钥,用-x509来制作,有效期限为365天,证书输出的内容以zy.crt进行保存

  1. cp zy.key zy.key.ory(备份私钥源文件,防止破坏原来的私钥)

11.openssl rsa -in zy.key.ory -out zy.key(在加载SSL支持的nginx并使用上述私钥时,除去必要的口令)

12.vim /etc/nginx/nginx.conf(进行配置文件:端口号,ip,网址文件,证书地址,私钥地址)

注释:++在80端口下设置return,则无论是输入http还是https协议,都会最终跳转到https的端口下进行加密打开++

13.systemctl restart nginx(重启服务)

14测试:https://192.168.1.150

对于https:端口,ip地址,要打开的网址,证书,密钥

对于http:端口,ip地址,return

实验二:组建多个子目录网站www.newfiles.com该网站有2个子目录www.newfiles.com/file和www.newfiles.com/ftp:要求

file数据使用http读取

ftp数据使用https读取

1.setenforce 0(关闭SElinux)

2.systemctl stop firewalld(防火墙)

3.systemctl disable firewalld

4.yum install nginx mod_ssl -y(下载模块)

5.systemctl start nginx

6.systemctl enable nginx(开机启动)

7.mkdir -p /www/file mkdir -p /www/ftp

8.echo "file" > /www/file/index.html(file文件内写入内容)

9.echo "ftp" > /www/ftp/index.html(ftp文件内写入内容)

制作http访问过程

1.vim /etc/hosts(添加ip,进行域名映射)

2.C:\Windows\System32\drivers\etc(修改window内的内容)

3.vim /etc/nginx/nginx.con(编辑主配置文件)

注释:设置域名为www.newfiles.com,alias绝对路径网站根目录,index默认首页文件(当访问网址时候,且为file文件时候,指定指定目录,并打开此目录的内容)

4.systemctl restart nginx(重启nginx)

5.curl www.newfiles.com/file(进行测试)

制作https访问过程:

1.openssl genrsa -aes128 2048 > /etc/nginx/ftp.key(制作私钥文件)

2.openssl req -utf8 -new -key /etc/nginx/ftp.key -x509 -day 365 -out /etc/nginx/ftp.crt(制作证书)

3.cp ftp.key ftp.key.org(进行私钥的拷贝)

4.openssl rsa -in ftp.key.org -out ftp.key(去除必要口令)

5.vim /etc/nginx/nginx.conf(进行编辑著配置文件)

6.systemctl restart nginx(重启nginx)

7.进行测试:

输入:www.newfiles.com/file

输入:https://www.newfiles.com/ftp

相关推荐
Asuncion0073 分钟前
Docker核心揭秘:轻量级虚拟化的革命
服务器·开发语言·docker·云原生
焱焱枫30 分钟前
Linux疑难杂症诊断利器:深入解析 fuser 命令
linux·运维·服务器
Andya_net41 分钟前
Java | 基于redis实现分布式批量设置各个数据中心的服务器配置方案设计和代码实践
java·服务器·分布式
博语小屋1 小时前
Linux进程信号(壹)_产生信号
linux·运维·服务器
元亓亓亓1 小时前
考研408--计算机网络--day1-概念&组成功能&三种交换技术&分类
服务器·计算机网络·考研
轻松Ai享生活1 小时前
【Linux】VFS 虚拟文件系统 详解
linux
LCG元1 小时前
Linux环境Python生态速建指南:包管理+虚拟隔离+深度调优
linux
大白的编程日记.1 小时前
【Linux学习笔记】线程同步与互斥之生产者消费者模型
linux·笔记·学习
Knight_AL1 小时前
Spring Boot 中使用自定义注解和 AOP 实现微服务日志记录(包含 URL、状态码和耗时信息)
linux·spring boot·微服务
养海绵宝宝的小蜗1 小时前
Linux 例行性工作任务(定时任务)知识点总结
linux·运维·服务器