HTTPS工作过程,国家为什么让http为什么要换成https,Tomcat在MAC M1电脑如何安装,Tomcat的详细介绍zsh: permission denied
目录
引言
在密码中一般是:明文+密钥->密文(加密) ,密文+密钥->明文(解密)
那么为什么大家放弃了原有的http换为https呢?
这我们就要先介绍一下HTTP的工作过程
一、HTTPS工作过程
每个客户端,都有自己的对称密钥(不同客户端端密钥也不同),如果客户端生成了密钥就要把密钥传给服务器。
那么应该怎么处理这种易被盗取的问题呢?
首先服务器生成一对公钥和私钥,私钥留给自己,公钥发给客户端,客户端通过公钥(来去加密)决定密钥也就是那个6666。
这样黑客最多能拿到公钥但是无法拿到私钥,(私钥是来破解公钥的,也就是说给决定密钥套了个盾,只有私钥能打开这个盾,其余人就算知道这个盾咋套的,但是却打不开这个盾)
当然,这个也会有漏洞,也就是会出现中间人攻击的问题
黑客既然知道你的决定密钥,那也就是说明,可以让你这个东西重新变回pub1加密后的情况,然后你们继续传输,我知道你们的所有内容。
面对这种情况——进行的变动是,使用第三方机构对当前的公钥进行认证,
公证机构还会用自己的私钥(不是服务器的私钥)针对上述校验和进行加密~别人就无法生成这个校验和
问题1.如果黑客把证书的数据篡改了,能否对数字签名进行替换呢?
无法替换,因为数字签名,是先计算校验和,再使用认证机构的私钥进行加密,但是黑客并不知道认证机构的私钥是什么!所以无法重新对校验包装成数字签名的过程。
问题2.黑客是否可自己也去第三方机构,申请一个证书替换呢?
黑客可以这么做,但是没用,证书中还有域名,黑客证书不能和网站域名相同,这是审核不过去的(网站的,这个时候一般会提示你这个网站有风险,我们上网路上的奇奇怪怪的网站? ? ? )
二、Tomcat
Tomcat:HTTP服务器(webapp容器,网站(放前后端代码的地方)
⚠️用java编写的想要允信TOMCAT的前提下,你的电脑必须也有jdk-内容就可以实现跨平台了
可以部署多个网站,我们讲一下下载过程,BING直接搜索TOMCAT,一只巨丑的猫,看他左边,我们一般是下载的大版本是8,我们下载的一般是zip
下载完tomcat操作完事,会有下面这个页面,就算你是windows也是这些东西,就是我们显示不同而已。
这里面bin是binary二进制,一般是可执行程序,看下图
startup.bat后缀,windows批处理脚本,在windows运行这个软件就能启动tomcat
将下面两句拷贝到终端内内:
export TOMCAT_HOME=/usr/local/apache-tomcat-9.0.44 export PATH=$PATH:$TOMCAT_HOME/bin
在访达中找到下载好的Tomcat文件夹(这个要求按顺序)
打开终端使用这个命令
cd apache-tomcat-10.0.20
进入bin目录
cd bin
开启启动tomcat
./startup.sh
假如说要关闭,就把startup的名字更改一下就好了。
上面的按不按顺序无所谓,因为我也不是看教程一帆风顺完成的,过程中假如出现以下问题——看下面
这个意思是:用户权限不够
zsh: permission denied
解决方法:
chmod u+x *.sh
chmod是权限管理命令change the permissions mode of a file的缩写。
u代表所有者。x代表执行权限。’+’ 表示增加权限。
chmod u+x file.sh 就表示对当前目录下的file.sh文件的所有者增加可执行权限。一切完事之后,会出现
TOMCAT start
这个时候,你在网页中搜索localhost8080
TOMCAT的各部分含义:
conf:配置,放了tomcat的配置文件
内部,最主要配置文件,server.xml->使用xml的格式,很多的程序都有配置文件,通过配置文件选择/设置某个功能
mysql->my.ini ini是使用二进制的键值对,经典配置文件格式
logs:tomcat的日志文件
catalina:应用程序打印日志
localhost:记录了请求响应
webapps 这个目录中网站的,一个tomcat上可有多个网站,可把网站代码写好,打包放这个目录,就可加载这个网站。
点开后,假如有闪退的现象,就是tomcat没找到gbk路径,可以吧startup放到cmd执行,这样就不会闪退了。
什么叫环境变量:操作系统维护的一种变量,往往是多个进程相互配合,有一些数据交互,就可用环境变量(可认为进程之间通信的手段)