SE Linux初级教程:安装

接下来的一章我们讲解释怎样获得软件包以及安装, 和怎样获得新的SE Linux的软件包以及安装。 因为我运行的是">Debian,所以我演示的安装过程式基于它的。 我们假定你知道该怎样在你所用的发布版上安装软件, 编译内核,并且给内核打补丁。

如果你是从旧的SE Linux上升级的, 并且运行了 SE Linux kernel, 请进入permissive 模式 (用 avc_toggle 命令) 继续运行指令。

3.1基于Debian的安装

对于Debian 的开发版(不稳定版):

将下面的文字写到你的 /etc/apt/sources.list 文件:

deb http://www.coker.com.au/newselinux/ ./

这个包是由 Russell Coker 维护的.

在写这篇文档的时候 (2003年11月末) 还没有可以Debian上使用的稳定版的新的SE Linux 安装包。 开发版的 .deb文件可以从上面的网站获得。请确保获得了最新版本的包。 因为包的名字一直都在变,所以我没有列出, 不过他们列出了需要的所有包的名字。

下面我们列出了对于新的 SE Linux,哪些报需要在Debian上安装。在安装之前你不需要引导SE Linux kernel, 所以你可以安装它们了:

• libselinux1 包含了新 SE Linux的共享库。 • selinux-policy-default 包含了范例策略文件,这个策略文件应用到了很多一般应用程序
例如postfix,
sendmail, X 等等。 • checkpolicy 包含了安全策略的编译器。 • policycoreutils 包含了核心工具如 setfiles, load_policy, newrole 等等。 • selinux-utils 包含了例如查询策略的操作工具。 • selinux-doc 包括了一些帮助文档 。

Debian系统所需的附加软件包列表:

• kernel-patch-2.4-lsm 一个支持LSM 和SE Linux的内核补丁。 • coreutils 包含了改进版的命令例如cp, mv, ls 。 • procps 包含了改进版的 ps and top命令。 • sysvinit 是一个在引导时加载策略的补丁。 • dpkg 我们需要一个改进版的dpkg,安装之后可以保证对文件的正确标记。 • libpam-modules 因为一些安全原因。 • logrotate 一个改进版的 logrotate 可以保留一个新建文件的 SE Linux 安全上下文。 • cron 一个改进版的cron,保证计划任务执行的脚本运行在正确的域内。

3.2基于Fedora的安装

新SE Linux的RPM包可以在这里找到 ftp://people.redhat.com/dwalsh/SELinux

这些RPM包的维护者是Dan Walsh.

我在我的Fedora测试机上安装SE Linux时, 我做了这些工作:

* 编辑yum.conf 文件包含如下内容:

[main]

cachedir=/var/cache/yum

debuglevel=2

logfile=/var/log/yum.log

pkgpolicy=newest

distroverpkg=fedora-release

tolerant=1

exactarch=1

[development]

name=Fedora Core $releasever - Development Tree

#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386

baseurl=http://mirror.dulug.duke.edu/pub/fedora/linux/core/development/i386

[SELinux]

name=SELinux repository

baseurl=ftp://people.redhat.com/dwalsh/SELinux/Fedora

* 运行的命令进行安装

yum install policy checkpolicy policycoreutils policy-sources pam passwd vixie-cron

* 在所有包安装完之后

cd /etc/security/selinux/src/policy

make load

make relabel

*重起机器.

时间: 2024-09-20 01:14:53

SE Linux初级教程:安装的相关文章

SE Linux初级教程:介绍

本文的最原始版本为2004年3月所写,此份HOWTO是作者在今年2月根据最新的SE Linux所作的修改后的版本.新的SE Linux与以前的有比较大的变化,而且这项技术本身也正在飞速的发展,并未最后成熟.阅读本文是需要对Linux本身有一定深度的了解作为基础的.本文并不是Linux的初级教程,但却是SE Linux技术的初级教程. 新的SE Linux是基于2.6.*内核的,但是仍然支持2.4.*的内核.这份文档的大部分内容是原来的,我在需要修改的地方做了调整. 这份文档是美国http://w

SE Linux初级教程:建立用户帐户

