FTP有三种方式:匿名用户、本地用户和虚拟用户。
匿名用户:在登录FTP时使用默认的用户名,一般是ftp或anonymous。
本地用户:使用系统用户登录,用户和密码存放在在/etc/passwd中。
虚拟用户:这是FTP专有用户,与本地用户无关,因此只能访问FTP服务器提供的资源,大大增强了系统的安全;根据用户认证的方式不同,又可以分为两种方式实现:本地数据文件和数据库服务器。
首先,简单地介绍下部署环境:
操作系统: SUSE 11.0
应用软件: vsftpd
db_load
pam
一、安装相关组件
二、创建相关账户
1、创建 vsftpd 服务的宿主用户
2、创建 虚拟用户的宿主用户
三、创建虚拟用户数据库
1、创建虚拟用户口令文件
# vi /etc/vsftpd_login.txt
添加虚拟用户和密码,按行依次输入用户名和密码,奇数行为用户名,偶数行为密码。
2、生成虚拟用户认证数据数据库
3、配置pam认证
# vi /etc/pam.d/vsftpd
将里面其他的配置项注释掉,添加下面这两行:
四、配置 vsftpd 服务器
# vi /etc/vsftpd.conf
根据实际情况进行相关配置:
允许写操作
write_enable=YES
#
# 开启目录标语功能
#dirmessage_enable=YES
#message_file=.message
#
# 支撑vsftpd服务的宿主用户
nopriv_user=ftpsecure
#
# 登录标语
ftpd_banner="Welcome to FTP service of Luzhou City Commetcial Bank."
#
# 允许用户登录后使用“ls -R”的命令,会造成巨大的系统开销
#ls_recurse_enable=YES
#
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
#
#hide_ids=YES
# Local FTP user Settings
#
# 本地用户可以访问
local_enable=YES
#
# 上传文件权限掩码
local_umask=033
#
chroot_local_user=YES
#
# 用户限制在自己的FTP主目录
#chroot_list_enable=YES
#
# (default follows)
# 哪些用户被限制在自己的默认目录内
#chroot_list_file=/etc/vsftpd.chroot_list
#
# 用户的最大传输速率
#local_max_rate=7200
# Anonymus FTP user Settings
#
# 不允许匿名用户访问
anonymous_enable=NO
#
#anon_world_readable_only=YES
#
# 不允许匿名用户上传
#anon_upload_enable=NO
#
#anon_umask=022
#
# 不允许匿名用户建立目录
#anon_mkdir_write_enable=NO
#
#anon_other_write_enable=NO
#
# 上传文件更改宿主
#chown_uploads=YES
#chown_username=whoever
#
#anon_max_rate=7200
# Log Settings
#
syslog_enable=NO
#
#log_ftp_protocol=YES
#
# 是否保存日志
xferlog_enable=YES
#
# 服务日志保存路径
#vsftpd_log_file=/var/log/vsftpd.log
#
# 日志使用标准的记录格式
xferlog_std_format=YES
#
# 服务日志保存路径
xferlog_file=/var/log/vsftpd.log
#
#dual_log_enable=YES
#
#setproctitle_enable=YES
# Transfer Settings
#
# 使用端口20进行数据连接
connect_from_port_20=YES
#
# 空闲连接超时时间
idle_session_timeout=600
#
# 单次连续传输最大时间
#data_connection_timeout=120
#
# 支持异步传输功能
#async_abor_enable=YES
#
# 支持ASCII模式的上传和下载功能
ascii_upload_enable=YES
ascii_download_enable=YES
#
# 启动被动式连接模式(passive mode)
pasv_enable=YES
# PAMf服务下ftp服务的验证配置文件名
pam_service_name=vsftpd
# 服务工作模式(StandAlone模式)
listen=YES
# Set to ssl_enable=YES if you want to enable SSL
ssl_enable=NO
# Limit passive ports to this range to assis firewalling
#pasv_min_port=30000
#pasv_max_port=30100
# 并发客户端访问个数
#max_clients=10
# 单个客户端的最大线程数
#max_per_ip=3
# 启用虚拟用户功能
guest_enable=YES
# 指定虚拟用户的宿主用户
guest_username=vsftpd
# 虚拟用户的配置文件存放路径
user_config_dir=/etc/vsftpd_user_conf
保存退出后重启 vsftpd 服务。
五、配置虚拟用户
1、创建虚拟用户配置文件目录
2、创建虚拟用户配置文件
虚拟用户配置文件为独立的配置文件,文件名与用户名相同。
# vi /etc/vsftpd_user_conf/hostuser
在配置文件中添加如下配置项,并保存退出。
测试虚拟用户登录 ftp 服务器,并检查操作是否成功。
您可能感兴趣的文章:
vsftpd安装及虚拟用户认证的配置方法
ubuntu vsftpd虚拟用户配置
CentOS 6.2 配置vsftpd虚拟用户的方法
vsftpd虚拟用户创建实例
vsftpd虚拟用户配置的总结
CentOS 5.3建立Vsftpd虚拟用户
CentOS6.2 x64 下 配置vsftpd虚拟用户服务器
vsftpd下创建虚拟用户的方法
vsftp 虚拟用户高级设置