zoukankan      html  css  js  c++  java
  • vsftp使用方法与问题解决

    安装环境

    OS:Centos 6.4

    vsftp:vsftpd-2.2.2-11.el6_3.1.i686.rpm

    vsftpd配置文件:/etc/vsftpd/vsftpd.conf

    一、       使用匿名用户访问

    (1)安装完成后,只需要启动vsftp服务,就可使用匿名anonymous用户访问ftp

    anonymous_enable=YES(默认) 这行配置就是开启关闭匿名访问功能,此时已具备下载功能

    ps:匿名用户目录-/var/ftp/pub drwxr-xr-x. 2 root root

    (2)此时的anonyous用户是没有上传以及创建目录的权限

    取消以下两行的注释:

    anon_upload_enable=YES

    anon_mkdir_write_enable=YES

    然后进行测试上传功能和创建目录,结果却提示执行失败,这是由于/var/ftp/pub该目录的其他人没有写权限,使用chmod+x /var/ftp/pub,加上权限

    ps:加上写权限后,配置文件的功能可能并不像想象中那么好用

    二、       使用本地用户访问

    (1)    创建本地用户

    useradd ftp1

    passwd ftp1

    或创建不能登录的本地用户

    useradd ftp2 –s /sbin/nologin

    passwd ftp2

    (2)    本地用户权限

    local_enable=YES (默认) 开启本地用户访问

    write_enable=YES(默认) 开启写权限,若关闭,则上传与创建目录功能不能使用

    (3)    然后用创建的本地用户访问,结果访问失败

    提示:

    响应:   331 Please specify the password.

    命令:   PASS *******

    响应:     500 OOPS: cannot change directory:/home/dyz

    起初以为是密码错误和目录无权限,重新修改密码并给予权限后,依然提示错误

    检查iptables,已经关闭

    ps:若没有关闭,请关闭或者放通tcp21号端口的数据

    service iptables stop

    检查selinux是否开启,显示为开启状态

    getenforce  查看命令

    若显示为enforcing,则是开启状态

    若显示为Permissive,则是关闭状态

    关闭selinux有两种访问

    a.永久关闭

    编辑/etc/selinux/config

    SELINUX=enforcing改为SELINUX=disable 将其改为disable状态

    ps:该方法需重启机器

    b.临时关闭

    setenforce 0   ##设置SELinux 成为permissive模式

                ##setenforce 1 设置SELinux 成为enforcing模式

    ps:该方法无需重启机器

    然后访问,访问成功!

    三、       user_lis与ftpuser文件

    user_list文件取决于配置文件:

    userlist_enable=YES(默认) 是否启用该文件的功能,若为NO时,userlist_deny无效

    userlist_deny=YES(默认) 为YES时,该文件的用户不能访问ftp,如果是交互式的话甚至不提示输入密码,为NO时,只允许该文件的用户访问

    ps:userlist_deny=YES 配置文件中没有,需添加,但功能默认是YES

       只有当userlist_enable是开启的,userlist_deny才生效

    ftpuser文件则是总是有效的,与配置文件无关,是一个黑名单性质的文件

    ps:这两个文件有时需搭配使用,比如想使用root用户,则可以先配置:userlist_enable=YES

    userlist_deny=NO

    再编辑ftpuser,去掉文件root用户

    四、       相关命令与文件

    vsftpd配置文件:/etc/vsftpd/vsftpd.conf

    匿名用户目录-:var/ftp/pub

    日志文件:var/log/xferlog

    服务的启动、停止,重启:/etc/init.d/vsftpd{start|stop|restart|try-restart|force-reload|status}

    Service vsftpd {start|stop|restart|try-restart|force-reload|status}

  • 相关阅读:
    c++中的内存管理【转载】
    c++中dynamic_cast、static_cast、reinterpret_cast和const_cast作用
    c++中的顶层const和底层const
    c++赋值操作符需要确保自我赋值的安全性问题
    二分法查找
    Servlet基础总结
    java 正则表达式:有丶东西
    HTTP协议初步认识
    Java synchronized到底锁住的是什么?
    ECMA Script 6新特性之解构赋值
  • 原文地址:https://www.cnblogs.com/dyzne/p/6803726.html
Copyright © 2011-2022 走看看