应用场景:
1 北京市气象局有一个气象数据的文件服务器(Red Hat Enterprise Linux Server release 5.5 (Tikanga));
2 朝阳区、海淀区等14个区县的气象局每天需要向北京市气象局上传一些气象产品(图片、数据文件等)。
3 做法:在北京市气象局服务器上安装一个FTP服务器,给每个区县开一个FTP虚拟账号。
下面讲一下FTP服务器的安装、虚拟用户的建立。
FTP服务器安装
1.1 检查vsftpd是否安装
rpm -qa |grep vsftpd
1.2 如果没有安装,安装之
yum install -y vsftpd.x86_64
1.3 成功验证方法
service vsftpd start
service vsftpd status(结果vsftpd (pid 9341) is running...表明成功)
虚拟用户建立
2.1 创建用户名密码文件
touch vsftp_account.txt;
文件内容为(奇数行是用户名,偶数行是密码):
haidian
haidian
changping
changping
tongzhou
tongzhou
chaoyang
chaoyang
2.2 生成虚拟用户口令库文件
检查 db4-utils是否安装
rpm -qa |grep db4-utils
如果没有安装,安装之
yum install db4-utils.x86_64
执行下面命令,生成口令库文件
db_load -T -t hash -f vsftp_account.txt /etc/vsftpd/vsftpd_account.db
2.3 修改/etc/pam.d/vsftpd内容(如下)
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_account
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_account
2.4 修改/etc/vsftpd/vsftpd.conf配置
anonymous_enable=NO(关闭匿名用户)
guest_enable=YES(也用虚拟用户)
guest_username=product(虚拟用户映射的系统用户的用户名称)
user_config_dir=/etc/vsftpd/user_conf(虚拟用户权限配置文件夹,里面有每个虚拟用户的权限配置的文件,例如haidian的权限配置文件为/etc/vsftpd/user_conf/haidian)
2.5 为每个虚拟用户分配权限
/etc/vsftpd/user_conf/haidian内容
local_root=/home/ftp/beijing/haidian
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
/etc/vsftpd/user_conf/changping内容
local_root=/home/ftp/beijing/changping
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
/etc/vsftpd/user_conf/tongzhou内容
local_root=/home/ftp/beijing/tongzhou
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
/etc/vsftpd/user_conf/chaoyang内容
local_root=/home/ftp/beijing/chaoyang
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
到此为止,虚拟用户配置完毕,service vsftpd restart即可。
特殊情况:
如果是在CENTOS7上做,情况就有变化了:
1 CENTOS上的防火墙是 firewalld
2 需要在vsftpd.conf中打开
chroot_local_user=YES
chroot_list_enable=YES
allow_writeable_chroot=YES
添加 chroot_list_file=/etc/vsftpd/chroot_list
3 /etc/vsftpd/chroot_list 文件内容
cma_pmsc_jiaotong
cma_pmsc_meizi
cma_pmsc_shuiwen
cma_pmsc_wis
cma_pmsc_ziyuan
以上是系统账户对应的FTP的几个虚拟账户,2和3的操作是打开了chroot功能,并且让虚拟FTP账户具有FTP根目录的写权限。
相关问题:
红帽yum不可用怎么办:http://blog.youkuaiyun.com/hi_1234567/article/details/17138837
FTP中文乱码怎么办:使用Filezilla client FTP客户端登陆某些FTP站点会出现中文乱码,原因是FTP服务器端编码与filezilla client端编码不一致造成的,解决方法如下: 文件-站点管理-选中要登陆的站点-字符集-选择”强制UTF-8″ 或使用自定义字符集GB2312,二者之一定能解决中文显示乱码的问题