selinux

selinux简介

落爺英雄遲暮 提交于 2020-03-01 01:56:09
selinux概念 由美国国家安全局(NSA)和SCC联合开发的,强制访问控制的安全模块。2000年以GPL开源,linux2.6内核后集成在内核里。 不启用selinux时,访问模式叫:DAC(discretionary access control)自由访问控制 在DAC模式下的进程能够访问哪些资源是由启用这个进程的用户身份决定的,这个用户能访问的,这个进程都可以访问。 启用selinux时,访问模式叫:MAC(Mandatory access control)强制访问控制 在MAC模式下的进程能够访问哪些资源是由selinux设定的。 selinux的工作类型 selinux的工作类型定义在/etc/selinux/config文件中 centos7: # cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux

selinux控制命令semanage

只谈情不闲聊 提交于 2020-02-29 08:18:38
命令semanage 软件: policycoreutils-python 用途: SELinux策略管理工具 语法: ]# semanage 位置参数 选项 位置参数: fcontext 管理文件安全上下文的映射 boolean 管理布尔值的启停 import 导入本地定制 export 导出本地定制 login 管理linux用户和SELinux受限用户之间的登录映射 user 管理SELinux受限用户(SELinux用户的角色和级别) port 管理网络端口类型 interface 管理网络接口类型 module 管理SELinux策略模块 node 管理网络节点类型 permissive 管理进程类型的实施模式 dontaudit 在策略中禁用/启用dontaudit规则 选项: -l, --list 列出所有 -a, --add 添加 -t TYPE, --type TYPE 指定类型 -m, --modify 修改 -d, --delete 删除 -D, --deleteall 删除所有 实例: ]# yum -y install policycoreutils-python #安装软件 ]# semanage fcontext -l #列出安全上下文对象类型的记录 ]# semanage fcontext -a -t httpd_sys_content_t "

Centos 6.5 优化 一些基础优化和安全设置

本小妞迷上赌 提交于 2020-02-28 15:39:38
本文 centos 6.5 优化 的项有18处: 1、centos6.5最小化安装后启动网卡 2、ifconfig查询IP进行SSH链接 3、更新系统源并且升级系统 4、系统时间更新和设定定时任 5、修改ip地址、网关、主机名、DNS 6、关闭selinux,清空iptables 7、创建普通用户并进行sudo授权管理 8、修改SSH端口号和屏蔽root账号远程登陆 9、锁定关键文件系统(禁止非授权用户获得权限) 10、精简开机自启动服务 11、调整系统文件描述符大小 12、设置系统字符集 13、清理登陆的时候显示的系统及内核版本 14、内核参数优化 15、定时清理/var/spool/clientmqueue 16、删除不必要的系统用户和群组 17、关闭重启ctl-alt-delete组合键 18、设置一些全局变量 1、启动网卡 #centos6.x最小化安装后,网卡默认不是启动状态 ifup eth0 2、SSH链接 ifconfig 查看IP后SSH终端连接。 3、更新源 最小化安装是没有wget工具的,必须先安装在修改源) yum install wget 备份原系统更新源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 进入yum.repos.d目录 cd /etc

如何使用semanage管理SELinux安全策略

一曲冷凌霜 提交于 2020-02-28 10:54:59
Semanage是用于配置SE Linux 策略某些元素而无需修改或重新编译策略源的工具。 这包括将Linux用户名映射到SELinux用户身份以及对象(如网络端口,接口和主机)的安全上下文映射。 简介 Semanage是用于配置SELinux策略某些元素而无需修改或重新编译策略源的工具。 这包括将Linux用户名映射到SELinux用户身份以及对象(如网络端口,接口和主机)的安全上下文映射。 实验环境 Centos 7.7操作系统 Selinux已经开启 开启方式: [root@localhost ~]# sed -i '/^SELINUX/s/disabled/enforcing/g' /etc/selinux/config # 然后重启一下操作系统 [root@localhost ~]# reboot # 重启完成之后检查一下是否是enforcing模式 [root@localhost ~]# getenforce Enforcing 常用参数 port : 管理定义的网络端口类型 fcontext : 管理定义的文件上下文 -l : 列出所有记录 -a : 添加记录 -m : 修改记录 -d : 删除记录 -t : 添加的类型 -p : 指定添加的端口是tcp或udp协议的,port子 命令 下使用 -e : 目标路径参考原路径的上下文类型,fcontext子 命令 下使用

Android SELinux开发入门指南之SELinux基础知识

我们两清 提交于 2020-02-28 07:02:51
   Android SELinux开发入门指南之SELinux基础知识 前言    SEAndroid是在Android系统中基于SELinux推出的强制访问控制模型,来完善自主访问模型中只要取得root权限就可以为所欲为的情况。 SELinux是一种基于域-类型(domain-type)模型的强制访问控制(MAC)安全系统,其原则是任何进程想在SELinux系统中干任何事,都必须先在安全策略的配置文件中赋予权限。凡是没有在安全策略中配置的权限,进程就没有该项操作的权限。在SELinux出现之前,Linux的安全模型是DAC(DiscretionaryAccess Control),译为自主访问控制。其核心思想是进程理论上所拥有的权限与运行它的用户权限相同。比如,以root用户启动shell,那么shell就有root用户的权限,在Linux系统上能干任何事。这种管理显然比较松散。在SELinux中,如果需要访问资源,系统会先进行DAC检查,不通过则访问失败,然后再进行MAC权限检查。 一. SELinux基础知识 SELinux涉及的基本知识比较多,下面让我们来一一细说。 1.1 SELinux的三种模式 SELinux分为三种模式,下面我们看看究竟是那三种模式: Disable模式 此种模式关闭SELinux检测,不进行任何SELinux权限检查,畅通无阻。

