ascii_upload_enable=YES;ascii_download_enable=YES,默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的请求,启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。
(3)用户连接和超时选项
idle_session_timeout=600,可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。
data_connection_timeout=120,设定默认的数据连接超时时间。
(4)服务器日志和欢迎信息
dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。
ftpd_banner=Welcome to blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。
xferlog_enable=YES,启用记录上传/下载活动日志功能。
xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log.
六、创建虚拟用户
(1)安装必须的软件
rpm -ivh db4-4.7.25-16.el6.i686
rpm -ivh db4-utils-4.7.25-16.el6.i686
(2)创建用户数据库
1、创建一临时文件并编辑文件
touch /etc/vsftpd/ftp_db_users
vim /etc/vsftpd/ftp_db_users (文件内容如下:创建了两个帐号)
ftpuser1 用户1
ftp 用户1密码
ftpuser2 用户2
ftp 用户2密码
2、用db_load命令生成pam_userdb认证所需的帐号文件
db_load -T -t hash -f /etc/vsftpd/ftp_db.users /etc/vsftpd/vsftpd.login.db
3、配置PAM信息
在/etc/pam.d/目录下新建宇哥文件夹,名字为vsftpd.pam,文件内容如下:
auth required pam_userdb.so db=/etc/vsftpd/vsftpd.login
account required pam_userdb.so db=/etc/vsftpd/vsftpd.login
4、配置vsftpd帐号
vsfptd服务永续在启动是指定配置文件,所以我们新建一个文件/etc/vsftpd/vsftpd.virtual.conf ,内容如下:
listen=YES
listen_port=21
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=ftp
max_clients=10
max_per_ip=10
pam_service_name=vsftpd.pam
user_sub_token=$USER
local_root=/var/ftp/virtual/$USER ;指定每个虚拟用户账号配置目录
local_root=/var/ftp
xferlog_enable=YES
xferlog_file=/var/log/vsftp.log
xferlog_std_format=YES
5、创建虚拟用户目录
根据前面提示我们知道,ftpuser1和ftpuser2的家目录分别为:
/var/ftp/virtual/ftpuser1和/var/ftp/virtual/ftpuser2 在启动服务之前,我们先创建这两个目录
mkdir /var/ftp//virtual/ftpuser1 -p
mkdir /var/ftp//virtual/ftpuser2 -p
chown ftp.ftp /var/ftp/virtual/ftpuser1
chown ftp.ftp /var/ftp/virtual/ftpuser2
6、按照配置文件启动服务
service vsftpd stop
/usr/sbin/vsftpd /etc/vsftpd/vsftpd.virtual.conf
7、用虚拟用户测试虚拟权限
ftp -u ftpuser1 192.168.1.114
七、FTP客户端配置及访问
(1)Windows环境下访问
C:\>ftp 192.168.1.114
连接到 192.168.1.114。
220 (vsFTPd 2.2.2)
用户(192.168.1.114:(none)): ftpuser1
331 Please specify the password.
密码:
230 Login successful.
ftp>
(2)Linux环境下访问
[root@localhost /]# ftp
ftp> open 192.168.1.114
Connected to 192.168.1.114 (192.168.1.114).
220 (vsFTPd 2.2.2)
Name (192.168.1.114:sunmaosheng): ftpuser2
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>