Linux FTP文件传输服务 | centos7与win10互传 | 配置优化 | 实操案列解析

➤FTP简介

FTP服务–用来传输文件协议
FTP是一种上传和下载用的软件。用户可以通过它把自己的PC机与运行FTP协议的服务器相连,访问服务器上的程序和信息。

➤FTP通信端口

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

➤FTP数据连接模式

FTP数据连接分为主动模式和被动模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接

➤FTP连接实操实验(一)

实验环境:虚拟机CentOS7、虚拟机Win10

1.安装软件

►YUM安装
yum -y install vsftpd
►本地无网络安装
mount /dev/sr0 /mnt
cd Packages
ls vsftpd*
rpm -ivh vsftpd-3.0.2-28.el7.x86_64.rpm

2.备份FTP配置文件

cd /etc/vsftpd/ #切换到/etc/vsftpd目录下,配置文件为/etc/vsftpd/vsftpd.conf
cp ./vsftpd.conf ./vsftpd.conf.bak #修改配置文件之前先备份,它没有模板
在这里插入图片描述

3.编辑FTP配置文件(设置匿名用户访问的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 #允许删除、重命名、覆盖等操作,需添加

在这里插入图片描述

4.为匿名访问ftp的根目录下的 pub子目录设置最大权限,以便匿名用户上传数据

chmod 777 /var/ftp/pub
在这里插入图片描述

5.开启ftp服务和关闭防火墙

systemctl start vsftpd #开启服务
systemctl stop firewalld #关闭防火墙
setenforce 0 #关闭系统安全机制

6.匿名访问测试

在虚拟机Windows10打开 开始 菜单,输入 cmd 命令打开命令提示符
ftp 192.168.100.100 #建立ftp连接
匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
在这里插入图片描述
ftp> pwd #匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls #查看当前目录
ftp> cd pub #切换到pub 目录
ftp> get 文件名 #下载文件到当前Windows本地目录
ftp> put 文件名 #上传文件到ftp目录
ftp> quit #退出

在这里插入图片描述
在这里插入图片描述

➤FTP连接实操实验(二)

设置本地用户验证访问ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)

1.编辑配置文件

vim /etc/vsftpd/vsftpd.conf #修改配置文件
local_enable=Yes #启用本地用户
anonymous_enable=NO #关闭匿名用户访问
write_enable=YES #开放服务器的写权限(若要上传,必须开启)
anon_umask=077 #可设置仅宿主用户拥有被上传的文件的权限(反掩码)
chroot_local_user=YES #将访问禁锢在用户的宿主目录中
allow_writeable_chroot=YES #允许被限制的用户主目录具有写权限
2.重启FTP服务
systemctl restart vsftpd #重启服务
3.访问测试
CentOS7取消匿名访问
在这里插入图片描述
创建zhangsan账户
在这里插入图片描述

测试虚拟机win10,ftp 192.168.100.100建立连接,用zhangsan账户登陆,可以访问任何一个目录
在这里插入图片描述
虚拟机CentOS7,配置文件再次更改添加限制用户权限和禁锢在宿主目录
在这里插入图片描述
测试虚拟机win10,ftp 192.168.100.100建立连接,用zhangsan账户登陆,发现无法访问宿主目录以外的任何目录
在这里插入图片描述
修改匿名用户、本地用户登录的默认根目录
anon_root=/var/www/html #anon_root 针对匿名用户
local_root=/var/www/html #local_root 针对系统用户

➤FTP连接实操实验(三)

设置黑白名单访问

1.编辑/etc/vsftp/user_list
末尾添加禁止登陆的账户名例如zhangsan
在这里插入图片描述

2.编辑vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES
// 开启白名单
userlist_deny=NO
// 不阻止白名单内用户登录
在这里插入图片描述
win10虚拟机 测试结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Dark_Tk/article/details/113872379