vsftp :very security file transfer protocol
ftp 功能
将使用者划分等级 user guest anonymous
命令记录和登录记录
限制使用者活动范围
两种工作模式
主动模式: client 向server 发送连接请求(默认21),服务器接受连接,建立控制通道,需要数据传输时,客户端在控制通道用PORT 命令告诉服务器:“我打开了xx端口,你过来连我”,服务器从20端口向客户端xx端口发送连接请求,建立数据传输通道
被动模式:client 向server发送连接请求(默认21),服务器接受连接,建立控制通道,需要数据传输时,服务器在控制通道用PASV命令告诉客户端:“我打开了xx端口,你过来连我”,客户端从yy端口向服务器xx端口发送连接请求,建立数据传输通道。
替代方案
ssh 提供的sftp 备用方案#sftp 192.168.18.251
相关文件
/etc/vsftpd/vsftpd.conf 主配置文件 参数=设定值
/etc/pam.d/vsftpd 验证文件
/etc/vsftpd/ftpusers 访问控制文件
/etc/vsftpd/user_list 是否生效取决于主配置文件中的两个参数userlist_enable userlist_deny
/etc/vsftpd/chroot_list 需要手动建立将使用者限制在家目录 若要生效需chroot_list_enadble chroot_list_file
/etc/sbin/vsftpd 启动文件
/var/ftp/ 匿名用户登录时的根目录
与服务器环境相关的设置
connet_from_port_20=YES/NO 控制服务器是否使用20端口进行数据传输
listen_port=21 命令通道的端口
dirmessage_enable=YES/NO 用户进入某个目录时,需要显示的该目录要注意的内容
message_file=message
listen=YES/NO 定义vsftp是否以独立的方式启动
pasv_enable=YES/NO 定义被动模式
use_localtime=YES/NO 定义本地时间
write_enalbe=YES/NO 定义上传
connect_timeout=60 主动模式数据传输连接超时时间
accept_timeout=60 PASV模式数据传输连接超时时间
data_connection_timeout=300 数据传输的超时时间
idle_session_timeout=30 空闲等待超时时间
max_clients=0 定义连线数
max_per_ip=0 定义同一ip的连接数
pasv_min_port=2046,pasv_max_port=2056 定义被动模式数据传输的最小端口和最大端口
ftpd_banner=fdafdafafafaf 定义登录时显示的说明
banner_file=/path/file 定义欢迎信息
跟真实用户的相关设置
跟真实用户的相关设置
guest_enable=YES/NO定义将真实帐号登录后映射成指定的用户名
guest_username=ftp指定访客身份
local_enable=YES/NO是否允许本地用户登录
local_max_rate=0定义真实用户的传输速度 byte/s
chroot_local_user=YES/NO是否将真实的活动范围限制在家目录
chroot_list_enable=YES/NO是否启用chroot列表功能
chroot_list_file=/etc/vsftpd/chroot_list指定用户列表文件
userlist_enable=YES/NO是否启用用户列表功能
userlist_deny=YES/NO设置用户是否可以登录YES:不能登录 NO:可以登录
userlist_file=/PATH/FILE指定存放用户名的文件
匿名用户相关设置
anonymous_enable=YES/NO是否允许匿名用户登录
anon_world_readable_only=YES/NO是否允许匿名用户下载
anon_other_write_enable=YES/NO是否允许匿名用户具有写以外的权限
anon_mkdir_write_enable=YES/NO匿名用户是否可以建立目录
anon_upload_enable=YES/NO是否允许上传
deny_email_enable=YES/NO是否通过邮件拒绝
banned_email_file=/path/file定义存放邮件内容的文件
no_anon_password=YES/NO匿名用户登录是否需要密码
anon_max_rate=0匿名用户传输速率
anon_umask=077匿名用户上传文件的权限
安全相关
ascii_download_enable=YES/NO下载时使用ASCII模式进行数据传输
ascii_upload_enable=YES/NO上传
one_process_model=YES/NO是否为每一个连接开启一个独立的进程,此模式消耗资源高,安全性差,性能好
tcp_wrappers=YES/NO是否支持tcp wrappers
xferlog_enable=YES/NO是否记录使用者上传下载信息
xferlog_file=/var/log/xferlog定义记录文件位置
dual_log_enable=YES,vsftpd_log_file=/var/log/vsftpd.log
nopriv_user=nobody定义启动者的身份
pam_service_name=vsftpd定义pam验证模块的名称
启动方式
vim /etc/vsftpd/vsftpd.conf
listen=NO
一
1 使用本地时间
use_localtime=YES
2 用户登录时显示欢迎信息
ftp_banner=... 定义登录时显示的说明
banner_file=/path/file 定义欢迎信息
3 系统帐号 uid<500 不能登录
4 真实用户可以上传,下载,建立目录,修改文件
write_enable=YES
5 用户建立的文件和目录权限分别为775 664
local_unmask=002
6 其它默认值