http与https,linux网络基础,与OSI七层模型的概念

Posted 别碰我的宏定义

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http与https,linux网络基础,与OSI七层模型的概念相关的知识,希望对你有一定的参考价值。

文章目录


前言

当你老板问你了解网络吗?以及让你简述http和https的时候希望对你有所帮助。
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、http和https

1.http和https的概念


所谓明文传输就是你写了一封信给你的女朋友小美,你把他交给邮差,然后你啥都没加,就把邮费和地址给邮差,让他给你送,那就再传输过程中可以被任何人获取查看,而加密传输就是你上了把锁,避免别人查看。

2.对称加密和非对称加密算法

非对称加密,大白话就是处于网络中每个人都有自己的公钥和私钥,而公钥只能用其相对的私钥解开。故你通信时,用对方的公钥加密发给它,他就可以用自己的私钥解密,通信的私密性就提高了,但是效率不是很高。
对称加密算法是规定一个你和他的公共密钥,然后就可以用两个人约定的密钥加密,用同一个钥匙解密(这种钥匙你和被通信的人各有一把)。

https采用的就是用非对称加密算法加上对称加密算法来提高安全性的,你需要访问网页,先下载数字证书,拿到密钥,这是由非对称加密完成的,就是它用你的公钥上锁,发给你,你再本地用你的私钥解密,拿到你们两的公共密钥,接下来通信时就用对称加密算法进行了。

3.http和https的应用场景

1.在传输信息的价值不大时可以使用http,因为它便宜而且相对于https而言较快,在传递信息的私密性较高和要求安全性较高时应该使用https。

4.https的优缺点

优点:安全性较高,认证用户和服务器,确保数据正确传输,达到正确的用户和服务器。
缺点:握手阶段时延较高,且在http握手阶段还需要进行ssl握手。因此握手时延增加,部署成本较高,一方面需要数字证书验证自身的安全性,还需要购买CA证书,另一方面由于Https还需要进行加解密运算,占用CPU资源较多,需要的服务器配置高,数目多。

5.http返回码

1.http协议的响应报文是由状态行和响应头部还有响应包构成的,其状态码大概如下(比较常用的几个)

1**:成功接收
2**:请求成功,接收理解
4**:客户端错误,请求有语法错误或者无法实现
5**:服务器错误,未能实现合法请求
100:继续,客户端继续其请求
200:成功,一般用于GET和POST
403:服务器收到服务,但拒绝服务
404:没有找到,请求资源不存在,或者输入了错误的URL
408:服务器等待客户的时间过长,超时。
414:请求的URL过长,服务器无法处理
417:服务器无法满足Expect的请求信息
500:服务器内部错误,无法完成请求

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、Linux 网络配置

1.Linux的网络设置具体参数

先来一张图,想联网这些参数必须对,还需要你的电脑是NAT连接模式,NAT那个在虚拟网络管理里。
cd /etc/sysconfig/network-scripts/ifcfg-eth0

1.BOOTPROTO 表示的是ip的分配方式,有四种方式,
NONE,static,dhcp,bootp.NONE:表示禁止DHCP,static表示静态分配,由程序员决定,dhcp表示由DHCP服务器为本机分配IP。bootp是DHCP的前身。如果需要设置静态IP,则需要将BOOTPROTO设置为static ,IPV4=192.168.0.231(例如你需要设置的静态IP时,就这样做,你需要的IP(192.168.0.231))。
2.DEVICE表示设备名,由于我的是eho,所以他就是DEVICE=eth0。
3.HWADDR简单点你可以认为就是你本机的MACADDR(网卡地址)。
4.ONBOOT表示是否开机自启网卡,一般设置为 ONBOOT=yes
5.TYPE表示代理类型,一般设置为Ethernet就行了。
6.NM_CONTROLLED=yes #network mamager的参数,实时生效,不需要重启
7.USERCTL表示非root用户不使用该网口

2.Linux的网络三种状态

桥接模式:虚拟机连接开发板,简单点就是将电脑作为桥梁吗,把虚拟机和开发板桥接在一起。
NAT:网络地址转化,需要在ping接外网时采用NAT模式,电脑就相当于一个DHCP服务器,给你分配一个IP,让你能有自己的地址来接通外网
仅主机模式:只需要虚拟机与网络之间有数据交换,不需要ping接外网或者连接外部设备。

3.Linux的网络设置联网

关于网络设置的相关
下载一个网络管理器:yum -y install NetworkManager来查看你的网络状况
当你不需要一个网卡时,你就把他down掉,使用nmcli connection down 网卡名
你需要重启时 ,需要用systemctl restart NetworkManager
你需要查看网卡信息时,需要用systemctl status NetworkManager
你需要关闭网卡时,需要用systemctl stop NetworkManager


当你在你的机子上安上你的NetworkManager时你的网络设置你自己就可以设置了。也算半个门内汉了。然后一边摸索,一边来学习总结。

三、OSI的七层模型与TCP/IP

1.TCP/IP与OSI模型的对应关系。


OSI七层模型的各个层次的作用以及主要的成员
物理层:定义建立和断开物理连接
数据链路层:主要有MAC和VLAN
数据链路层和物理层对应于TCP/IP的网络接口层
网络层:定义了逻辑地址寻址和不同网络间的路径选择。主要有ICMP,ARP,IP与TCP/IP的物理层相同
传输层:传输数据的端口协议。主要有TCP和UDP。与TCP/IP的相同
会话层,表示层和应用层对应于TCP/UP的应用层,主要有Http/https和DNS,DHCP等。
下一章会有socket和管道,以及TCP/IP的挥手和握手,以及数据在网络上的传输。希望大家关注,查看下期内容。

总结

提示:今天先写到这,我实在困得不行了。改日将OSI和TCP/IP在从头讲来。

以上是关于http与https,linux网络基础,与OSI七层模型的概念的主要内容,如果未能解决你的问题,请参考以下文章

HTTP与HTTPS要点详解

一文帮你理解 http 与 https

梳理Linux下OSI七层网络与TCP/IP五层网络架构

HTTP与HTTPS的区别

面试题:HTTP与HTTPS

OSI协议和TCP/IP协议笔记