标签:vsftpd status 提高 stack bool 支持 网络服务 匹配 文件系统
centos 7 虚拟化支持: 1、更高性能的KVM内核虚拟化支持 2、嵌套虚拟化支持,可以在KVM中安装配置OpenStack 3、继续支持作为虚拟机的Xen技术,但不再支持作为寄主机的Xen技术 4、加强了对VMWARE的技术支持,自带open-vm-tools替换vm-tools 5、RHEL 7 容器型(单独运行空间,有独立的进程列表、网络、文件系统、其他应用等。)虚拟化:支持最热的技术Docker 系统及服务管理程序修改为Systemd 防火墙命令变为firewalld 服务控制相关命令变为systemctl 控制服务和守护进程: systemd简介: 系统服务和服务器进程由systemd系统和服务管理器进行管理 功能: 1、并行化功能,提高系统的启动速度 2、按需启动守护进程,而不需要单独的服务 3、自动服务依赖关系管理,可以防止时间超时(例如:网络不可用时不启动网络服务) systemctl命令用于管理各种类型的systemd对象(也叫单元)。 [root@xiao~]# systemctl -t help //查看systemd对象 [root@xiao~]# systemctl //查询所有对象的状态 [root@xiao~]# systemctl --type=service //仅查询服务对象的状态 [root@xiao ~]# systemctl status sshd //查询指定服务的状态,如 SSH [root@xiao ~]# systemctl is-active sshd //查看服务是不是正在运行 [root@xiao ~]# systemctl is-enabled sshd //查看服务是不是设置为了开机启动 [root@xiao ~]# systemctl enable sshd //设置服务开机自动运行 [root@xiao ~]# systemctl disable sshd //设置服务开机不自动启动 [root@xiao ~]# systemctl start | stop | restart sshd 启动、关闭、重启服务 权限掩码: 当我们登录系统之后创建一个文件总是有一个默认权限的,是因为umask设置了用户创建文件的默认权限. umask设置的是权限"补码",而chmod设置的是文件权限码。 总结:通过权限掩码为文件和目录设置默认权限。 例如: 目录: [root@xiao ~]# umask 777 [root@xiao ~]# umask 0777 [root@xiao ~]# mkdir /hehe [root@xiao ~]# ll -d /hehe/ d---------. 2 root root 6 Jul 2 23:00 /hehe/ [root@xiao ~]# umask 000 [root@xiao ~]# mkdir /haha [root@xiao ~]# ll -d /haha/ drwxrwxrwx. 2 root root 6 Jul 2 23:02 /haha/ 文件: [root@xiao ~]# umask 666 [root@xiao ~]# mkdir /xixi [root@xiao ~]# ll -d /xixi/ d--x--x--x. 2 root root 6 Jul 2 23:04 /xixi/ [root@xiao ~]# touch /xixi/1.txt [root@xiao ~]# ll -l /xixi/ ----------. 1 root root 0 Jul 2 23:06 1.txt [root@xiao ~]# umask 444 [root@xiao ~]# touch /xixi/2.txt [root@xiao ~]# ll -l /xixi/ ----------. 1 root root 0 Jul 2 23:07 1.txt --w--w--w-. 1 root root 0 Jul 2 23:07 2.txt 方法: umask是从权限中"拿走"相应的位。 注意: 对于文件来说,这个数字的最大值分别是6(原因文件创建时不能赋予执行权限)。 对于目录来说,这个数字的最大值分别是7。 调整服务优先级: nice命令用来设置优先级,优先级的数值为-20~19,其中数值越小优先级越高,数值越大优先级越低, -20的优先级最高,19的优先级最低。 需要注意的是普通用户只能在0~19之间调整应用程序的优先权值,只有超级用户有权调整更高的优先权值(从-20~19)。 当调整之后的优先级小于-20时,以优先级-20来运行;当调整之后的优先级大于19时,以优先级19来运行 [root@xiao ~]# nice -n 5 httpd 如果不指定值。默认优先级为0 [root@xiao ~]# nice httpd 文件和目录的特殊权限: 设置特殊权限命令:chmod 1、Set位权限 1) suid(用户Set位权限) 作用:拥有与所有者一样的权限(以拥有文件的用户身份,而不是以运行文件的用户身份执行文件) 用S表示:S(大):表示有r或w权限;s(小): 表示有x权限。 例如:chmod u+s file.txt 2) sgid(组Set位权限) 作用:拥有与所有者一样的权限(以拥有文件的组身份,而不是以运行文件的组份执行文件) 用S表示:S(大):表示有r或w权限;s(小): 表示有x权限。 例如:chmod g+s file.txt 2、粘滞位权限 作用:仅文件的所有者(和root)可以删除目录中的文件 总结:针对目录,防删除目录中的文件。 用T表示:T(大):表示有r或w权限;t(小): 表示有x权限。 3、facl访问控制列表 命令: getfacl:查询 setfacl:设置 命令格式: setfacl -m u/g:hehe:rwx /dir | | | | 设置 用户 权限 目录 setfacl 参数 -m:设置后续acl参数 -x:删除后续acl参数 -b:删除全部的acl参数 -k:删除默认的acl参数 -R:递归设置acl,包括子目录 -d:设置默认acl selinux设置: SELinux是一个额外的系统安全层,目的是防止已遭泄露的系统服务访问用户数据。 基于用户/组/权限的安全模型称为自由决定的访问控制 基于对象并更加复杂的规则控制称为强制访问控制 要允许远程匿名访问WEB服务器。必须打开防火墙端口,恶意人员则有机会通过安全漏洞***系统,继而取得用户和组的权限。 而SELinux是用于确定哪个进程可以访问那些文件、目录和端口的一组安全规则, 每个文件、进程和端口都具有特别的安全标签,称为SELinux上下文(是一个名称)。 SELinux策略使用上下文来确定某个进程能否访问文件、目录或端口,除非规则授予访问权限。 SELinux标签具有多种上下文:用户、角色、类型(和敏感度)。 目标策略会根据第三个上下文(即类型上下文)来制定自己的规则。类型上下文的名称通常以_t结尾。 1)system_u 指的是SElinux用户,root表示root账户身份,user_u表示普通用户无特权用户,system_u表示系统进程,通过用户可以确认身份类型,一般搭配角色使用。身份和不同的角色搭配时有权限不同,虽然可以使用su命令切换用户但对于SElinux的用户并没有发生改变,账户之间切换时此用户身份不变,在targeted策略环境下用户标识没有实质性作用。 2)object_r 一般为文件目录的角色、system_r一般为进程的角色,在targeted策略环境中用户的角色一般为system_r。用户的角色类似用户组的概念,不同的角色具有不同的身份权限,一个用户可以具备多个角色,但是同一时间只能使用一个角色。在targeted策略环境下角色没有实质作用,在targeted策略环境中所有的进程文件的角色都是system_r角色。 3)type 文件和进程都有一个类型,SElinux依据类型的相关组合来限制存取权限。 4)s0:[MLS、MCS]:MCS负责对同类进程进行彼此区分,而MLS则允许一种进程拥有指向另一种进程的支配权限。(也就是说:MLS与MCS非常相似,但它为强制机制添加了"支配"这一概念。MCS标签必须在完全匹配的情况下才能通过,但一条MLS标签可以支配另一条MLS标签从而获得访问许可。) 例如: httpd_sys_content_t //文件和目录的类型上下文 httpd_port_t //端口的类型上下文 tmp_t //位于/tmp中的文件和目录的类型上下文。 1、查看安全上下文: [root@yuan ~]# id //可以查看用户的上下文 [root@yuan ~]# ls -dZ /var/www/html/ [root@yuan ~]# ls -dZ /tmp [root@yuan ~]# ps -axZ [root@yuan ~]# ps -ZC httpd 2、查看并设置SELinux模式 enforcing //强制模式 permissive //许可模式 disabled //禁用模式 [root@yuan ~]# sestatus -v //查看SELinux状态 1)临时设置 [root@yuan ~]# getenforce [root@yuan ~]# setenforce 0/1 注: 0 代表permissive(许可模式) 1 代表enforcing(强制模式) 2)永久设置 [root@yuan ~]# vim /etc/selinux/config 修改 SELINUX=enforcing|permissive|disabled [root@yuan ~]# reboot //重启生效 3、修改SELinux上下文 1)使用chcon命令 [root@yuan ~]#mkdir /www [root@yuan ~]#ls -dZ /www //查看默认的类型上下文 [root@yuan ~]# chcon -t httpd_sys_content_t /www/ [root@yuan ~]# ls -dZ /www/ 注意: 子级文件和目录会继承父级目录的上下文 使用chcon设置后,系统重启之后,将会还原为默认的上下文 2)使用restorecon命令 [root@yuan ~]# restorecon -v /www/ //查看默认上下文 [root@yuan ~]# restorecon /www/ //使用此命令来设置默认上下文 [root@yuan ~]# ls -dZ /www/ 3) [root@yuan ~]#mkdir /www [root@yuan ~]#touch /www/1.txt [root@yuan ~]#touch /www/2.txt [root@yuan ~]#ll -Z /www/ [root@yuan ~]#mv /www/* /var/www/html/ [root@yuan ~]#ls -Z /var/www/html/ [root@yuan ~]#ls -dZ /var/www/html/ [root@yuan ~]#semanage fcontext -l [root@yuan ~]#semanage fcontext -l | grep "/var/www/html" [root@yuan ~]#restorecon -Rv /var/www/html/ //设置上下文 [root@yuan ~]# semanage fcontext -a -t httpd_sys_content_t '/www/html(/.*)?' //通过正则表达式匹配。 4、修改SELinux布尔值 SELinux布尔值是更改SELinux策略行为的开关,SELinux布尔值通过启用和禁用规则,来调整策略。 1)查看布尔值 [root@yuan ~]#getsebool -a [root@yuan ~]#getsebool -a | grep "ftpd" 2)设置布尔值 [root@yuan ~]#setsebool ftpd_anon_write on //临时生效 [root@yuan ~]#setsebool -P allow_ftpd_anon_write=1 //永久生效 例: 安装SELINUX的工具包 [root@yuan ~]# rpm -ivh /media/policycoreutils-newrole-1.33.12-14.8.el5.i386.rpm 以搭建vsftpd服务器为例,使用selinux。 [root@yuan ~]# rpm -ivh /media/vsftpd-2.0.5-16.el5_4.1.i386.rpm [root@yuan ~]# vim /etc/vsftpd/vsftpd.conf [root@yuan ~]# service vsftpd restart [root@yuan ~]# chmod 777 pub/ [root@yuan ~]# getsebool -a | grep ftp [root@yuan ~]# setsebool -P allow_ftpd_anon_write=1 [root@yuan ~]# chcon -t public_content_rw_t /var/ftp/pub/ centos7图形配置: 1、图形配置IP : nmtui 2、图形配置防火墙 : firewall-config 3、查看SElinux安全上下文 semanage fcontext -l semanage fcontext -l | grep httpd_sys semanage fcontext -l | grep httpd_sys_con标签:vsftpd status 提高 stack bool 支持 网络服务 匹配 文件系统
原文地址:http://blog.51cto.com/liyuanjie/2135268