有没有办法让非root进程绑定到Linux上的“特权”端口?

巧了我就是萌 提交于 2020-02-28 04:19:09
在我的开发盒上有这个限制是非常烦人的,因为除了我之外不会有任何用户。 我知道 标准的解决方法 ,但它们都没有完全符合我的要求: authbind (Debian测试中的版本,1.0,仅支持IPv4) 使用iptables REDIRECT目标将低端口重定向到高端口 (对于ip6tables,iptables的IPv6版本尚未实现“nat”表) sudo(以root身份运行是我想避免的) SELinux(或类似)。 (这只是我的开发盒,我不想引入很多额外的复杂性。) 是否有一些简单的 sysctl 变量允许非root进程绑定到Linux上的“特权”端口(端口小于1024),或者我只是运气不好? 编辑:在某些情况下,您可以 使用功能 来执行此操作。 #1楼 在启动时: iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 然后,您可以绑定到前进的端口。 #2楼 您可以执行端口重定向。 这就是我在Linux机器上运行的Silverlight策略服务器所做的 iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 943 -j REDIRECT --to-port 1300 #3楼 您可以设置本地SSH隧道,例如

docker网络故障之网络阻塞

回眸只為那壹抹淺笑 提交于 2020-02-28 01:39:26
故障情形 今天接到项目上开发人员的问题反馈,客户有一台虚机在安装完docker之后,启动一些docker容器服务时,发现这些容器服务无法正常启动。通过 tail -f /var/log/messages 查看系统log, 发现系统一直在报错,主要内容是 bro:port 2(veth0) entered blocking state 或 bro:port 1(vxlan0) entered blocking state ,网卡呈现阻塞的状态,具体报错详见下图: 使用 systemctl status docker -l 查看docker运行状态,发现docker是正常运行的,但是状态信息里打印的有error错误,都是网络方面的报错~ 故障排查和处理 上面 docker 运行状态是正常的,说明 docker 的安装部署应该是没问题的,从报错上看应该是主机网路的问题,经排查发现系统的 selinux 是 enforcing 状态。 临时关闭 selinux 重启 docker 发现网络恢复正常~ 主要排查步骤如下: (1)查看系统当前selinux的状态 getenforce (2)关闭selinux #临时关闭 setenforce 0 #永久关闭 sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/sysconfig/selinux

将公钥添加到〜/ .ssh / authorized_keys不会自动登录

非 Y 不嫁゛ 提交于 2020-02-28 01:00:37
我将公共ssh密钥添加到authorized_keys文件中。 ssh localhost 应该在不询问密码的情况下登录我。 我这样做并尝试输入 ssh localhost ,但它仍然要求我输入密码。 我还有其他任何设置可以让它运作吗? 我遵循了更改权限的说明: 如果我执行 ssh -v localhost 则结果如下 debug1: Reading configuration data /home/john/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug1: Connecting to localhost [127.0.0.1] port 22. debug1: Connection established. debug1: identity file /home/john/.ssh/identity type 1 debug1: identity file /home/john/.ssh/id_rsa type -1 debug1: identity file /home/john/.ssh/id_dsa type -1 debug1: Remote protocol version 2.0, remote

RHCSA考试总结

此生再无相见时 提交于 2020-02-26 22:58:18
环境准备: 1、修改root用户密码: 重启虚拟机,在开机的时候按 E 键进入 grub2 的引导菜单,找到 linux16 这一行,把 ro 后的所有字符全部删除,然后在 ro 字符后输入 rd.break ,然后再按 ctrl + x 引导系统,获得一个命令行后,如果找不到命令时,按回车键获得命令行 # 输入以下命令: switch_root: /# mount -o remount,rw /sysroot switch_root: /# chroot /sysroot # 修改成题目要求的密码 sh-4.2# echo flectrag|passwd --stdin root sh-4.2# touch /.autorelabel sh-4.2# exit switch_root: /# exit 2、登陆系统,进入图形化界面 # 等待系统出现 login 界面后,输入用户名 root 及密码 # 在提示符后输入 startx 进入图形界面(如果不想进入图型界面也可以,不影响做题) localhost login: root password: [flectrag] $ startx 3、修改网络配置和主机名 $ nmcli connection modify "System eth0" ipv4.addresses "172.25.0.11/24 172.25.0.254"

zabbix4.4 启动失败分析

╄→гoц情女王★ 提交于 2020-02-26 16:45:53
zabbix是基于WEB界面提供分布式系统监视以及网络监视功能的企业级开源解决方案,能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 做为开源用户的支持者,我们大部分环境用的软件包含监控软件、数据库、继承应用、操作系统等都是用开源的,例如centos、PG、zabbix、openshift等,但是开源的在成熟度上是不错,但是安装软件有时比较麻烦,例如centos的安全开关,默认情况下会导致我们在安装openshift、zabbix等导致失败,而错误日志提示往往与实际十万三千里,但是有经验的在安装完系统后会有意识性的去修改配置,避免不必要的问题, 如下问题: 在安装配置好zabbix后无法正常启动,原因是SELINUX设置问题导致启动失败, 故障分析: [root@localhost zabbix]# systemctl start zabbix-server.service Job for zabbix-server.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-server.service" and "journalctl -xe" for details. [root