实验目标:架设VSFTP服务器
这次我们来学习Linux系统中的 vsftp服务器的配置。
下面我们开始了!首先我们安装vsftp服务器端的软件。
vsftpd服务器的安装文件位于第1张安装光盘中。
使用rpm命名可顺利安装该软件包。
# rpm -ivh vsftpd-2.0.1-5.i386.rpm
安装完后默认就可以启动vsftp服务了,
[root@localhost ~]# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]
但是默认我们只能看,不能上传。
1.下面我们开启匿名用户上传
[root@localhost /]# vi /etc/vsftpd/vsftpd.conf
将 anon_upload_enable=YES
anon_mkdir_write_enable=YES
前面的#去掉
[root@localhost /]# service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
2.将FTP本地用户禁锢在宿主目录中
在vsftpd.conf文件中添加设置项。
chroot_local_user=YES
重新启动vsftpd服务。
# service vsftpd restart
3.建立虚拟帐号
a,建立虚拟用户口令库文件。
[root@localhost ~]# cat logins.txt
mike
123
john
321
口令库文件中奇数行设置用户名,偶数行设置口令 。
b,生成vsftpd的认证文件(在第3张光盘中安装)。
[root@localhost RPMS]# rpm -ivh db4-utils-4.2.52-7.1.i386.rpm
warning: db4-utils-4.2.52-7.1.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:db4-utils ########################################### [100%]
[root@localhost RPMS]# db_load -T -t hash -f /root/logins.txt /etc/vsftpd/vsftpd_login.db 生成认证文件。
c, 设置认证文件只对用户可读可写。
# chmod 600 /etc/vsftpd/vsftpd_login.db
d,建立虚拟用户所需的PAM配置文件。
手工建立vsftpd.vu文件。
# cat /etc/pam.d/vsftpd.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
e,建立虚拟用户及要访问的目录并设置相应的权限。
建立所有FTP虚拟用户帐号使用的系统用户帐号,并设置该帐号宿主目录的权限。
# useradd -d /home/ftpsite virtual
# chmod 700 /home/ftpsite
f,设置vsftpd.conf配置文件。
在配置文件中添加虚拟用户的配置内容。
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd.vu
重新启动vsftpd服务程序。
g,对vsftpd.conf文件修改后需要重新启动vsftpd服务程序。
# service vsftpd restart
现在就应该可以用虚拟帐号登陆了,
4.对虚拟用户设置不同的权限
设置主配置文件。
在vsftpd.conf文件中添加用户配置文件目录设置。
user_config_dir=/etc/vsftpd_user_conf
建立用户配置文件目录。
使用mkdir命令建立用户配置文件目录。
# mkdir /etc/vsftpd_user_conf
为虚拟用户建立单独的配置文件。
用户配置文件名称与用户名相同。
/etc/vsftpd_user_conf/mike
/etc/vsftpd_user_conf/john
里面的内容如下:
anon_world_readable_only=NO 表示用户可以浏览FTP目录和下载文件
anon_upload_enable=YES 表示用户可以上传文件
anon_mkdir_write_enable=YES 表示用户具有建立和删除目录的权限
anon_other_write_enable=YES 表示用户具有文件改名和删除文件的权限
没有的配置项默认按照vsftpd.conf的配置内容
5.FTP服务器的资源限制
max_clients=100 允许最大的客户端连接数
max_per_ip=5 同一IP最大客户端的连接数
local_max_rate=5000000 设置本地用户最大传输数率
anon_max_rate=2000000 匿名用户最大的传输数率.