针对 CentOS 的 SELinux 拦截 vsftpd 问题(不关闭SELinux)

vsftpd+SSL/TLS在CentOS上的安全落地实践 FTP over TLS(即FTPS)是一种基于传统FTP协议叠加SSL/TLS加密层的文件传输安全方案,其核心原理是通过TLS握手协商加密算法、验证服务器身份并建立加密数据通道。技术价值在于兼顾兼容性与可控性,无需改造客户端即可实现传输加密,特别适用于遗留系统和内网文件交换场景。实际落地中需协同处理证书管理、密码套件筛选、SELinux策略、被动模式网络穿透等多层约束。本文聚焦CentOS 7环境下vsftpd的FTPS真实部署,深入解析OpenSSL版本兼容性、rsa_cert_file配置差异、ssl 阅读详情

VSFTPD是一个FTP服务器程序,然后SELinux是CentOS的防火墙组件。由于 vsftpd 默认被 SELinux 拦截,所以会遇到的FTP以下的问题:

  1. 226 Transfer done (but failed to open directory).(传输完成,但是打开路径失败)
  2. 550 Failed to change directory(更改路径失败)
  3. 553 Could not create file.

  4. 或者干脆在发送了LIST命令以后,服务器没响应,超时断开。

遇到这样的问题,通常是vsftpd 没有足够的权限,很有可能是被SELinux阻止了。网络上流行的解决办法是直接关闭SELinux,这样做会引起其它安全问题,所以下面还有其它更好的方法。
为了确定是不是这个问题,我们需要先试着关闭SELinux,看是不是就是它导致的。

setenforce 0 #暂时让SELinux进入Permissive模式

运行完以后再尝试,如果FTP能取得目录、上传下载,那么证明就是SELinux导致的。

解决办法:我们可以运行 getsebool -a | grep ftpd 判断查看权限

getsebool -a | grep ftpd

#以下是显示出来的权限,off是关闭权限,on是打开权限
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
ftp_home_dir --> off

其中,ftp_home_dir和allow_ftpd_full_access必须为on 才能使vsftpd 具有访问ftp根目录,以及文件传输等权限。

运行以下命令:

setsebool -P ftp_home_dir 1
setsebool -P allow_ftpd_full_access 1

注意这两条命令一般需要花上十几秒钟才能运行完
运行完了以后,我们再重新恢复SELinux进入Enforcing模式。

setenforce 1 #进入Enforcing模式

如果不出意外的话,我们就可以访问到ftp目录了,vsFTPd就可以正常上传下载文件了。

但是如果就此问题还没解决的话,可能是FTP访问的目录属性不够。建议用 chmod -R 777 路径 将路径读写属性设置为777,再尝试,通常也能解决问题。

CentOS 6 vsftpd 安全配置与 chroot 深度解析 FTP 是一种基础但高风险的文件传输协议,其明文认证与目录越权隐患长期被安全审计重点关注。vsftpd 作为 Linux 下最轻量、最可控的 FTP 守护进程,凭借严格的权限沙箱、chroot 隔离机制和可验证的配置模型,成为等保合规与老旧系统维保的关键组件。在 CentOS 6 这类基于内核 2.6.32 的长期支撑环境中,vsftpd 不仅需正确启用 local_enable 和 chroot_local_user,更必须协同 SELinux 上下文重标定、PAM 认证链校验及 SysV init 启动 阅读详情

相关推荐

vsftpd SSL/TLS 配置全指南:从证书生成到生产级加固

FTP 是一种不加密的文件传输协议,其明文传输特性在现代网络环境中极易导致凭据泄露与数据窃听。TLS/SSL 加密通过公钥基础设施(PKI)和密码套件协商,在传输层构建安全通道,有效抵御中间人攻击与流量嗅探。其技术价值体现在合规性保障(如等保、ISO 27001)、审计通过率提升及基础通信保密能力强化。典型应用场景包括 Linux 服务器(CentOS、麒麟系统)的运维管理、Docker 环境下的配置同步,以及多客户端(FileZilla、Cyberduck、Windows 资源管理器)混合访问场景。本文聚

weixin_33863087的博客 395

解决SELinux is preventing *** 的问题

也可直接在配置文件【/etc/sysconfig/selinux】中设置SELinux=disabled,配置后需要重启计算机,如果没有时间重启可以使用。查看了/etc/systemd/system/ 下面的服务文件,文件存在,于是执行systemctl daemon-reload,发现还是不行。禁用SELinux 之后服务可以正常找到,到现在还不知道SELinux为什么要阻止对文件进行读取访问。有大佬知道的望评论指点迷津。最近在公司做一个软件迁移的工具时,将软件的服务迁移之后,使用。

有头发的代码匠的博客 7932

FTP:226 transfer done but failed to open directory

在centOS上搭建ftp,使用ftp localhost测试匿名登录,查看匿名目录文件夹的时候, 发现匿名登录成功,但是查看目录却失败,报了这个错误:226 transfer done but failed to open directory 目录 1、将SELINUX的值设置为disable 2、重启服务器 3、运行结果 1、将SELINUX的值设置为disable vim /etc/selinux/config 2、重启服务器 reboot 3、运行结果 ...

