FTP服务--用于文件传输的协议

FTP服务–用于文件传输的协议

FTP使用的端口号

FTP服务器默认使用TCP协议的20、21端口与客户端进行通信

端口:ftp默认使用TCP协议的20、21号端口用于客户端通信

20端口用于建立数据连接,并传输文件数据

21端口用于建立控制连接,并传输FTP控制命令

FTP数据连接模式

FTP数据连接分为主动模式和被动模式

**主动模式:**服务器主动发起数据连接

**被动模式:**服务器被动等待数据连接(使用居多)

相关部署

FTP部署

安装FTP服务

yum install -y vsftpd            #yum一键安装
cd /etc/vsftpd/                  #切换到ftp配置目录下
cp vsftpd.conf  vsftpd.conf.bak
或  cp vsftpd.conf{,.bak}        #进行原配置文件的备份

1.设置匿名用户访问的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     ##允许删除、重命名、覆盖等操作。需添加

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

chmod 777 /var/ftp/pub

3.开启服务,关闭防火墙和增强型安全功能

systemctl start vsftpd    ##开启服务
systemctl stop firewalld  ##关闭防火墙
setenforce 0              ##关闭系统高级防护

4.匿名访问测试

win10中打开cmd命令提示符

ftp 192.168.184.50     #建立ftp连接
ftp> pwd			   #匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls				   #查看当前目录
ftp> cd pub		       #切换到pub 目录
ftp> get 文件名		   #下载文件到当前Windows本地目录
ftp> put 文件名		   #上传文件到ftp目录
ftp> quit			   #退出

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

修改配置文件

vim /etc/vsftpd/vsftpd.conflocal_enable=Yes    ##启用本地用户
anonymous_enable=NO                            ##关闭匿名用户访问
write_enable=YES                               ##开放服务器的写权限(若要上传,必须开启)
local_umask=077                                ##可设置仅宿主用户拥有被上传的文件的权限(反掩码)
chroot_local_user=YES                          ##将访问禁锢在用户的宿主目录中
allow_writeable_chroot=YES                     ##允许被限制的用户主目录具有写权限

重启服务
systemctl restart vsftpd
ftp 192.168.80.10
或
ftp:/lzhangsan@192.168.80.10

修改匿名用户、本地用户登录的默认根目录

anon root=/var/www/html
#anon root针对匿名用户
local _root=/var/ www/ html
#local root针对系统用户

黑名单白名单设置

使用user_list用户列表文件vim /etc/vsftpd/user_list//末尾添加zhangsan用户zhangsan
vim /etc/vsftpd/vsftpd.confuserlist_enable=YES
#启用user_list用户列表文件
userlist_deny=NO
#设置白名单,仅允许user_list用户列表文件的用户访问。默认为YES,为黑名单,禁用

模拟实验(FTP服务器的上传和下载)

1、安装FTP并进行配置文件的备份

yum -y install vsftpd ##安装ftp

2.开启ftp服务,关闭防火墙

3.测试连接

4.上传文档

5.下载文档

本地用户登录FTP,限制切换到宿主目录以外目录,并赋予写的权限

1.更改权限

2.测试本地用户登录

3、更改配置

4.重启服务

5.测试是否可以切换目录

6.测试宿主目录是否

经验分享 程序员 微信小程序 职场和发展