1.啥是selinux
安全增强型Linux(Security-Enhanced Linux)简称selinux,它是一个Linux内核模块,也是Linux的一个安全子系统。
selinux的状态:
Enforcing:强制模式,在selinux运作时,已经开始限制domain/type
permissive:警告模式,在selinux运作时,会有警告信息,但不会限制domain/type的存取
disabled:关闭模式
使用getenforce命令查看当前模式
更改selinux的状态命令:

             setenforce 1        ##更改selinux的状态为Enforcingsetenforce 0        ##更改selinux的状态为Permissive

注 : 当selinux关闭时,该命令无法使用
使用该命令只能切换开启时的两种状态,即Enforcing和Permissive
使用该命令切换selinux状态时,不需要重启电脑

selinux对文件的作用
当开启selinux后,selinux会给每个文件加载标签context,安全上下文必须配对,否则文件不能访问
开启selinux为Enforcing强制模式
在根目录下创建一个目录在此目录中新建一个文件,并且移动到ftp中的pub目录

用户登陆ftp查看文件

可以发现移动的文件看不到
使用ls -Z /var/ftp/命令查看该文件的安全上下文

临时更改安全上下文
chcon -t public_content_t /westos/ -R 临时更改安全上下文

chcon只是对安全上下文的临时修改,当系统selinux重启后,修改会失效

semanage  fcontext  -l | grep  /westos       查看该文件是否有默认的安全上下文
semanage  fcontext -a -t public_content_t  '/westos(/.*)?'  永久更改目录安全上下文
restorecon  -FvvR   /westos/         同步该目录的安全上下文


.本地用户上传权限的开启
getsebool -a | grep ftp 查看seLinux对ftp开关状态

setsebool -P ftp_home_dir on 允许本地用户上传文件 -P为永久开启
chmod 775 /home/*
chgrp ftp /home/*
登陆ftp,本地用户可以上传文件

匿名用户上传权限的开启
vim /etc/vsftpd/vsftpd.conf 在配置文件中打开匿名用户上传参数

写好之后重启服务
systemctl restart vsftpd

setsebool  -P  ftpd_anon_write  on    ##打开selinux匿名用户上传开关
semanage  fcontext -a -t public_content_rw_t   /var/ftp/pub   ##安全上下文加入可写的权限说明
restorecon -FvvR  /var/ftp/pub/     ##同步该目录的安全上下文
chmod  775  /var/ftp/pub
chgrp  ftp  /var/ftp/pub

测试一下:

selinux对ftp的影响相关推荐

  1. 浅谈防火墙对 FTP 的影响及故障排除

    FTP 是常见的基于TCP的网络服务,它使用了两个TCP连接来建立逻辑通信信道,即控制连接和数据连接.当客户端与服务器建立一个FTP会话时,使用TCP创建一个持久的控制连接以传递命令和应答.当发送文件 ...

  2. Linux中SELINUX状态的巨大影响

    1.基本SELINUX安全性概念 SELINUX(安全性增强型linux,内核型的加强性防火墙)是可保护系统安全性的额外机制,在某种程度上,它可以被看作是与标准权限并行的权限系统.在常规模式中,以用户 ...

  3. selinux 导致ftp文件夹出错~

    关掉selinux #setenforce 0 转载于:https://www.cnblogs.com/maomingchao/p/6867750.html

  4. phpMyAdmin FTP iptables Selinux

    四.修改配置 1.vi /usr/local/php/etc/php.ini 1) ; Directory in which the loadable extensions (modules) res ...

  5. 防火墙对FTP主动和被动模式的影响

    FTP是常见的基于TCP的网络服务,它使用了两个TCP连接来建立逻辑通信信道,即控制连接和数据连接.当客户端与服务器建立一个FTP会话时,使用TCP创建一个持久的控制连接以传递命令和应答.当发送文件和 ...

  6. linux中匿名用户怎么登陆_Linux网络配置 | FTP 实战-匿名用户登录

    第四章 Linux网络配置 4.3 使用FTP命令实现远程文件传输 FTP是在TCP/IP网络上的计算机之间传输文件的简单有效的方法,用户可以通过FTP客户程序连接到另一台计算机上,可以在目录中上下移 ...

  7. Linux -- SELinux配置及应用(1)

    一.SELinux 与强制访问控制系统 SELinux 全称 Security Enhanced Linux (安全强化 Linux),是 MAC (Mandatory Access Control, ...

  8. 修改linux ftp共享目录权限,linux系统下修改文件夹目录权限

    文件夹权限问题 Linux.Fedora.Ubuntu修改文件.文件夹权限的方法差不多.很多人开始接触Linux时都很头痛Linux的文件权限问题.这里告诉大家如何修改Linux文件-文件夹权限.以主 ...

  9. Linux之SELinux的介绍以及用法

    一.SELinux简介 1.什么是SELinux: SELinux(security enhanced linux)安全增强型Linux系统,它是一个linux内核模块,也是Linux的一个安全子系统 ...

最新文章

  1. P1852 [国家集训队]跳跳棋
  2. 计算机语言E9,九种编程语言大对比
  3. StringBuffer(字符串缓冲区)
  4. POJ - 2826 An Easy Problem?!(计算几何,好题)
  5. 产品经理专业知识50篇(一)-产品经理应该知道的一些产品术语
  6. 使用栈实现队列 Implement Queue using Stacks
  7. elasticsearch 6.x (三) linux 集群多节点部署
  8. 定义一个圆的类,输入半径,计算周长和面积并输出
  9. PHP制作钱包银行金额数字展示功能实例
  10. 报错:MetaException(message:Version information not found in metastore. )
  11. makefile中的wildcard
  12. 179 Largest Number 把数组排成最大的数
  13. RTR/SLA 在多ISP环境下下的应用--已经更新,切换后线路恢复时,已能自动恢复
  14. c语言美元符号用法,R函数()中美元符号“$”的含义是什么?
  15. java解二次方程函数_Charting for Java Swing中的FunctionSeries
  16. 实时音频编解码之四 LPC和LSF
  17. 两篇超好的C#操作并口和串口的文章
  18. 51CTO学院三周年-我的rhce7认证之路
  19. mongoDB--初识mongoDB安装过程
  20. 在升龙备份方法_[求助]关于使用再生龙备份系统的问题

热门文章

  1. python union函数_如何掌握Python union()方法及怎么用?
  2. HTML5链接tcpUDP,UDP/TCP协议 网络调试工具源码(C#)
  3. 苹果11是高通基带吗_最强对抗!小米11对抗三星、苹果华为等最高旗舰|喜欢小米吗?...
  4. restfull加签_SpringBoot RestFull API签名
  5. qos的_QoS 概述
  6. C#判断回文字符串【C#】
  7. WordPress忘记密码的5种解决方法
  8. Flutter 使用动画播放一组图片
  9. 原 BinaryWriter和BinaryReader(二进制文件的读写)
  10. TYVJ P1012 火柴棒等式 Label:枚举