vsftpd服务器的搭建

陌路散爱 提交于 2020-01-07 19:15:15

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

使用vsftpd软件搭建一个ftp服务器,你需要满足这样的需求:创建3个账户,user1, user2, user3 ,其中这三个用户都可以访问同一个目录,但是user1可读写,但user2和user3只读. 
    步骤如下:

    1)建立虚拟账户

     useradd vsftp -s /sbin/nologin

    2 ) 建立虚拟账户相关的文件

    vim /etc/vsftpd/vsftpd_login

    user1

    user

    user2

    user

    user3

    user

    保存

    3 )修改权限,只允许root用户操作

    chmod   600 !$

    4 )生成对应的库文件 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

    5  )  创建虚拟账号对应的目录,指定为配置文件

        vim user1

        

local_root=/home/vsftp/

anonymous_enable=NO
write_enable=YES
local_umask=022
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

    vim user2

    

local_root=/home/vsftp/

anonymous_enable=NO
write_enable=NO
local_umask=022
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

    vim user3

local_root=/home/vsftp/

anonymous_enable=NO
write_enable=NO
local_umask=022
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

 

 6 )创建目录

    mkdir /home/vsftp

  7 ) 修改权限/home/vsftp的拥有者
    chmod -R vsftp:vsftp /home/vsftp/

   8)设置关于认证的文件

     vim /etc/pam.d/vsftpd

    添加

    

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login   //如果是64位系统,则改

为/lib64/security/pam_userdb.so 
前面的.db是认证模块

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login   //如果是64位系统,则改为/lib64/security/pam_userdb.so 

    9)修改/etc/vsftpd.conf文件

    vim  /etc/vsftpd.conf

    anonymous_enable=NO 

    local_enable=NO

    write_enable=YES

    anon_upload_enable=NO

    anon_mkdir_write_enable=NO

    【上面的配置主要是针对系统用户的,所以对我们的虚拟用户映射用户无效】
    

    guest_enable=YES  

    guest_username=vsftp

    virtual_use_local_privs=YES

    user_config_dir=/etc/vsftpd/vsftpd_user_conf  

    启动vsftpd服务

    /etc/init.d/vsftpd start即可

    关于遇到的错误:

    1).

出现问题:

[root@ip5 vsftpd_user_conf]# /etc/init.d/vsftpd  restart

Shutting down vsftpd:                                      [FAILED]

Starting vsftpd for vsftpd: 500 OOPS: bad bool value in config file for: guest_enable

                                                           [FAILED]

总结:

出现此类情况是:

因为你的guest_enable=YES

行后面有空格,以后要养成习惯,后面不要留空格,该换行换行

    2) 访问出现: 

 

    出现:

 [Delaying before reconnect: 29]   或者:重新连接前延时:ss

    解决方案    

 

vim /etc/vsftpd/vsftpd.conf文件中的

local_user=YES

    注意:

    在搭建pure-ftpd服务器的时候,也会出现第二种情况

    当初出现问题的原因是

    使用

    /usr/local/pureftpd/bin/pure-pw passwd 用户名

    修改密码之后

    没有进行密码库的更新,用户登陆会出现2)类似的问题,要进行库文件的更新

    /usr/local/pureftpd/bin/pure-pw mkdb

    即可

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!