vsftd添加虚拟用户-备忘录

由于工作需要,需要在服务器上搭建ftp,方便文静传输, 选用vsftpd搭建ftp服务器 测试环境: 1.fedora 17 x64 2.vsftpd3.3

搭建步骤:

1.安装vsftpd

    a.查看vsftpd是否已经安装,切换到root用户环境变量(su - root)

[root@localhost ~]# rpm -qa|grep ftp
lftp-4.3.8-1.fc17.x86_64
ncftp-3.2.5-3.fc17.x86_64
vsftpd-3.0.0-2.fc17.x86_64
gvfs-obexftp-1.12.3-1.fc17.x86_64
ftp-0.17-55.fc17.x86_64
[root@localhost ~]#
    显示已经安装(系统自带),如果没有出现上述结果,则需要手动安转。

    安转命令:

yum -y install ftp*

    b.测试是否成功安装

    service vsftpd start #启动服务(需添加vsftpd到service列表中,否则使用vsftp-path/vsftpd start)

    如果提示启动错误,根据错误内容google.

    ps -ef|grep ftp #查看进程

    存在进程则说明启动成功。

2.添加虚拟用户

    a.安装vsftpd支持虚拟用户所需要的软件支持()。

      查看db4是否安装

    rpm -qa|grep db4

    如果没有,安装db4

    yum -y install db4*

    b.创建需用用户文件

    vim /etc/vsftpd/login_users.txt

    添加用户,偶行用户名:ftpuser_test,奇行用户名对应密码:123456

    c.生成需用用户登陆验证文件

    db_load -T -t hash -f /etc/vsftpd/login_users.txt /etc/vsftpd/login_users.db    

    执行完成后会有个新文件生成:login_users.db

    d.编辑验证文件/etc/pam.d/vsftpd

    把文件中所有内容注释

    32位系统添加(uname -m 查看位数)

    auth required /lib/security/pam_userdb.so db=/etc/vsftpd/login_users
    account required /lib/security/pam_userdb.so db=/etc/vsftpd/login_users

    64位系统添加

    auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
    account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

    e.编辑用户列表文件

    vim /etc/vsftpd/chroot_list

    添加 ftpuser_test

    f.编辑/etc/vsftpd/vsftpd.conf(修改之前请备份)

    chroot_list_enable=YES    #启用
    chroot_list_file=/etc/vsftpd/chroot_list

    pam_service_name=vsftpd
    userlist_enable=NO
    tcp_wrappers=YES
    guest_enable=YES    #虚拟用户
    guest_username=ftp   
    user_config_dir=/etc/vsftpd/login_conf #用户文件配置路径
    allow_writeable_chroot=YES                #启用写功能
    userlist_file=/etc/vsftpd/user_list        #user_list文件路径

    h.创建用户配置文件

    vim /etc/vsftpd/login_conf 

    添加:

    local_root=/data/ftp        #用户目录
    write_enable=YES
    download_enable=YES
    anon_world_readable_only=NO
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
    local_umask=022

3.测试

    a.上述配置完成后重启服务

    service vsftpd restart

    b.测试登陆

    [root@localhost ~]# ftp localhost
    Trying ::1...
    Connected to localhost (::1).
    220 (vsFTPd 3.0.0)
    Name (localhost:wind): ftpuser_test
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 


以上是vsftp添加虚拟用户个过程,写此文以备忘。

参考1:http://javacxn.blog.163.com/blog/static/183277642012724113149704/

参考2:http://man.ddvip.com/linux/debian/vsftpd/vsftpd.conf-7.html

参考3:http://os.51cto.com/art/201008/222036.htm

你可能感兴趣的:(linux,user,vsftpd,fedora,ftp添加虚拟用户,搭建ftp)