• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    在CentOS系统下创建和配置虚拟用户的方法

    一、下载当前vsftp最新版本

       

    复制代码
    代码如下:
    wget ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.3.4.tar.gz
        


    二、安装前准备

    1、创建虚拟用户映射的本地用户wwwftp

       

    复制代码
    代码如下:
    useradd wwwftp -d /data/www -s /sbin/nologin

    2、创建自定义配置目录

       

    复制代码
    代码如下:
    mkdir -p /data/soft/vsftpd/conf
    mkdir -p /data/soft/vsftpd/bin
    mkdir -p /data/soft/vsftpd/lib
    mkdir -p /data/soft/vsftpd/user_conf
    mkdir -p /data/soft/vsftpd/empty
    mkdir -p /data/soft/vsftpd/logs
    mkdir -p /data/www
    mkdir -p /data/www/user1
    mkdir -p /data/www/user2

    3、对自定义目录设置权限

       

    复制代码
    代码如下:
    chown -R wwwftp:www /data/www
    chmod -R 700 /data/soft/vsftpd/empty/
    chown -R wwwftp:wwwftp /data/soft/vsftpd/empty/

    4、复制用于验证用户登录的库文件到自定义目录方便管理

       

    复制代码
    代码如下:
    cp /lib/security/pam_userdb.so /data/soft/vsftpd/lib/

    5、安装所需软件

       

    复制代码
    代码如下:
    yum -y install gcc db4* pam*

    三、解压安装vsftpd

       

    复制代码
    代码如下:
    tar zxvf vsftpd-2.3.4.tar.gz
    cd vsftpd-2.3.4

    源码安装默认不支持tcp_wrappers和ssl

    需要修改builddefs.h

       

    复制代码
    代码如下:
    /*默认值如下:*/
    #undef VSF_BUILD_TCPWRAPPERS /*是否支持TCP WRAPPERS*/
    #define VSF_BUILD_PAM /*是否支持自定义虚拟用户登录*/
    #undef VSF_BUILD_SSL /*是否支持SSL传输*/
    /*支持则将对应项设为define,否则设为undef*/

    编译vsftpd

       

    复制代码
    代码如下:
    make

    查看编译的vsftpd二进制文件是否加载了pam

       

    复制代码
    代码如下:
    ldd vsftpd

    如下:

       

    复制代码
    代码如下:
    [root@CentOS5 vsftpd-2.3.4]# ldd vsftpd
    linux-gate.so.1 => (0x00628000)
    libwrap.so.0 => /lib/libwrap.so.0 (0x00cee000)
    libnsl.so.1 => /lib/libnsl.so.1 (0x0015f000)
    libpam.so.0 => /lib/libpam.so.0 (0x00fc4000)
    libdl.so.2 => /lib/libdl.so.2 (0x007dc000)
    libresolv.so.2 => /lib/libresolv.so.2 (0x008d8000)
    libutil.so.1 => /lib/libutil.so.1 (0x00110000)
    libcap.so.1 => /lib/libcap.so.1 (0x00d99000)
    libc.so.6 => /lib/libc.so.6 (0x0029a000)
    libaudit.so.0 => /lib/libaudit.so.0 (0x00114000)
    /lib/ld-linux.so.2 (0x004a2000)

    看到libpam.so.0 => /lib/libpam.so.0 (0x00fc4000)表示已成功加载pam认证模块

       

    复制代码
    代码如下:
    cp vsftpd /data/soft/vsftpd/bin

    四、配置vsftpd

    1、创建主配置文件

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/conf/vsftpd.conf

    如下:

       

    复制代码
    代码如下:
    local_enable=YES
    anonymous_enable=NO
    anon_upload_enable=NO
    anon_other_write_enable=NO
    anon_mkdir_write_enable=NO
    ftpd_banner=Welcome to FTP service.
    listen=YES
    listen_port=21
    connect_from_port_20=YES
    nopriv_user=nobody
    tcp_wrappers=YES
    chroot_local_user=NO
    chroot_list_enable=YES
    chroot_list_file=/data/soft/vsftpd/chroot_list
    userlist_enable=yes
    userlist_deny=no
    userlist_file=/data/soft/vsftpd/allow
    dual_log_enable=YES
    vsftpd_log_file=/data/soft/vsftpd/logs/vsftpd.log
    xferlog_enable=YES
    xferlog_file=/data/soft/vsftpd/logs/xferlog
    pasv_enable=YES
    pasv_min_port=50000
    pasv_max_port=60000
    guest_enable=YES
    guest_username=wwwftp
    pam_service_name=vsftpd
    virtual_use_local_privs=YES
    use_localtime=YES
    user_config_dir=/data/soft/vsftpd/user_conf
    secure_chroot_dir=/data/soft/vsftpd/empty

    2、创建允许登录ftp的用户文件

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/allow

    如下:

       

    复制代码
    代码如下:
    user1
    user2

    3、创建用于锁定用户目录的用户列表文件

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/chroot_list

    如下

       

    复制代码
    代码如下:
    user1
    user2

    4、配置vsftpd的pam认证模块(用于虚拟用户认证)

      

    复制代码
    代码如下:
    vi /etc/pam.d/vsftpd

    如下

       

    复制代码
    代码如下:
    auth required /data/soft/vsftpd/lib/pam_userdb.so db=/data/soft/vsftpd/login
    account required /data/soft/vsftpd/lib/pam_userdb.so db=/data/soft/vsftpd/login

    保存退出

    5、创建用户名密码文本文件

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/login.txt

    如下:一行用户名一行密码

       

    复制代码
    代码如下:
    user1
    123456
    user2
    654321

    保存退出

    6、用db_load生成用户数据库

       

    复制代码
    代码如下:
    db_load -T -t hash -f /data/soft/vsftpd/login.txt /data/soft/vsftpd/login.db
    chmod 600 /data/soft/vsftpd/login.db
    rm -rf /data/soft/vsftpd/login.txt

    7、配置虚拟用户自定义配置文件

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/user_conf/user1

    user1所有权限

       

    复制代码
    代码如下:
    local_root=/data/www/user1
    write_enable=YES
    local_umask=022

    保存退出

       

    复制代码
    代码如下:
    vi /data/soft/vsftpd/user_conf/user2

    user2只允许下载

       

    复制代码
    代码如下:
    local_root=/data/www/user2
    write_enable=NO
    download_enable=YES
    local_umask=022

    保存退出

    8、启动vsftpd服务

       

    复制代码
    代码如下:
    /data/soft/vsftpd/bin/vsftpd /data/soft/vsftpd/conf/vsftpd.conf

    五、测试
    user1登录可读、写、删除、创建、修改一切权限
    user2登录仅有下载权限

    上一篇:在国外主机上将Linux系统时间修改为北京时间的方法
    下一篇:将CentOS服务器的目录映射为Windows磁盘驱动器的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    在CentOS系统下创建和配置虚拟用户的方法 在,CentOS,系统,下创,建和,