Centos 6.4下使用VSFTPD无法正常连接与无法上传文件的问题解决

发表于 2014 年 4 月 13 日 作者 SCKA

最近利用Linux搭建服务器

搭建FTP的时候决定使用VSFTP搭建,结果却出现了无法正常连接与无法上传文件等诸多问题

经过许久的努力,终于让VSFTP正常运行了

下面一一给出我的解决方案

1、关闭防火墙

使用yum安装好vsftp并配置完成启动后,我竟然发现本地连接FTP时完全收不到回应

就连欢迎信息也没有,这是非常不寻常的状况

经检查VSFTP配置文件正确,程序也正常运行

于是我怀疑到防火墙

1

service iptables stop

运行上面的命令临时关闭防火墙后,可以正常收到系统发送的欢迎信息了

2、设置权限

我使用的是一个名叫SCKA的账户连接FTP,可是我却收到了下面的反馈信息

500 OOPS: cannot change directory:/home/SCKA
 

从报错信息上看,应该是切换到主目录/home/SCKA时出现了错误,于是我尝试执行下面的命令

1

chmod 777 /home/SCKA/

如此操作后本应解决问题,可是仍旧收到报错信息

3、设置sebool

我突然想到我使用的Linux默认开启了sebool,会不会是被它阻止了连接?

于是运行下面的命令,获取sebool关于FTP的所有设定

1

getsebool -a|grep ftp

果然发现了一些问题

根据回馈来看似乎关于FTP的很多设置都处于off状态,我特别注意了下其中的ftp_home_dir,似乎和我刚刚出现的问题有关

于是尝试运行下面的命令解决

1

setsebool ftp_home_dir 1

重新启动VSFTPD,然后再重新连接FTP,果然成功返回了主目录!

不过这样设定后重启就会失效,我们需要进行永久的设置

1

setsebool -P ftp_home_dir 1

4、进一步解决无法上传文件问题

连接上FTP后我再次尝试上传文件,可是再次接到报错信息,无权限

首先想到权限问题,运行chmod 777 目录名 后问题却依旧

突然想到刚刚sebool里面还有几个选项是off

1

2

3

setsebool allow_ftpd_full_access 1

setsebool allow_ftpd_use_cifs 1

setsebool allow_ftpd_use_nfs 1

用上面的命令把它们全部打开,然后重新连接了FTP,问题完美解决

时间: 2024-10-26 19:35:50

Centos 6.4下使用VSFTPD无法正常连接与无法上传文件的问题解决的相关文章

简单的vsftpd的配置匿名用户可以上传文件

# grep -v ^# /etc/vsftpd/vsftpd.conf anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=YES anon_world_readable_only=no anon_other_write_enable=yes anon_other_write_enable=yes dirmessage_enable=YES xferlog_enabl

CentOS 6.4下安装vsftpd、配置虚拟用户登录

概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个. 本文介绍了在CentOS 6.4下安装vsftpd.配置虚拟用户登录FTP的过程. 正文: 一:安装vsftpd 查看是否已经安装vsftpd rpm -qa | grep vsftpd 如果没有,就安装,并设置开机启动 yum -y install vsftpd chkconfig vsftpd on 二:基于虚拟用户的配置 所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的.虚拟

Centos 6.5下安装vsftpd服务器

1.查看是否安装vsftp [[email protected] ~]#rpm -qa|grep vsftpd 如果出现 vsftpd-2.2.2-13.el6_6.1.x86_64  则说明已经安装了vsftp. 如果没出现vsftpd等字段,则执行第二步: 2.安装vsftpd [[email protected] ~]# yum -y install vsftpd 3.配置vsftpd.conf文件[/etc/vsftpd/vsftpd.conf] # Example config fil

【阿里云产品公测】ACE下上传文件永久存储实践

本帖主要内容: ;$,=VB:'   在阿里云的ACE下,我是如何实现让上传的文件永久保存的? ,%"!8T   本文以PHP为例,具体知识点如下: WD# 96V   第一,扩展服务“存储服务(Storage)”的入门基础: uzg(C#sp   第二,如何结合实际项目使用: \ne1Xu:hM   uP, iGA ?lq   2 j.6   ]8q#@%v}   写教程前,先发发牢骚吧! M.fAFL   我为什么要用云引擎ACE?因为我讨厌天天去更新系统.打补丁和查日志等等,这么专业的东西

python实例编写(3)--对话框,多窗口,下拉框,上传文件

一.对话框: 例:点击百度的登录,弹出的小窗口 #coding=utf-8 from selenium import webdriver from time import sleep dr=webdriver.Chrome() dr.get("http://www.baidu.com") #一定要记得设置等待时间,要不然定位不到!!! dr.find_element_by_link_text("登录").click() sleep(3) #思路:二次定位,点击登录后

WP8_(windows phone环境下)上传文件从C#到php接口

在windows phone环境下,将手机上的图片上传到服务端(php环境): 注意事项:在上传的地方,头文件中name,例如name= img,则在php服务端处理时 ,需要约定好 存取一致 php:$_FILES['img']['name'],如若两端的name不相同则服务端无法正确获取上传的文件: public class UploadSrv { #region 选择图片   /// <summary> /// 打开照相机 /// </summary> public void

ie下获取上传文件全路径

ie下获取上传文件全路径,3.5之后的火狐是没法获取上传文件全路径的 1 /*获取上传文件路径*/ 2 function getFilePath(obj) { 3 var form = $(this).parents("form"); 4 form.validate(); 5 var fileObj = obj; 6 if (fileObj) { 7 if (window.navigator.userAgent.indexOf("MSIE") >= 1) {

https 协议下服务器根据网络地址下载上传文件问题

https 协议下服务器根据网络地址下载上传文件遇到(PKIX:unable to find valid certification path to requested target 的问题) 使用httpclient  所有站点全部信任 不做身份鉴定: 1 public static CloseableHttpClient getHttpClient() throws Exception { 2 SSLConnectionSocketFactory sslsf = null; 3 Poolin

浏览器兼容模式下,上传文件问题

//在浏览器的兼容模式下,页面没有上传图片的时候,file != null && file.Count > 0 && file[""] != null 是成立的.但file[""].FileName != ""是不成立的 if (file != null && file.Count > 0 && file["file"] != null &&a