在LINUX下vsftp建立一个FTP服务器,但通过ftp的命令控制台使用FTP时,ls无法查看目录, 当然更无法上传下载文件了!

出错如下 :

ftp> ls

227 Entering Passive Mode (192,168,2,222,110,161)
150 Here comes the directory listing.

226 Directory send OK.

ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
226 Directory send OK.

查看ftp的命令

ftp> help
Commands may be abbreviated.  Commands are:

!                       cr                     mdir               proxy              send
$                      delete             mget             sendport        site
account          debug             mkdir            put                 size
append          dir                    mls                pwd              status
ascii               disconnect      mode            quit               struct
bell                 form                modtime         quote           system
binary            get                   mput              recv               sunique
bye                glob                 newer           reget              tenex
case             hash               nmap             rstatus          trace
ccc                 help               nlist                rhelp              type
cd                  idle                 ntrans            rename          user
cdup              image           open              reset              umask
chmod           lcd                 passive         restart            verbose
clear              ls                   private            rmdir             ?
close            macdef          prompt           runique
cprotect        mdelete         protect          safe

通过 passive 开启和关闭 PASV模式, 再ls 也是同样的问题, 最后在网上找到了解决办法,最重要的是man ftpd_selinux,解决这个问题只要: 
1. setsebool -P ftpd_disable_trans 1 
2. service vsftpd restart

当然了,解决这个问题的办法还有一个, 就是禁用selinux

如何禁用呢?

vi /etc/sysconfig/selinux 
SELINUX=enforcing --> SELINUX=disabled

但是这个修改需要重新启动计算机,reboot 一下。

下面是其他常见的setsebool 命令

BOOLEANS
       SELinux  policy is based on least privilege required and may also be customizable by setting
       a boolean with setsebool.

Allow ftp servers to read and write files with the public_content_rw_t file type.

setsebool -P allow_ftpd_anon_write on

Allow ftp servers to read or write files in the user home directories.

setsebool -P ftp_home_dir on

Allow ftp servers to read or write all files on the system.

setsebool -P allow_ftpd_full_access on

Allow ftp servers to use cifs for public file transfer services.

setsebool -P allow_ftpd_use_cifs on

Allow ftp servers to use nfs for public file transfer services.

setsebool -P allow_ftpd_use_nfs on

system-config-selinux is a GUI tool available to customize SELinux policy settings.

vsftp访问异常的更多相关文章

  1. java--Iterator迭代问题:集合并发访问异常

    用Iterator对数组进行迭代后,如果在迭代过程中对数组进行增加元素操作(这里iterator本身没有提供增加操作方法)时,就会抛出并发访问异常: 异常如下: Exception in thread ...

  2. Spring揭秘读书笔记 八 数据访问异常体系

    这篇博客 来自spring揭秘一书的第十三章 为什么要有访问异常都有一个体系,这个我们得从DAO模式说起. DAO模式 任何一个系统,不管是一个最简单的小系统,还是大规模的系统,都得跟数据打交道,说白 ...

  3. [故障公告]阿里云“华东1地域部分负载均衡https访问异常“引起部分站点无法访问

    今天上午 9:40 - 11:06 左右,由于阿里云“华东1地域部分负载均衡https访问异常”,造成我们的部分站点(尤其是博客后台)无法正常访问,给您带来了很大的麻烦,请您谅解. 现已恢复正常,如果 ...

  4. Java实现非法访问异常

    创建ExceptionTest类,在该类的main()方法中,使用反射获得String类的所有域,不要使用setAccessible方法修改这些域的可见性,然后通过反射获得私有域中与”hash”相匹配 ...

  5. Tomcat上发布webservices的war工程,访问异常404

    Tomcat上发布webservices的war工程,访问异常404 Tomcat部署正常.war导出工程正常.Tomcat自带的工程可以正常访问: 问题: webservices工程访问异常404 ...

  6. “全栈2019”Java异常第十三章:访问异常堆栈跟踪信息

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  7. WIN7中 HttpListener 拒绝访问 异常解决 C#

      WIN7中 HttpListener 拒绝访问 异常解决 C# http://www.cnblogs.com/cmdszh/archive/2012/08/16/httplistener.html ...

  8. Linux OOM Killer造成数据库访问异常排查

    服务器上的服务器访问异常,查看/va/log/messages发现如下: Sep 22 16:08:21 safeserver kernel: java invoked oom-killer: gfp ...

  9. (原创)android Sqlite多线程访问异常解决方案

    在开发Android的程序的时候sqlite数据库是经常用到的:在多线程访问数据库的时候会出现这样的异常:java.lang.IllegalStateException: Cannot perform ...

随机推荐

  1. zstu 4215 多起点bfs

    input n m  1<=n,m<=1000 n*m的地图,全为大写字母 7 10 WWWWWCCDEW WWWWCCEEEW WTWWWCCCCW WWFFFFFFWW WWFAAAA ...

  2. MapReduce初级案例

    1.数据去重  "数据去重"主要是为了掌握和利用并行化思想来对数据进行有意义的筛选.统计大数据集上的数据种类个数.从网站日志中计算访问地等这些看似庞杂的任务都会涉及数据去重.下面就 ...

  3. spring中的控制反转IoC和依赖注入DI

    原文:http://blog.163.com/xianghuxian@126/blog/static/50639037200721345218382/ IoC(Inversion of Control ...

  4. C语言-字符串文本串联

    要形成包含多个行的字符串,可以串联两个字符串. 为此,请键入正斜杠,然后按 return 键. 反斜杠导致编译器忽略以下换行符. 例如,字符串     "Long strings can b ...

  5. String与string的区别

    在C#中,string 是 System.String 的别名,所以基本上在使用时是没有差别的. 习惯上,我们把字符串当作对象时(有值的对象实体),我们用string.而我们把它当类时(需要字符串类中 ...

  6. thinkphp的model模型的设计经验总结

    关于模型:跟上篇文章thinkphp的目录结构设计经验总结写控制器一个道理:为了尽量避免改动到框架: 首先我们是要有一个BaseModel.class.php作为我们的基础model: 我会在Base ...

  7. python datetime时间差

    import datetime import time d1 = datetime.datetime(2005, 2, 16) d2 = datetime.datetime(2004, 12, 31) ...

  8. shell之路【第二篇】运算与文件调用

    Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符. 原生bash不支持简单的数学运算,默认都是字符串操作,但是可以通过其他命令来实现 算数运算 expr. ...

  9. AFNetWorking 判断当前版本是否是最新版本

    NSString *url = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@",@ ...

  10. mac中使用终端生成RSA私钥和公钥文件

    1.打开终端输入:cd Desktop/   //进入桌面 2.OpenSSL   //打开 OpenSSL 3.生成私钥pem,  执行命令   genrsa -out rsa_private_ke ...