猿小白的博客 4123

226 Transfer done (but failed to open directory)以及Centos7搭建FTP服务器

Centos7-ftp服务器报226错误 其实这个错误主要原因是没有关闭selinux 1.关闭selinux vim /etc/selinux/config| 修改selinux配置文件 把 SELINUX=enforcing| 修改成 SELINUX=disabled :wq!| 保存退出 setenforce 0| 使配置生效 ...

weixin_44232093的博客 6642

Innovus每日精要 | 用setScanReorderMode优化扫描链,效率翻倍!

在数字后端物理设计的世界里,扫描链优化就像修路一样,既要保证数据流的顺畅,又要尽量减少绕路和资源浪费。它的主要任务是优化扫描链的连接方式,确保数据能快速、安全地流动。无论是多电压域设计、分区设计,还是复杂的逻辑门,它都能帮你搞定。后,你会发现它不仅能帮你节省时间,还能让你的设计更优雅、更高效。下次遇到扫描链问题时,不妨试试这些技巧,说不定你的设计效率会翻倍!,它能帮你搞定扫描链优化的那些事儿,让你的设计更高效、更优雅。接下来,我们看看这个命令的几个关键选项,以及它们的实际用途。扫描链优化看似枯燥,但掌握。

weixin_50820814的博客 1442

通达信指标加密DLL加密解密三个公式源码准确率90%以上超级指标精准买卖绝世指标

通达信指标加密DLL加密解密三个公式源码准确率90%以上超级指标精准买卖绝世指标 1 超级指标 指标公式:买卖提示非常明显(适合通达信) 指标源码如下: M:3 100 60 N 3 100 30 散户线: 100*(HHV(HIGH,M)-CLOSE)/(HHV(HIGH,M)-LLV(LOW,M));RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; K:=SMA(RSV,5,1); D:=SMA(K,3,1); J:=3*K-2*D;主力

m0_60244077的博客 3万+

关于我遇到的这个问题:226 transfer done but failed to open directory

遇到这个问题有以下几种情况: 1,selinux没有被disable  。      执行setenforce 0     也是不行的,主要是因为selinux还在运行中,会保护网络端口,而ftp服务的端口就是被selinux限制。    最佳方案就是之间到配置文件(/etc/selinux/config)中,将enforcing改成disabled2,用户权限问题,你用什么用户登录的,然后文件夹...

yes_is_ok的博客 8064

[3D检测系列-PV-RCNN] PV-RCNN实战指南:从论文解析到代码调试全流程

本文提供了PV-RCNN在3D目标检测领域的实战全流程指南。文章深入解析了其Point-Voxel融合的核心思想,并详细演示了从环境搭建、数据准备、代码复现到模型训练与调试的具体步骤,特别针对常见的报错问题给出了解决方案,帮助开发者高效掌握这一经典算法。

weixin_29189381的博客 480

CentOS 7下VSFTPD部署与SELinux安全加固实战

FTP服务作为基础网络协议,在工业控制、医疗影像、制造产线等强稳定性场景中仍不可替代。其核心原理是基于TCP的双通道通信(控制端口21+数据端口动态协商),技术价值在于轻量、可控、可审计,尤其适配老旧物理服务器与嵌入式终端。典型应用场景包括PLC日志定时上传、DICOM影像同步、财务报表加密交接等。在CentOS 7这一广泛遗留但已停止维护的系统中,VSFTPD凭借原生SELinux支持、零内存泄漏进程模型和确定性配置语法,成为满足等保2.0‘身份鉴别’‘访问控制’‘安全审计’要求的首选FTP服务端。本文聚

weixin_30582943的博客 180

基于单片机控制的开关电源设计

采用开关电源技术和MCU模块,凭借可靠性高、易于调适的特点,可以更高效地发挥出二者的优势,从而实现更好的组合。stm32的起动模式是通过Boot0和Boot1两个管脚的高低电平来决定的,当stm32被供电之后,这两个管脚的电平。在 VCC上,键盘的一头(列线)被连接到 VCC上,而在“0”的编程输出中,则用来进。,在开关管打开的情况下,由输入电力供给电流,感应装置存储   Buck变换器是一种非隔离式的电压转换器[10]整流电路对输入电压进行整流,再经过滤波电路,即Dc电压是直流/直流变换器的直流输入。

QQ1694456187的博客 2307

深信服桌面云实战:从零部署到高效运维的关键配置指南

本文提供了一份深信服桌面云从零部署到高效运维的实战指南。内容涵盖项目启动阶段的资源、网络与存储规划,详细演示了VMP与VDC平台的安装与对接,并深入讲解了制作虚拟机模板、配置用户体系、优化终端策略等核心步骤。最后,分享了包括CPU公平分配、智能调度在内的关键性能调优与高阶运维技巧,旨在帮助管理员构建稳定、高效的云桌面环境。

blockchain9miner的博客 451

CentOS VPS下vsftpd强制TLS加密配置实战指南

