linux DHCP和VSFTP原理与配置

目录

一、DHCP工作原理

[1.1 了解DHCP服务](#1.1 了解DHCP服务)

[1.1.1 DHCP基本描述](#1.1.1 DHCP基本描述)

[1.1.2 使用DHCP的好处](#1.1.2 使用DHCP的好处)

[1.1.3 DHCP的分配方式](#1.1.3 DHCP的分配方式)

[1.2 DHCP的租约过程](#1.2 DHCP的租约过程)

[1.3 使用DHCP动态配置主机地址](#1.3 使用DHCP动态配置主机地址)

[1.4 安装DHCP服务器](#1.4 安装DHCP服务器)

二、DHCP服务器的配置

[2.1 实验环境准备](#2.1 实验环境准备)

[2.2 实验实战示列](#2.2 实验实战示列)

三、DHCP客户端的使用

[3.1 centos7客户端](#3.1 centos7客户端)

[3.2 windous客户端](#3.2 windous客户端)

四、VSFTP安装与配置

[4.1 vsftp 实验环境](#4.1 vsftp 实验环境)

[4.2 vsftp 的安装](#4.2 vsftp 的安装)

[4.3 vsftp 的配置](#4.3 vsftp 的配置)


一、DHCP工作原理

1.1 了解DHCP服务

1.1.1 DHCP基本描述

  • DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议)
  • 由Internet工作任务小组设计开发
  • 专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数协议

1.1.2 使用DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能
  • 避免ip地址冲突
  • 当更改ip地址段时,不需要重新配置每个用户的ip地址
  • 提高了ip地址的利用率
  • 方便客户端配置

1.1.3 DHCP的分配方式

  • 自动分配:分配到一个IP地址后永久使用
  • 手动分配:由DHCP服务器管路员专门指定IP地址
  • 动态分配:使用完后释放改IP,供其他客户机使用

1.2 DHCP的租约过程

  • 客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
  • 分为四个步骤
  • 客户机请求IP地址
    • 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机需要通过DHCP获取一个合法的地址
    • 此时DHCP客户机以广播的方式发送DHCP Discover发现信息来寻找DHCP服务器
  • 服务器响应
    • DHCP服务器接受来自客户机的请求IP地址信息室时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
    • 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP offer消息
  • 客户机选择IP地址
    • DHCP客户机从接受到的第一个DHCP Offer消息中提取IP地址,发出DHCP Request报文,发出IP地址的DHCP服务器将该地址保留,这样改地址就不能再分配给其他客户机
  • 服务器确定租约
    • DHCP服务器接受到DHCP Request消息后,以DHCP ACK消息形式向客户机广播成功确认,该消息包含IP地址的有效租约和其他可配置信息
    • 当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化
  • 重新登陆
    • DHCP客户机每次重新登陆网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request 请求信息
  • 更新租约
    • 当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
    • 客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约

1.3 使用DHCP动态配置主机地址

  • DHCP服务
    • 为大量客户机自动分配地址,提供集中管理
    • 减轻管理和维护成本、提高网络配置效率
  • 可分配的地址信息主要包括
    • 网卡的IP地址、子网掩码
    • 对应的网络地址、广播地址
    • 默认网关地址
    • DNS服务器地址

1.4 安装DHCP服务器

  • CentOS光盘中的 dhcp-4.2.5-47.el7.centos.x86 64.rpm
  • DHCP软件包的主要文件
    • 主配置文件:/etc/dhcpd.conf
    • 执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay

二、DHCP服务器的配置

2.1 实验环境准备

实验环境:

3台机器

centos 7-1 DHCP 服务端 192.168.182.10 (为了实验方便,将此IP定义为该网段的网关)

centos 7-2 DHCP 客户端 自动分配

windows 10 DHCP 客户端 自动分配

网络环境:

① Vmnet2(仅主机模式)

② vmware workstation 的虚拟网络编辑器中的DHCP功能必须关闭

③ 确定好Vmnet2 仅主机模式的IP地址段是多少

④ 注意 DHCP服务端的网卡信息的配置(GATEWAY 不要写)

系统环境:

① 先安装好DHCP服务,再行修改网络配置(nat-》Vmnet2)

② 或者,修改完网络配置后,配置本地YUM仓库,再行安装DHCP

③ 每台机器,关闭防火墙、核心防护

2.2 实验实战示列

  • 修改dhcp服务端网卡配置 固定ip
  • vim /etc/sysconfig/network-scripts/ifcfg-ens33
  • yum install -y dhcp 安装dhcp服务
  • 找到dhcp配置文件位置
  • cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 复制文件到优化路径中 进入新路径后可以复制一下源文件做个备份

  • vim /etc/dhcp/dhcpd.conf 编辑此配置文件

    subnet 192.168.182.0 netmask 255.255.255.0 { #设置地址池网段
    range 192.168.182.20 192.168.182.40; #设置地址池范围
    option routers 192.168.182.10; #dhcp网关
    }

  • 重启网卡,启用DHCP服务

    • systemctl restart network
    • systemctl restart dhcpd
    • systemctl status dhcpd

至此dhcp服务端已经配置完成 等待客户端获取ip地址后可查看租约期限

  • 查看租约
    • less /var/lib/dhcpd/dhcpd.lease

三、DHCP客户端的使用

3.1 centos7客户端

  • 配置网卡启动文件为dhcp
  • 重启网卡
  • 查看ip地址

配置已生效 ip地址为服务端设置的地址池范围内

3.2 windous客户端

  • 网络配置 IPv4自动获取
  • 查看ip地址

IP地址范围正常 配置生效

四、VSFTP安装与配置

4.1 vsftp 实验环境

  • vsftp 实验环境与dhcp一致即可

4.2 vsftp 的安装

rpm -qc vsftpd //检查vsftpd安装包是否存在,存在即不需要安装

yum install -y vsftpd //yum 安装vsftpd

4.3 vsftp 的配置

  • 切换到安装好vsftpd目录下查看文件
  • 保险起见可以将配置文件先备份一份

cp vsftpd.conf vsftpd.conf.bak

  • 编辑配置文件

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES            #开启匿名用户访问。默认已开启
local_enable=YES                #允许系统用户进行访问(useradd zhangsan)
write_enable=YES                #开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码)。

让匿名用户拥有访问本机和各种权限 
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码)。
anon_upload_enable=YES          #允许匿名用户上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES     #允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable=YES     #允许删除、重命名、覆盖等操作。需添加
  • 重启vsftpd服务,关闭安全防护

systemctl restart vsftpd

systemctl stop firewalld

setenforce 0

chmod 777 /var/ftp/pub/ #这是匿名用户的默认根目录

  • 匿名访问测试
    • 在Windows系统打开开始菜单,输入cmd 命令打开命令提示符
    • #建立ftp连接

ftp 192.168.233.21

#匿名访问,用户名为ftp,密码为空,直接回车即可完成登录

ftp> pwd #匿名访问ftp的根目录为Linux系统的/var/ftp/目录

ftp> ls #查看当前目录

ftp> cd pub #切换到pub目录ftp> get文件名 #下载文件到当前Windows本地目录

ftp> cd pub

250 Directory successfully changed.

ftp> ls

ftp> get test.txt #获取目录中的文件下载到电脑

ftp> ls

ftp> put test4.txt

  • 存在的缺点:匿名用户权限过高,存在安全隐患
    • 设置本地用户验证访问ftp
      设置本地用户可以访问ftp,禁止匿名用户登录

useradd zhangsan

echo '123' | passwd --stdin zhangsan

local_enable=Yes #启用本地用户

anonymous_enable=NO #关闭匿名用户访问

write_enable=YES #开放服务器的写权限(若要上传,必须开启)

local_umask=077 #可设置仅宿主用户拥有被上传的文件的权限(反掩码)

  • 对本地用户访问切换目录进行限制
  • 添加、切换目录的限制配置

chroot_local_user=YES #将访问禁锢在用户的宿主目录中 取消注释即可

allow_writeable_chroot=YES #允许被限制的用户主目录具有写权限

  • 黑名单和白名单的使用
    • 在安装vsftpd服务后,官方贴心的为我们在服务目录中提供了user_list
      (其中就是为了我们更好利用黑名单和白名单的手册)。
    • 黑名单:在黑名单上标记的用户,是我们禁止访问的对象
    • 白名单:在白名单上标记的用户是我们允许访问的对象,白名单比黑名单的制定更为严格和安全

黑名单

userlist_enable=YES #启用user_list用户列表文件

userlist_deny=YES #默认为YES,为黑名单,禁止user_list名单上的用户进行访问

白名单

userlist_enable=YES #启用user_list用户列表文件

userlist_deny=NO #设置白名单,仅允许user_list用户列表文件的用户访问。

要想使用root用户,需要把ftpusers里面的root用户注销掉即可

  • user_list 中添加zhangsan进黑名单

客户端被限制访问

总结

本章中要熟悉掌握DHCP中一共几个报文 每个报文是什么 其中的内容又是什么

在实验过程中特别是vsftp每一步修改配置文件都要重启下服务才能生效

相关推荐
StudyHappiness8 分钟前
MongoDB新版本,单节点安装
linux·运维·mongodb·kylin
车载诊断技术9 分钟前
电子电气架构--- 实施基于以太网的安全车载网络
网络·人工智能·安全·架构·汽车·电子电器架构
运维佬1 小时前
在 Linux 系统上部署 Apache Solr
linux·apache·solr
编程墨客1 小时前
第03章 文件编程
linux·运维·服务器
命里有定数1 小时前
windows工具 -- 使用rustdesk和云服务器自建远程桌面服务, 手机, PC, Mac, Linux远程桌面 (简洁明了)
linux·运维·服务器·windows·ubuntu·远程工作
cleveryuoyuo1 小时前
进程的程序替换exec*函数和shell实现
linux·服务器
微凉的衣柜1 小时前
使用 VS Code 远程连接时解决 OpenSSL 版本不匹配及权限问题
服务器·vscode·ubuntu
hope_wisdom1 小时前
C++网络编程之SSL/TLS加密通信
网络·c++·ssl·tls·加密通信
爱编程的小金毛球球1 小时前
-bash: /home/xxx/anaconda3/bin/conda: No such file or directory
linux·conda·bash
hgdlip2 小时前
家里电脑ip地址怎么设置?详细指导
网络·tcp/ip·智能路由器·家里电脑