Linux 网络之DHCP FTP

196 阅读4分钟

一.DHCP

dhcp

DHCP( 动态主机配置协议 )是一个局域网的网络协议。. 指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给客户端的68号端口

用途

1.给内部网络或网络服务供应商自动分配IP地址 

2.给用户或者内部网络管理员作为对所有计算机作中央管理的手段

好处

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

配置DHCP服务

systemctl stop firewalld  #临时关闭防火墙

setenforce 0  #关闭selinux防火墙

1.安装dhcp (本地源自带DHCP安装包)

yum install -y dhcp 

2.将Linux虚拟机的网络模式改成仅主机模式。

修改网卡配置文件,之后重启网络服务

网卡配置文件(/etc/sysconfig/network-scripts/ifcfg-ens33

3.dhcp配置文件为 /etc/dhcp/dhcpd.conf

修改配置文件

systemctl start dhcpd  #开启服务

systemctl enable dhcpd  #设为开机自启

4.将Windows改成仅主机模式 ,然后进入网络适配器查看验证

为目标windows分配固定ip

修改配置文件

然后重启服务 systemctl restart dhcpd

Windows需要释放ip和重新获取ip

 ipconfig /release  #释放地址

ipconfig /renew   #重新获取地址

二.FTP

ftp

FTP(File Transfer Protocol)是一种文件传输协议,基于客户端/服务器架构,支持以下两种工作模式:

  • 主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口。
  • 被动模式:FTP服务器开启并发送端口信息给客户端,由客户端连接该端口,服务器被动接受连接。

FTP服务器默认使用TCP协议的20、21端口与客户端进行通信 20端口用于建立数据连接,并传输文件数据 21端口用于建立控制连接,并传输FTP控制命令

安装ftp

yum install -y vsftpd

配置文件在/etc/vsftpd下

复制配置文件,每次修改最好复制一下配置文件

修改配置文件

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 #允许删除、重命名、覆盖等操作。需添加

匿名用户访问的默认根目录为/var/ftp

创建文件M,并将文件权限设置为777

开启服务

检查端口是否开启

打开客户端(可以使windows也可以是linux)

get IP地址   进行连接

用户为默认用户:ftp

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

ftp> ls #查看当前目录 

ftp> cd pub #切换到pub 目录 

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

ftp> put 文件名 #上传文件到ftp目录 

ftp> quit #退出 

更改根目录

如果不想根目录为/var/ftp,可以更改根目录

anon_root=/var/www/html #anon_root 针对匿名用户 

local_root=/var/www/html #local_root 针对系统用户

设置本地用户访问

修改后匿名用户不可访问

修改配置文件

local_enable=Yes #启用本地用户 

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

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

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

chroot_local_user=YES  #将访问禁锢在用户的宿主目录中 

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

重启服务systemctl restart vsftpd

添加用户zhangsan并添加密码

再次用客户端登录,登录用户zhangsan

输入密码后成功登录

黑名单白名单

设置黑名单白名单可以使用user_list 用户列表文件

添加zhangsan

vim /etc/vsftpd/vsftpd.conf 

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

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