当前位置: 首页 > news >正文

学习DHCP动态主机配置协议

目录:                        dhcp 动态主机配置协议

                                      ftp文件传输协议


  dhcp 动态主机配置协议

服务器配置好了地址池 192.168.124.10 -192.168.124.20

客户端从地址池当中随机获取一个ip地址,ip地址会发生变化,使用服务端提供的ip地址,时间限制,重启之后也会更换。

dhcp优点:

1、降低了配置和部署的时间

2、降低了发生配置错误的可能性

3、ip地址可以进行集中化管理

4、提高了ip的利用率

服务端和客户端

服务端 :提供某种特定的服务

客户端 :使用这种特定的服务

c/s :client servers 客户端 服务端 应用程序之间通过端口进行通信,实现c/s

b/s : browser server 浏览器 服务端 页面

dhcp分配方式:

自动分配:自动分配然后永久使用(最常用)

动态分配:自动分配,但是有时间限制,重启之后,ip地址会被回收,给下一个客户机继续使用。

手动分配: 管理员用过dhcp给客户手动分配一个ip地址(不常用)

DHCP 的工作原理 
DHCP的交互过程总共有六个步骤组成,前四步是完成交互的主要过程。
重点:
第一步:客户端在网络中搜索服务端(通过发送一个dicover报文寻找DHCP的服务器),是通过广播的方式进行大量搜寻,
并且等待响应

第二步:服务器向客户端响应服务(其中是通过发送offer报文,以广播的方式进行响应,另外:华为的路由为单播方式)。

第三步:客户端向服务端发送服务请求(其中是通过发送request报文以广播的形式,
只给第一个响应自己的服务端发送服务请求)。
第四步:服务端向客户端提供确认可用的IP和租期信息(以广播形式,回复ACK报文)。

了解:
第五步:客户端进行重新登录,发送一个以包含之前DHCP服务端分配的IP地址信息的renew Request报文,
当服务端收到该请求后,会尝试让DHCP客户端继续使用该IP地址。并回答一个ACK报文。

第六步:DHCP获取到的IP地址都有一个租约,租约过期后,服务端将回收该IP地址,
所以如果客户端如果想继续使用该IP地址,则必须更新器租约。更新的方式就是,当当前租约期限过了一半后,
客户端都会发送renew报文来续约租期。


小实验:

test1 服务端 dhcp服务 192.168.233.10 192.168.233.100-192.168.233.110

test2 客户端 修改获取ip地址的方式。

dhcp服务端的端口是67

dhcp客户端的端口是68

第一步:先创建两个终端

打开工具栏里面的“发送键输入到所有会话”

在一个终端里面输入,另外一个终端也会同时写入命令

先关闭两个终端的防火墙及安全机制

我们对两个终端进行分配:

Test1作为服务端

Test2作为客户端

Test1既然作为服务端,我们就对其进行文件配置

先安装dhcp这个软件包

安装好软件包之后,我们对其进行配置文件

我们在这个里面对其进行文件配置

我们切换到dhcp-4.2.5里面去有一个文件名为dhcpd.conf.example

Yum安装的一些程序默认都在etc下面

这里也有一个conf文件,但这个文件里面是空的

所以我们要把dhcpd.conf.example复制到dhcp.conf里面来。

这个时候再打开看里面的内容就不一样了

注意在该所有的配置文件之前都要先进行备份,养成一个良好的习惯,这样即便是现有文件配置里面出现任何问题,都可以还原到一开始的文件配置,下面我们就对文件配置进行配置,注意我们这里的文件格式

相当于我人为的给他设置了一个还原点

然后我们在进入文件配置里面

然后我们通过mac地址来对主机分配一个固定的ip

然后我们保存退出

记住我们对文件配置完成之后一定要重新启动,否则是不生效的。

这时我们的服务端就配好了

接下来我们来配置客户端,客户端就比较简单了

进入test2这个终端里面输入

Vim /etc/sysconfig/network-scripts/ifcfg-ens33

把这里改成dhcp即可。然后wq!保存退出

到这里我们就不能远程操作了,我们回到虚拟机里面

我们打开两个终端窗口在其中一个里面重启网卡,在另外一个里面看获取过程中的日志

这时候我们的固定网址就配置好了。


  ftp文件传输协议

tp:file transfer protocol 文件传输协议 。 在网络上用于双向进行传输,也是一个应用程序

什么叫双向:我能传给你,你也能传给我

c/s 架构

不同的操作系统有不同的ftp的软件,使用的协议都是一样的。

FTP基于tcp协议,有两个端口

20 建立数据连接,传输数据

21 连接控制,传输ftp的控制命令

ftp也是有服务端和客户端,建立连接之后,双向进行的文件传输。

ftp 建立数据连接的模式:

主动模式:服务器主动向端口发起数据连接。

被动模式:服务器等待客户端发起连接。

一般常用的模式是被动模式,被动模式更容易穿越防火墙,默认就是被动模式。