FTP是一种基础文件传输协议,但其明文传输特性天然存在凭证泄露与中间人劫持风险。SSL/TLS作为保障通信机密性与完整性的核心安全机制,通过非对称加密协商会话密钥、对称加密保护数据流,从根本上阻断流量嗅探。在CentOS等RHEL系发行版中,vsftpd因深度集成SELinux、firewalld及systemd而成为首选FTP服务;结合自签名证书快速启动、TLS 1.2+强密码套件(如HIGH:!aNULL:!MD5:!RC4:!3DES)与严格配置(force_local_data_ssl=YES),可

weixin_34122604的博客 318

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs. Replicate the

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs.

zhengzaifeidelushang的博客 724

Centos7以上版本 vsftpd安装、firewall和SELinux配置

CentOS7.0以上版本更换了防火墙为firewall CentOS7.0之前版本的防火墙配置不再适用 firewall防火墙配置 重启防火墙服务 systemctl restart firewalld.service 重载防火墙配置 firewall-cmd --reload 添加端口 firewall-cmd --zone=public --add-port...

3LDgQiQa 2231

SAP 的预算控制并非单一功能,而是根据管控的精细度和业务场景,主要通过三个模块实现:CO(成本控制)、FM(基金管理) 和 PS(项目系统)

SAP系统提供三种预算控制模型:基于CO模块的成本中心/内部订单预算管控,适用于日常费用管理;基于FM模块的基金中心/承诺项目预算控制,满足公共部门严格资金管理需求;基于PS模块的WBS元素预算控制,专为项目型企业设计。各模型通过特定配置实现预算编制、审批、控制和分析功能,并配有核心事务代码(T-Code)支持全流程操作。企业可根据业务场景选择适合的预算控制方式,实现从预算编制到执行监控的闭环管理。

金牌架构师 250

MaxScript批量修改材质、贴图名称

MaxScript批量修改材质、贴图名称1 实现效果1.1 修改前材质、贴图名称1.2 修改后2 代码 1 实现效果 1.1 修改前材质、贴图名称 1.2 修改后 2 代码 prefixName = "prefiname" maxFile = "maxfilepath" makeDir "newBitmappath" mapsPath = newbitmappath + "\\" fn formatStr index = ( str = index as string newS

郑德帅 3240

CentOS 6 vsftpd 配置避坑指南:解决 anonymous_enable 和 chroot_local_user 常见错误

FTP 是一种基础网络文件传输协议,其核心机制依赖于客户端与服务端的明文命令交互和数据通道协商。在传统 Linux 系统中,vsftpd 作为轻量、安全的 FTP 服务实现,广泛用于嵌入式设备、工控系统及老旧政企环境。其配置逻辑紧密耦合内核版本、glibc 版本与 SELinux 策略,尤其在 CentOS 6(内核 2.6.32、vsftpd 2.2.2)中,`anonymous_enable` 的布尔值校验极为严格,仅接受 `YES/NO/true/false` 四种形式;而 `chroot_local

weixin_34245082的博客 431

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

CentOS 7.6 vsftpd 搭建文档(双用户权限+被动模式)

密码安全:为 ftpuser1/ftpuser2 设置强密码(字母 + 数字 + 特殊字符)用户名 / 密码:ftpuser1 / 你的密码、ftpuser2 / 你的密码。端口限制:被动模式端口段可缩小(如 30000-30005),减少暴露面。目录权限:ftpuser1 目录属主保持 root,避免被篡改。ftpuser2:可上传 / 下载 / 删除文件,无权限报错。ftpuser1:可下载文件,无法上传 / 删除。ftpuser2:下载 / 上传 / 删除权限。ftpuser1:仅下载权限。

qq_35757822的博客 948

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Centos7上安装vsftpd服务端,虚拟登录并控制权限

centos7安装FTP服务端(vsftp安装) 虚拟登录并分账号管理

weixin_43059846的博客 774

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

VMware虚拟机部署vsftpd FTP服务器实战指南

FTP服务器是Linux网络服务的基础组件之一,其核心原理涉及TCP连接管理、主动/被动模式协商、用户权限隔离及日志审计机制。在虚拟化环境中部署时,需综合考虑虚拟网络拓扑(NAT/桥接/仅主机)、SELinux策略、firewalld/iptables规则、systemd服务生命周期管理等多层技术栈。vsftpd作为企业级首选FTP守护进程,支持TLS加密、虚拟用户认证、chroot目录限制与xferlog审计日志,适用于开发协同、内网文件共享与合规性上传场景。本文聚焦VMware Workstation

weixin_34234721的博客 404

CentOS7 搭建vsftpd详细教程

1.安装vsftp 用yum命令查找到了我们想要的vsftpd,开始安装。 [root@localhost ftp]# yum search vsftpd Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.163.com * extras: mirrors.16...

sun_96216的专栏 361

FTP上传文件提示550 Failed to change directory.

FTP上传文件提示550 Failed to change directory.

m0_56060952的博客 887

centos7安装ftp服务登录不上的坑总结

centos7 安装FTP服务的问题

西瓜咬人啦 4774
上一篇: vsftpd配置文件详解
下一篇: mysql相似于oracle的to_char() to_date()方法
programer_bei
博客等级 码龄11年 13粉丝 36原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值