现在来作点有意思的事情! 我们将会建立一个 SE Linux 用户并分配给他一个角色,然后为用户设定默认的安全上下文. 在旧的SE Linux环境下, 封装程序的建立用 vipw (svipw)来设置,比如, useradd (suseradd), passwd (spasswd), chfn (schfn) 等, 在新的 SE Linux环境下, 这些程序有其它的名称. 5.1 建立一个新的用户 我们现在建立一个新用户.我们叫它setest. 转换到 sysadm_r:sysadm_t 角色:

SE Linux初级教程:添加新的用户域

现在让我们建立一个我们自己的用户域, 并把它叫做second_t . 我们也将会建立一个新的角色叫做second_r . 要建立second_r 角色首先在前面的部分(刚刚分配了 user_r 角色并且并不真正建立这样的用户) 中一步一步跟着作,但是不要运行第 5.2 节中的make命令.在你已经编辑 /etc/selinux/user之后,回到这里并且继续下一部分,关于编辑使用者领域文件的部分. 关于为什么我不想要你运行make指令的原因,是因为早先的部分刚刚分配了缺省的一个 user_r 的

SE Linux初级教程:总揽

接下来是有关在什么情况下你该使用SE Linux和它的基本使用的简短介绍. 2.2 部分规定了后面章节将常使用的的术语., 所以请熟悉他们. 2.1 为什么使用SE Linux? SE Linux 可以为你的系统提供较棒的安全防护. 使用者能被分配预先定义好的角色,以便他们不能存取文件或者访问他们不拥有的程序. 这可不是简单的 " chmod 777" 同等物操作. 这在角色, 或他所在的安全上下文已经限制接触的文件和其他的资源的使用者定义中是不同于一般的 Unix 许可权限的,除了在

在Linux系统中安装Go语言的详细教程

  这篇文章主要介绍了在Linux系统中安装Go语言的详细教程,由于国内很多人对谷歌的盲目追捧,导致Go语言在国内的人气远超国外...需要的朋友可以参考下 Go (也叫 "golang")是一款由Google最初开发的编程语言.它自诞生就有几个设计原则:简单性.安全性和速度.Go语言发行版拥有各种调试.测试.调优和代码审查工具.如今Go语言和它的工具链在大多数Linux发行版的基础仓库都可用,用默认的包管理器就可以安装. 在Ubuntu.Debian 或者 Linux Mint上安装G

Linux系统中安装使用ntfs-3g挂载NTFS分区的教程

  Linux系统中安装使用ntfs-3g挂载NTFS分区的教程.系统环境默认安装后,不能访问ntfs分区,在安装和配置ntfs-3g以后即可. 1.安装ntfs-3g 代码如下: apt-get -y install ntfs-3g 2.创建挂载的文件夹 我windows下面有三个磁盘.都需要访问.所以在/mnt中新建了三个文件夹,分别是/mnt/C./mnt/D./mnt/E 3.挂载分区 首先使用fdisk命令查看目前磁盘情况 代码如下: debian-hcshangxinli:/home

Linux VPS CentOS安装LNMP系统环境教程

我们国人使用VPS安装的系统环境最多的可能就是LNMP,笔者最近也在学着安装和使用VPS,也看到很多种系统环境可以选择,当然包括可以选择安装面板管理.暂时我不选择安装面板,一来使用面板没有技术含量,二来从难处学习,直接使用SSH操作VPS感觉还是非常有面子的.从多个系统中,我暂时也比较不了好坏,每一个都安装和测试一遍,并且把相关的信息都记录,一遍日后对比. 今天先来在CentOS中安装LNMP系统,最低的系统要求为128M内存,我相信大家的VPS最低也应该有256M内存,我测试的机器为512M内

Linux下Docker安装和使用教程_docker

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器. 开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal.OpenStack集群和其他的基础应用平台. Docker的源代码全部是用Go语言写的. 一.基础环境 1.角色.ip.版本.内核 serverA 10.1.10.236 3.16.0-4-amd64 8.1 docket docket 1.6.2 二.安装docter 1.添加源 echo "d

Linux下Redis安装配置教程_Redis

redis作为NoSQL数据库的一种应用,响应速度和命中率上还是比较高效的.项目中需要用集中式可横向扩展的缓存框架,做了一点调研,即便redis.memcached存在效率上的差异(具体比较参考http://timyang.net/data/mcdb-tt-redis/),但其实都能满足目前项目的需求:但是redis还是比较风骚的,支持链表和集合操作,支持正则表达式查找key,目前项目缓存的结果大多是链表,如果链表新增或者修改数据的话,redis就体现出了极大的优势(memcached只能重新加