daniel mota - manual de instalação e configuração - selinux

6

Click here to load reader

Upload: daniel-mota

Post on 06-Jun-2015

676 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Daniel Mota - Manual de instalação e configuração - SELinux

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA BAIANO – CAMPUS CATU

DANIEL OLIVEIRA MOTA

MAURÍCIO CAYRES NETTO

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO DO SELINUX

Catu 2012

Page 2: Daniel Mota - Manual de instalação e configuração - SELinux

SUMÁRIO

1. PRÉ-REQUISITOS ............................................................................................... 3

2. INSTALAÇÃO ...................................................................................................... 4

3. CONFIGURAÇÃO ................................................................................................ 4

4. FERRAMENTAS NATIVAS .................................................................................. 6

REFERÊNCIAS ........................................................................................................... 6

Page 3: Daniel Mota - Manual de instalação e configuração - SELinux

1. PRÉ-REQUISITOS

Para instalação e configuração do SELinux é importante ter habilidades de

aprender termos técnicos, além de relevante conhecimento em Linux, caso se

pretenda administrar serviços e manipular ou analisar policiamento é necessária

experiência e conhecimento em nível de administrador. Sendo necessários também

alguns requisitos como:

Noções de privilégios no sistema;

Conhecimento em segurança no sistema Linux/UNIX;

Noções sobre como o sistema Linux/UNIX opera em baixo-nível, tal como são

realizadas as chamadas ao Kernel para operações (entrada, saída, ler,

escrever, etc.);

Caso deseje manipular as políticas de policiamento do SELinux, faz-se necessário:

Conhecimento de programação e da teoria do sistema que é usado no

policiamento;

Familiaridade com a linguagem M4, o que ajudaria a entender algumas partes

do policiamento SELinux;

Page 4: Daniel Mota - Manual de instalação e configuração - SELinux

2. INSTALAÇÃO

Para instalar o SELinux via Central de Programas do Ubuntu Desktop,

pesquise por selinux, em seguida clique em Instalar.

Para instalação via terminal, faz-se necessário ter privilégio administrativo. Caso o

SELinux não seja encontrado na lista de pacotes, deve-se atualizar a lista de

pacotes do Ubuntu através do comando:

$ sudo apt-get update

Após a atualização da lista de pacotes, instale o SELinux através do comando:

$ sudo apt-get install selinux

Ao terminar a instalação será solicitada a reinicialização do sistema, durante o

encerramento, todos os arquivos no sistema serão rotulados. Isso pode levar algum

tempo dependendo de quantos arquivos você tenha e da velocidade do disco.

O Ubuntu realiza todas as configurações básicas necessárias para o funcionamento

do SELinux, cabendo ao administrador setar os modos de execução e aplicar

possíveis atribuições no sistema.

3. CONFIGURAÇÃO

Há três modos de execução no SELinux, o enforcing (modo de imposição),

permissive (modo permissivo) e disabled (desabilitado). Por padrão, ao instalar o

SELinux é habilitado o modo permissivo.

Os modos de execução do SELinux podem ser alterados através do carregamento

do sistema, pelo arquivo de configuração do SELinux (config) ou em tempo de

execução através do comando setenforce.

Alterar via carregamento do sistema:

No arquivo /boot/grub/menu.lst, encontre uma linha parecida com:

kernel / raiz boot/vmlinuz-2.6.28-11-generic = UUID = 5d8bcca0-b763-41b8-

ab2c-d68880f8f4b5 respingo ro quiet apparmor.enabled selinux = 0 = 1

Onde “selinux = 0” desabilita o SELinux e “selinux = 1” habilita o serviço.

Page 5: Daniel Mota - Manual de instalação e configuração - SELinux

Para alternar entre os modos de execução do SELinux deve-se acrescentar um

parâmetro adicional “enforcing = [0 | 1]” ao final desta linha:

kernel / raiz boot/vmlinuz-2.6.28-11-generic = UUID = 5d8bcca0-b763-41b8-

ab2c-d68880f8f4b5 respingo ro quiet apparmor.enabled selinux = 0 = 1 =

enforcing 0

Onde “enforcing = 0” altera o modo para permissivo, e “enforcing = 1” altera para o

modo de imposição.

Arquivo de configuração do SELinux:

O arquivo de configuração do SELinux é o /etc/selinux/config.

Nele são especificados tanto o modo de execução do SELiux quanto as políticas a

serem utilizadas e se será ativada a verificação de alteração do local de definições.

# 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 policy is loaded.

SELINUX=permissive

# SELINUXTYPE= can take one of these two values:

# default - equivalent to the old strict and targeted policies

# mls - Multi-Level Security (for military and educational use)

# src - Custom policy built from source

SELINUXTYPE=ubuntu

# SETLOCALDEFS= Check local definition changes

SETLOCALDEFS=0

Onde em “SELINUX=” será definido o modo de execução, em “SELINUXTYPE=”

será definida a política do SELinux (ubuntu é a pasta onde estão as configurações

de política do SELinux) e “SETLOCALDEFS=” verificará se será ou não ativada a

verificação de alteração do local de definições.

Alteração em modo de execução:

Os comandos para alteração em modo de execução podem alterar entre modo de

imposição e o modo permissivo.

Para consultar o modo que está em configurado no momento usa-se o comando:

# getenforce

Para alterar para o modo de imposição usa-se o comando:

Page 6: Daniel Mota - Manual de instalação e configuração - SELinux

# setenforce 1

Para alterar para o modo permissivo usa-se o comando:

#setenforce 0

4. FERRAMENTAS NATIVAS

Existem ferramentas do SELinux que auxiliam e permitem a alteração e criação de

políticas. Como exemplos podem ser citadas:

audit2allow: gera regras de permissão na política à partir de logs de

operações negadas;

audit2why: traduz mensagens de logs de operações negadas;

semodule: gerencia módulos da política;

semanage: configura elementos da política;

chcon: altera o contexto de segurança de um objeto.

REFERÊNCIAS

Para mais informações visualizar o portal do projeto SELinux:

http://selinuxproject.org/page/Main_Page