CentOS7搭建vsftp服务器

转:https://blog.51cto.com/14156658/2410173?source=dra
搭建vsftp服务器首先要确保虚拟机的防火墙和seLinux防火墙都是关闭的


一、ftp文件传输服务
1.ftp连接的端口号
21:传输控制使用,进行身份验证授权访问
20:传输数据使用
2.ftp连接模式
主动模式:服务器端通过20号端口给客户端传输数据,POST指令表示主动连接,默认工作在主动模式
被动模式:服务器端开放指定范围的端口号等待客户端建立数据连接,pasv指令表示被动模式
3.ftp传输模式
文本 模式:文本模式不支持传输流媒体数据,支持文本文件
二进制模式:使用广泛支持传输文本文件流媒体数据
4.ftp身份验证的方式
匿名:使用ftp用户或者anonymous账户验证不需要密码
本地身份验证:需要使用账户密码进行身份验证后访问数据
虚拟账户验证:将多个用户映射到一个系统账户进行验证
二、简单配置基于系统用户的FTP服务
1.匿名访问FTP服务
1)虚拟机连接光盘,挂载系统光盘,安装服务器端和客户端

2)编辑ftp主配置文件,输入“vim /etc/vsftpd/vsftpd.conf” 命令,进去之后esc退出输入“:%g/^#/d”命令是删除以#开头的行

3)创建宿主目录,写入测试数据,给宿主目录权限,启动ftp服务器

4)测试匿名FTP服务器,开一台win7,配置一样的网卡和同网段静态IP地址,确保与ftp服务器的连通性,然后访问FTP

5)匿名常见的配置文件选项

anonymous_enable=YES:开启匿名访问FTP
anon_upload_enable=YES;是否允许匿名用户上传文件
anon_umask=022:上传数据目录文件权限反码,目录777,文件666
anon_root=/benet:设置匿名用户的FTP根目录,默认在var/ftp/pub
anon_mkdir_write_enable=YES:允许创建目录或者文件
anon_other_write_enable=YES:允许删除或者覆盖文件目录
2.配置基于用户验证的FTP服务
1)编辑ftp服务器主配置文件

2)创建身份验证ftp根目录,添加测试数据,设置根目录完全控制权限

3)客户端访问用户验证的ftp

用户验证ftp的常见选项
local_enable=YES:开启本地身份验证
local_umask=022:本地身份验证上传文件目录反码
local_root=/accp:本地身份验证ftp根目录
chroot_local_user=YES:固定ftp访问在用户的宿主目录
allow_writeable_chroot=YES:允许身份验证用户宿主目录写入数据
4)编辑user_list列表阻止tom登录

3.修改ftp服务器的监听和端口号安全设置
1)输入“vim /etc/vsftpd/vsftpd.conf”命令编辑

2)测试修改的监听端口号

4.全局配置文件选项
listen=NO: 是否以独立运行的方式监听服务
listen_address=IP地址:设置监听f t p服务的ip地址,默认监听所有IP地址
listen_port=21:设置监听ftp服务的端口号
write_enable=YES:开启写入权限
download_enable=YES:允许下载权限
dirmessage_enable=YES:用户切换进入目录时显示 “.message”文件(如果已存在)的内容
xferlog_enable=YES:启用xferlog日志,默认记录到 /var/log/xferlog
xferlog_std_format=YES:ftp日志格式
connect_from_port_20=YES:数据连接端口号默认20
pasv_enable=NO:禁止被动模式连接;默认允许被动模式连接
pasv_max_port=21600:起始端口号
pasv_min_port=21700:结束端口号
pam_service_name=vsftpd:开启PAM验证
userlist_enable=YES:允许user_list列表用户登录ftp
userlist_deny=YES:不允许user_list列表用户登录ftp
max_clients=0:限制多个客户端同时连接(0为无限制)
max_per_ip=0:允许相同IP地址访问ftp连接次数(0为无限制)
tcp_wrappers=YES:ftp的访问控制列表提升安全性使用
简单 配置了以下匿名ftp和用户身份验证ftp,下一篇配置虚拟用户ftp

原文地址:https://www.cnblogs.com/huangdashu/p/14303748.html