虚拟用户配置 所有虚拟用户将被统一映射为一指定的系统账号,访问的共享位置即为此系统帐号的家目录; 各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定;
虚拟用户帐号的存储方式 文件中:编辑文件 奇数行为用户名,偶数行为密码; 因为是明文存放的,所以此文件需编码为hash格式,因而修改文件极为麻烦;
关系型数据库的表中 即时查询数据库完成用户认证; 通常使用的数据库是mysql,由于vsftp的认证是基于pam进行的,所以需要pam能够连接mysql,依赖于pam_mysql模块(pam默认无此模块,需额外安装) # yuminstall pam_mysql
演示过程 1、准备2台虚拟机:a(172.16.249.230)和b(172.16.249.231),a安装mysql、mysql-server和mysql_devel,作为数据库使用;b安装vsftpd和pam_mysql,作为ftp服务器使用;
其他设置
目录消息设置 dirmessage_enable=YES 开启此项后,若ftp服务端某目录下有以“.message”结尾的文件,当客户端切换至此目录下时,服务端会显示该文件中的内容以提醒用户
日志设置 xferlog_enable=YES 开启此项后,用户在ftp客户端上传、下载、修改文件等操作将被记录于日志中 xferlog_std_format=YES 开启此项后,日志记录将使用标准格式 xferlog_file=/var/log/xferlog 指明日志文件的记录位置,即使不启用也默认记录在此文件中
上传文件属主设置 chown_uploads=YES chown_username=whoever 启用此项后,上传文件的属主将被统一修改为第二条命令设定的用户
时长设置 idle_session_timeout=600 空闲会话超时时长 data_connection_timeout=120 数据连接超时时长
传输格式设置 ascii_upload_enable=YES ascii_download_enable=YES 启用此项后,将强制使用ASCII格式上传和下载文件,若文件原格式为二进制,则会导致上传和下载的文件为乱码,所以不建议启用,除非确认自己要传输的文件格式本来就为ASCII
欢迎信息设置 ftpd_banner=Welcome to blah FTP service.
认证设置 pam_service_name=vsftpd vsftp基于pam进行认证,此项指明服务端根据/etc/pam.d/目录下的哪个文件进行认证 vim /etc/pam.d/vsftpd auth做认证,account检查用户帐号是否在有效期内,session指明前两项检查通过后会话是否予以建立 此项指明一旦用户名出现在文件/etc/vsftpd/ftpusers中,将被拒绝访问ftp服务
用户登录设置 userlist_enable=YES 开启此项后将启用用户登录控制列表, 列表文件默认为: /etc/vsftpd/user_file 此文件中的用户是否允许登录依赖于另一个文件: userlist_deny=YES|NO =YES表示不允许登录,此时列表为黑名单,凡是表内的都拒绝登录,凡是表外的都允许登录 =NO表示允许登录,此时列表为白名单,凡是表内的都允许登录,凡是表外的都拒绝登录
连接限制 max_clients:最大并发连接数; max_per_ip:每个IP可同时发起的最大并发请求数;
传输速率限制 anon_max_rate:匿名用户的最大传输速率,单位为“字节/秒”; local_max_rate:系统用户的最大传输速率,单位为“字节/秒”;
|