美文网首页
搭建FTP服务

搭建FTP服务

作者: 老默2018 | 来源:发表于2017-12-29 17:33 被阅读0次

    我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录。
    匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous。
    本地用户登录:使用系统用户登录,在/etc/passwd中。
    虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器。
    FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。

    使用vsftpd搭建FTP服务,并使用虚拟用户登录

    1、安装vsftpd

    使用yum工具安装vsftpd包,如下所示:
    yum -y install vsftpd db4-utils
    db4-utils包用来生成密码库文件

    2、建立账号

    vsftpd默认可以支持使用系统账号体系登录,但那样不太安全,所以建议使用虚拟账号登录。
    建立虚拟登录账号
    useradd virftp -s /sbin/nologin
    建立与虚拟账号相关的文件
    vim /etc/vsftpd/vsftpd_login //内容如下

    zpy   //用户名  
    1qaz@WSX?  //密码  
    

    chmod 600 /etc/vsftpd/vsftpd_login //修改文件权限,提升安全级别
    db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //生成vsftpd密文密码
    mkdir /etc/vsftpd/vsftpd_user_conf //建立与虚拟账号相关的目录以及配置文件

    3、创建与用户对应的配置文件

    cd /etc/vsftpd/vsftpd_user_conf
    vim zpy //每个用户都有一个自己的配置文件,文件名与用户名一致,具体内容如下:

    local_root=/data/ftp  //zpy用户的家目录  
    anonymous_enable=NO   //禁用匿名登陆  
    write_enable=YES      //可写  
    local_umask=022       //指定umask  
    anon_upload_enable=NO //禁用匿名上传   
    anon_mkdir_write_enable=NO  //禁用匿名账号可写  
    idle_session_timeout=600  
    data_connection_timeout=120  
    max_clients=10  
    max_per_ip=5  
    local_max_rate=50000  
    

    mkdir /data/ftp //创建zpy家目录
    touch /data/ftp/test1.txt //创建文件用来测试
    chown -R virftp.virftp /data/ftp
    vim /etc/pam.d/vsftpd //在开头添加如下两行

    auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login  
    account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    

    4、修改vsftpd的主配文件/etc/vsftpd/vsftpd.conf

    vim /etc/vsftpd/vsftpd.conf //修改如下内容(新添加的内容后面一定不能有空格,前车之鉴):
    anonymous_enable=NO
    再添加如下内容:

    chroot_local_user=YES  //将所有用户限制在主目录  
    guest_enable=YES  //开启虚拟用户    
    guest_username=virftp  //虚拟用户所映射的本地用户  
    virtual_use_local_privs=YES  //使虚拟用户拥有和本地用户一样的权限  
    user_config_dir=/etc/vsftpd/vsftpd_user_conf  //定义用户配置文件的目录  
    allow_writeable_chroot=YES  
    

    5、启动vsftpd并测试

    systemctl start vsftpd
    systemctl enable vsftpd
    用其他主机下载lftp测试
    yum -y install lftp
    lftp zpy@10.1.13.14
    Password:
    lftp zpy@10.1.13.14:~>ls
    -rw-r--r-- 1 1003 1003 0 Dec 25 05:08 test1.txt

    相关文章

      网友评论

          本文标题:搭建FTP服务

          本文链接:https://www.haomeiwen.com/subject/sdcwgxtx.html