前言
DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。
FTP(文件传输协议)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。 FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。
DHCP
dhcp工作原理
dhcp是用于udp端口 67端口用于(服务端)68端口用于(客户端)
- 客户端在网络中搜索服务器
DHCP客户机向局域网中所有DHCP服务器发送DHCP discovery请求。来请求DHCP服务器分配一个IP地址。 - 服务端向客户端响应服务
局域网中所有DHCP服务器回复DHCP offer, 为客户机提供IP地址。 - 客户端向服务器发送服务请求
客户机选择第一台DHCP服务器回复的ip地址, 并且要发送DHCP request,通告给局域网中所有的DHCP服务器,它选择了哪个IP和哪个DHCP (发送DHCP request的原因有两层,第- -层是通告所有DHCP,让未被选中的服务器,把未使用的地址收回,第二层是通告给被选中的服务器,这个IP地址客户机要使用了) - 服务端向客户端提供服务
被选中的DHCP服务器收到DHCP request消息后,会给DHCP客户机回复一个DHCP ACK,告知客户端此ip地址可以被使用了,客户机将此IP与自己的MAC地址绑定,方便下次使用,而其他DHCP服务器将收回分配给该客户机的ip地址。
Linux中基本配置
linux dhcp配置:
systemctl stop firewalld @关闭防火墙
setenforce 0 @关闭核心防护
yum install -y dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
subnet(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.213.0 netmask 255.255.255.0 { @要分配的网段地址
range 192.168.213.5 192.168.213.7; @设置地址池
option routers 192.168.213.254; @指定默认网关地址
}
systemctl restart dhcpd @重启服务
vim /etc/sysconfig/network-s-scripts/ifcfg-ens33 @配置网卡设置
BOOTPROTO=dhcp @改为动态获取
systemctl restart network @重启网卡服务
客户端
vim /etc/sysconfig/network-s-scripts/ifcfg-ens33 @配置网卡设置
BOOTPROTO=dhcp @改为动态获取
DHCP配置文件配置
网卡配置文件配置
结果
- 配置服务端中指定客户端登陆IP地址
@host主机声明(给单机分配固定的 IP 地址)
host hostname { @指定需要分配固定 IP地址的客户机名称
hardware ethernet 00:0c:29:29:73:f6; @指定该主机的 MAC地址
fixed-address 192.168.213.213; @指定保留给该主机的 IP地址
}
FTP
ftp工作原理
ftp 文件传输协议
FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令
FTP数据连接分为主动模式和被动模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接
Linux中ftp基本配置
ftp配置
yum install -y vsftpd @安装vsftpd服务
cd /etc/vsftpd/ @切换到配置目录中
cp vsftpd.conf vsftpd.conf.bak @将配置文件备份
设置匿名用户访问的FTP服务(最大权限)
@修改配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES @开启匿名用户访问。默认已开启
write_enable=YES @开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022 @设置匿名用户所上传数据的权限掩码(反掩码)。
anon_upload_enable=YES @允许匿名用户上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES @允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable =YES @允许删除、重命名、覆盖等操作。需添加
chmod 777 /var/ftp/pub/ @给匿名访问ftp的根目录下的 pub子目录设置最大权限,以便匿名用户上传数据
systemctl start vsftpd @开启vsftpd服务
systemctl stop firewalld @关闭防火墙
setenforce 0 @关selinux
修改匿名用户、本地用户登录的默认根目录
anon_root=自定义目录 @anon_root 针对匿名用户
local_root=自定义目录 @local_root 针对系统用户
结果
使用user_list 用户列表文件
vim /etc/vsftpd/user_list
//末尾添加用户名称
vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES @启用user_list用户列表文件
userlist_deny=NO @设置白名单,仅允许user_list用户列表文件的用户访问。默认为YES,为黑名单,禁用
结束语:hdcp和ftp是网络中的协议,用于便捷自动化安装系统,传输文本。