第一步我们还是正常关闭防火墙和安装机制

我们安装ftp服务的软件包

然后我们改下他的配置文件

我们yum安装的所有软件都在etc下面

一般的配置文件都是以.conf为结尾

同样的我们先备份,这个和dhcp文件不一样,里面是有东西的

一定要养成这种习惯

之后我们进行文件配置

我们演示一下匿名用户登录的情况

我们把允许匿名用户上传/允许匿名用户创建目录这个给他取消注释

我们在下面一行加入一个允许匿名用户进行删除,重命名和覆盖等操作。

然后我们把这个服务重启一下(每次文件配置之后都要重启一下)

重启之后我们用windows来登录

这里我们不能切换

匿名用户默认的更目录:

/var/ftp/pub

上传是put 本地文件上传到服务器

下载 get 把服务器的文件下载到本地

先创建一个你好的文件,然后切换到windows里面

这时我们就看见有test.txt这个文件了

我们打开看一下

我们在从这个文件添加一些文字

匿名用户权限太高,存在安全隐患。

演示禁止匿名用户登录:

我们先创建一个用户,设置密码。

然后打开他的配置文件

把这个选项改成no,注意不要注释,注释掉默认还是yes

改完配置文件一定要重启。重要的话说三遍

登陆失败。

匿名用户不能登录了,我们来看看普通用户能不能登录

普通用户可以登录

不仅可以登录而且还可以切换目录。

普通用户随意且换目录也不行,只要是系统用户都禁锢在家目录。

我们在进入配置文件中更改文件

我们把这项注释掉。

我们把服务在重新启动(重要的事情说四遍)

这个时候就已经不能切换了,只能在家目录下。(是所有用户管理员也一样


黑名单和白名单:

黑名单:在名单上的不允许登录 允许所有,拒绝个别

白名单:只有在名单上的才允许登录 允许个别。拒绝所有

我们还是进入文件配置

这个就是黑名单,这时普通用户还能继续登录。我们把它添加到黑名单里面去。

这里不用重启,直接生效!  这是再看他的登录情况

直接登录不进去。

白名单也是进入文件配置里面改

把刚才设置黑名单的选项改成no即可

但是这里我们需要重启

现在我们这个普通用户就能登录了。其他用户不在我们这个名单上就登录不了。

白名单上面有个root,但是他不能登录

为什么root就不行呢?他明明在白名单上面。

这是他最后一道保险

我们进入这个里面看一下

这是白名单里面的黑名单:虽然他在白名单上面,但是只要在这个黑名单里面的你也无法登录。

白名单里面的黑名单优先级高于白名单。

相关文章:

  • 赶紧收藏!2024 年最常见 20道 Kafka面试题(五)
  • Pytorch实用教程:pytorch中 argmax(dim)用法详解
  • nginx优化和重写功能rewrite
  • vscode怎么拷贝插件到另一台电脑
  • 如何用结构化写好GPT的Prompt提示词
  • MySQL之创建高性能的索引(十一)
  • QT之动态加载树节点(QTreeWidget)
  • 《数字图像处理-OpenCV/Python》第15章:图像分割
  • IDEA 2023.3.6 下载、安装、激活与使用
  • 碳微球是新型碳材料 在高科技领域应用价值极高
  • Re0:从零开始的C++游戏开发【中】
  • 计网期末复习指南(六):应用层(DNS、FTP、URL、HTTP、SMTP、POP3)
  • Java学习19-List、set容器
  • 【云原生 | 60】Docker中通过docker-compose部署kafka集群
  • python-web应用程序-Django-From组件
  • 《剑指offer》分解让复杂问题更简单
  • Android系统模拟器绘制实现概述
  • css系列之关于字体的事
  •  D - 粉碎叛乱F - 其他起义
  • Java|序列化异常StreamCorruptedException的解决方法
  • JS题目及答案整理
  • Linux后台研发超实用命令总结
  • Sass Day-01
  • webpack+react项目初体验——记录我的webpack环境配置
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 前端面试题总结
  • 设计模式(12)迭代器模式(讲解+应用)
  • 算法之不定期更新(一)(2018-04-12)
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • gunicorn工作原理
  • hi-nginx-1.3.4编译安装
  • MyCAT水平分库
  • Prometheus VS InfluxDB
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • 昨天1024程序员节,我故意写了个死循环~
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​iOS安全加固方法及实现
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • #include到底该写在哪
  • (JS基础)String 类型
  • (ZT)一个美国文科博士的YardLife
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (一)WLAN定义和基本架构转
  • (一)面试需要掌握的技巧
  • (一)认识微服务
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • (转)h264中avc和flv数据的解析
  • ***原理与防范
  • .htaccess 强制https 单独排除某个目录
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .Net Core 生成管理员权限的应用程序
  • .net core使用EPPlus设置Excel的页眉和页脚
  • @property python知乎_Python3基础之:property