Java教程

FTP服务——用来传输文件的协议

本文主要是介绍FTP服务——用来传输文件的协议,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、FTP协议概念

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

  • 20端口用于建立数据连接,并传输文件数据
  • 21端口用于建立控制连接,并传输FTP控制命令

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

  • 主动模式:服务器主动发起数据连接
  • 被动模式:服务器被动等待数据连接

二、FTP配置格式

1、安装FTP

yum install -y vsftpd
cd /etc/vsftpd
cp vsftpd.conf vsftpd.conf.bak

2、设置匿名用户访问的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子目录设置最大权限,以便匿名用户上传数据
复制代码

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

systemctl start vsftpd            //开启FTP服务
systemctl stop firewalld         //关闭防火墙
setenforce 0

4、匿名访问测试(cmd)

复制代码
ftp 192.168.80.10    //建立ftp连接 
//匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
ftp> pwd                 //匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls                      //查看当前目录
ftp> cd pub             //切换到pub目录
ftp> get 文件名        //下载文件到当前windows本地目录
ftp> put 文件名        //上传文件到ftp目录
ftp> quit                 //退出
复制代码

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

复制代码
vim /etc/vsftpd/vsftpd.conf                 //修改配置文件
local 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://zhangsan@192.168.80.10
复制代码

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

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

7、用户列表设置,修改配置文件(黑名单、白名单设置)

复制代码
//使用user_list 用户列表文件
vim /etc/vsftpd/user_ list             //修改配置文件
zhangsan                                    //在末尾添加zhangsan用户
vim /etc/vsttpd/vsttpd.cont        //修改配置文件
userlist enable=YES                      //启用user_ list用户列表文件
userlist deny=NO                 #设置白名单,仅允许user_ list用户列表文件的用户访问。默认为YES,为黑名单,禁用      
复制代码
这篇关于FTP服务——用来传输文件的协议的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!