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

DHCP和FTP

一、DHCP

1.概述

DHCP:动态主机配置协议,应用在大型的局域网环境中。

服务端: 提供ip地址 某种特定功能的提供者

客户端: 请求ip地址 请求对应功能的使用者

DHCP的作用:集中地址管理(地址池,可用ip地址的范围),自动分配客户端的ip地址,gateway(网关),dns服务信息等等。

客户端的端口:68       服务端的端口:67

DHCP的优点:

  • 降低配置和部署设备的时间
  • 降低了配置发生错误的可能
  • 集中化管理ip地址的分配
  • 提高了ip地址的利用率

 2.DHCP的工作原理

  • 客户端初始化时,向整个网络中发送广播(discover报文)
  • 服务端向客户端响应,发送offer报文(华为的设备是单播,其他的都是广播方式)
  • 客户端向服务端发送服务请求(request报文的形式),请求报文只会发给第一个响应自己的服务端
  • 服务端收到客户端的请求,从地址池中选择一个未被占用的ip地址以及租期信息,发送给客户端,发送ack报文(确认响应)。                                                                                                       租期信息:默认情况下,服务端提供的ip地址使用期限是7200秒,到期之后要重新向客户端请求新的ip地址(ip地址可能发生变化)。
  • 客户端收到服务端发送的ack报文之后,使用服务端提供的ip地址等服务。

客户端下线

客户端进行重新登录,发送一个包含之前dhcp服务端分配的ip信息的renew request的报文;服务端收到请求之后,尝试让客户端继续使用该地址,如果地址不可用才会分配一个新的,回复客户端ack报文

租约到期

租约到期之后,服务端会把ip地址收回,客户端如果想要继续使用该ip地址,必须要更新租约。更新的方式:租约的时间的一半,客户端发送renew报文来续约租期。服务端收到请求之后,尝试让客户端继续使用该地址,如果地址不可用,租期到期之后才会分配一个新的,回复客户端ack报文

实验

  • 实现ubuntu和centos的dhcp的地址分配

服务端 ubuntu1 192.168.206.20

客户端 ubuntu2 192.168.206.30

客户端的操作:

apt  -y  install  isc-dhcp-server  #安装依赖环境

cd /etc/dhcp

cp dhcpd.conf dhcpd.conf.bak.2024.11.12 #改配置文件前先备份,方便修改

vim  dhcpd.conf

subnet 192.168.206.0 netmask 255.255.255.0 {

        range 192.168.206.60 192.168.206.65;    #60 61 62 62 63 64 65
        option routers 192.168.206.2;   #网关

}

systemctl   restart   isc-dhcp-server

另开一个ubuntu1的终端, 用tail -f /var/log/syslog 看dhcp工作过程

服务端的操作:

vim /etc/netplan/01-network-manager-all.yaml

修改 dhcp4: true

把ipaddress注释掉

dhclient    -r

dhclient      #刷新客户端

centos的操作和ubuntu差不多,但是它的/etc/dhcpd.conf没有内容,真正的内容在 /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example

cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

添加的内容同上

systemctl stop firewalld

setenforce 0

systemctl restart network

  •  mac地址绑定固定ip地址

host hostname {

hardware ether  00:0c:29:ba:77:1e;   #设备的mac地址

fixed-address 192.168.206.100;     #提供给目标mac地址的ip地址

}

 二、FTP

 1.概述

ftp: file transfer protocal 文件传输协议。网络上控制文件的双向传输,虽然说市面有很多类似ftp的工具,但是协议都是基于ftp的协议。

端口号   20 建立数据连接,并传输文件数据;21 建立连接控制,传输ftp的控制命令

ftp数据连接的方式:

  • 主动模式:服务端对客户端主动发起数据连接(一般不用)
  • 被动模式:客户端对服务端发起连接(主要模式)

SFTP 加密的文件传输协议

2.vsftp

以ubuntu为例

apt   -y  install  vsftpd

vim    /etc/vsftpd.conf

修改的内容为

listen=yes

#listen_ipv6=yes

local_enable=YES

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

chmod 777 -R /srv/ftp   #修改匿名用户的默认家目录的权限

systemctl restart vsftpd

 3.黑白名单

黑名单:在这个名单上的用户才会拒绝连接 允许所有,拒绝个别

白名单:只有这个名单上的用户才可以连接 拒绝所有,允许个别

vim /etc/vsftpd.conf

chroot_local_user=YES    #访问用户只能在用户的家目录,禁止切换
allow_writeable_chroot=yes   #让用户在用户的主目录拥有写权限
userlist_file=/etc/vsftpd.userlist   #设定用户名单的文件
userlist_deny=yes     #拒绝这个用户列表上的用户,开启的是黑名单
userlist_enable=yes   #开启用户列表的使用

vim /etc/vsftpd.userlist

zhang    #此时黑名单上的zhang不被允许登录

 反之:

userlist_deny=no     #开启的是白名单

此时名单上的zhang允许登录

 

即使把root添加到白名单的userlist中,root仍然不可以登录

vim /etc/ftpusers    #黑名单的黑名单,禁止root和权限高的登录

把root注释掉

#不需要重启,即刻生效

 


http://www.mrgr.cn/news/71889.html

相关文章:

  • Go语言中的条件变量:sync.NewCond
  • YOLOv7-0.1部分代码阅读笔记-test.py
  • “漫步北京”小程序及“气象景观数字化服务平台”上线啦
  • go语言闭包捕获的是变量的引用而不是变量的值
  • springboot嗨玩旅游网站
  • 多线程并发造成的数据重复问题解决方案参考(笔记记录)
  • AutoDL使用简记
  • [Codesys]常用功能块应用分享-BMOV功能块功能介绍及其使用实例说明
  • PCL 点云分割 基于CPC算法的分割
  • YOLO11 旋转目标检测 | OBB定向检测 | ONNX模型推理 | 旋转NMS
  • 程序代码设计模式之模板方法模式(1)
  • 利用服务工作线程serviceWorker缓存静态文件css,html,js,图片等的方法,以及更新和删除及版本控制
  • 力扣 LeetCode 59. 螺旋矩阵II(Day1:数组)
  • AlphaFold3中文安装教程
  • Nous Chat:AI 领域的又一惊艳之作,未来潜力不可忽视
  • 【Python Tips】Python内置函数isinstance——检测数据类型:处理多种类型的输入参数(对比type)
  • C/C++ 模板与so
  • 十六、多版本并发控制
  • 【大数据测试HBase数据库 — 详细教程(含实例与监控调优)】
  • 速盾:CDN和OBS能共用流量包吗?
  • 解决MySQL中整型字段条件判断禁用不生效的问题
  • excel常用技能
  • 电商系统表的1-n如何设计?情景分析
  • 基于Multisim温度计温度测量检测测量系统电路(含仿真和报告)
  • 【AI日记】24.11.12 东京贫困女子读后感 | 未来学习工作时间分配
  • Python模块练习2(dict)