zoukankan      html  css  js  c++  java
  • centos vsftpd 安装配置

    转自:http://www.cnblogs.com/qingfeng2010/archive/2010/12/26/1917121.html

    1.查看是否安装vsftp
    rpm –qa|grep vsftpd 
    如果出现     vsftpd-2.0.5-16.el5_5.1  说明已经安装 vsftp

    安装vsftp

    yum -y install vsftpd

    2.测试 是否安装成功  (ip 改成自己啊,不要用俺的此次登录为匿名登录 user: anonymous 密码为空 如果成功登录会有下面内容  这说明vsftpd安装成功)

    [root@localhost ~]#service vsftpd start

    为 vsftpd 启动 vsftpd:[确定]

    [root@localhost ~]#ftp 192.168.1.107

    Connected to192.168.1.107.

    220 (vsFTPd 2.0.5)

    530 Please loginwith USER and PASS.

    530 Please loginwith USER and PASS.

    KERBEROS_V4 rejectedas an authentication type

    Name(192.168.1.107:root): anonymous

    331 Please specifythe password.

    Password:

    230 Loginsuccessful.

    Remote system typeis UNIX.

    Using binary mode totransfer files.

    ftp> bye

    221 Goodbye.

    [root@localhost ~]#

    3.修改配置文件/etc/vsftpd/vsftpd.conf

    [root@localhost ~]#vi /etc/vsftpd/vsftpd.conf

    取消下面内容前面的注释或添加

    anonymous_enable=YES/NO  是否允许匿名用户访问 

    chroot_list_enable=YES   限定用户不可以离开主目录

    chroot_list_file=/etc/vsftpd/chroot_list 

    loca_enable=YES/NO 本地用户是否可以访问 注:如果为NO 则所有虚拟用户都将不能访问原因:虚拟用户访问在主机上其实是以本地用户访问的

    pam_service_name=vsftpd  pam认证文件名 在/etc/pam.d/vsftpd

    guest_enable=YES    启用虚拟用户功能

    guest_username=ftp  指定虚拟用户的宿主用户 –centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)

    user_config_dir=/etc/vsftpd/vuser_conf 设置虚拟用户个人vsftp的服务配置文件

    (此文件后面不能出现空格)

    4.查看是否安装 db4 db4-utils 

    [root@localhost ~]#rpm -qa|grep db4  运行后出现下面内容 说明已经安装可以使用db_load命令(主要是 db4-utils)

    db4-devel-4.3.29-10.el5_5.2

    db4-4.3.29-10.el5_5.2

    db4-devel-4.3.29-10.el5_5.2

    db4-4.3.29-10.el5_5.2

    db4-tcl-4.3.29-10.el5_5.2

    db4-utils-4.3.29-10.el5_5.2

    [root@localhost ~]#

    如果没安装则要安装db4-utils

    4.1安装db4-utils

    [root@localhost ~]#yum -y install db4-utils

    5. 创建 chroot_list_file=/etc/vsftpd/chroot_list文件

    [root@localhost ~]#vi /etc/vsftpd/chroot_list (编辑文件把 /etc/vsftpd/vsftpd.conf 中guest_username的值写到文件中本例中为 ftp)

     或者直接按下面进行操作

    [root@localhost ~]#touch /etc/vsftpd/chroot_list

    [root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list  (此处ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)

    6.创建虚拟用户目录(密码文本)

    [root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇数行为用户名 ,偶数行为密码)

    本文中添加如下(用cat 命令查看)

    [root@localhost ~]#cat /etc/vsftpd/vftpuser.txtx

    zz

    aaaaa

    ftp1

    zzzzz

    [root@localhost ~]#

    7.生成虚拟用户的db文件

    [root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db

    8.生成虚拟用户的认证文件

    [root@localhostvsftpd]# vi /etc/pam.d/vsftpd

    #%PAM-1.0

    session    optional    pam_keyinit.so    force revoke

    auth       required     pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers onerr=succeed

    auth       required     pam_shells.so

    auth       include      system-auth

    account    include     system-auth

    session    include     system-auth

    session    required    pam_loginuid.so

    注释掉/etc/pam.d/vsftpd中所有的内容 反正已经不要本地用户的认证了

    特别注意 以下区别 
    32位系统增加以下两句:
    auth      required     pam_userdb.so db=/etc/vsftpd/vftpuser
    account   required     pam_userdb.so db=/etc/vsftpd/vftpuser
    64位系统增加以下两句:
    auth   required    /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

    account required    /lib64/security/pam_userdb.sodb=/etc/vsftpd/vftpuser

    注:db=/etc/vsftpd/vftpuser 中的vftpuser 是你生成的虚拟用户的db文件

    9.创建每个虚拟用户自己的配置文件,配置文件的路径是/etc/vsftpd/vsftpd.conf中的

    user_config_dir=/etc/vsftpd/vuser_conf路径

    在 /etc/vsftpd/vuser_conf/下面创建以用户名为名称的文件(名称是/etc/vsftpd/vftpuser.txtx 下面的奇数行)

    [root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtx

    zz

    aaaaa

    ftp1

    zzzzz

    [root@localhostvsftpd]# mkdir vuser_conf

    [root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/zz

    内容如下 

    local_root=/var/www(虚拟用户的根目录根据实际修改)
    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

    10.给文夹权限(否则不能上传 权限可自定 本人给的是 777)

    [root@localhostvsftpd]# chmod 777 /var/www/

    11.重启vsftpd

    [root@localhostvsftpd]# service vsftpd restart

    到此安装配置完成 如果出现连接被 同位体重置 或其它错误 请查看SELinux的当前模式

    12.登录测试

    [root@localhost vsftpd]# ftp192.168.1.107

    Connected to 192.168.1.107.

    220 (vsFTPd 2.0.5)

    530 Please login with USER and PASS.

    530 Please login with USER and PASS.

    KERBEROS_V4 rejected as anauthentication type

    Name (192.168.1.107:root): zz

    331 Please specify the password.

    Password:

    500 OOPS: cannot changedirectory:/var/www

    Login failed.

    ftp>

    查看方法

    [root@localhost vsftpd]# getenforce

    Enforcing   如果出现(Enforcing )

    关闭方法:[root@localhost vsftpd]#setenforce 0       (0|1  开|关)

    再次测试 登录成功

    [root@localhost vsftpd]# chmod 777/var/www/

    [root@localhost vsftpd]# ftp192.168.1.107

    Connected to 192.168.1.107.

    220 (vsFTPd 2.0.5)

    530 Please login with USER and PASS.

    530 Please login with USER and PASS.

    KERBEROS_V4 rejected as anauthentication type

    Name (192.168.1.107:root): zz

    331 Please specify the password.

    Password:

    230 Login successful.

    Remote system type is UNIX.

    Using binary mode to transfer files.

    ftp>

    查看系统是多少位的命令

    [root@bogon ~]# getconf LONG_BIT

  • 相关阅读:
    java dom4j创建 ,修改 ,删除 xml文件内容
    HTML 标签权重比较
    [Operating System] {ud923} P4L4: Datacenter Technologies
    [Operating System] {ud923} P4L3: Distributed Shared Memory
    [Operating System] {ud923} P4L2: Distributed File Systems
    [Operating System] {ud923} P4L1: Remote Procedure Calls
    [Operating System] {ud923} P3L6: Virtualization
    [Operating System] {ud923} P3L5: I/O Management
    [Operating System] {ud923} P3L4: Synchronization Constructs
    [Operating System] {ud923} P3L3: Inter-Process Communication
  • 原文地址:https://www.cnblogs.com/mtima/p/3802675.html
Copyright © 2011-2022 走看看