3.3. Criando perfis do Novell AppArmor com a GUI do YaST

Abra a GUI do YaST iniciando YaST+Novell AppArmor a partir do menu principal. O Novell AppArmor é aberto na interface do YaST conforme mostrado abaixo:

[Note]Nota

Você também pode acessar a GUI do YaST abrindo uma janela de terminal, conectando-se como Root e digitando yast2.

Controles principais do YaST para o Novell AppArmor

No frame da direita, estão vários ícones de opção do Novell AppArmor. Se o Novell AppArmor não for exibido no frame esquerdo da janela do YaST ou se os ícones do Novell AppArmor não forem exibidos, reinstale o Novell AppArmor. As seguintes ações estão disponíveis através do Novell AppArmor.

Clique em um dos seguintes ícones do Novell AppArmor e vá para a seção indicada abaixo:

Assistente para Adicionar Perfil

Para obter detalhes sobre as etapas, consulte a Seção 3.3.1, “Adicionando um perfil usando o assistente” (↑Guia de Administração do Novell AppArmor 2.0).

Adicionar Perfil Manualmente

Adiciona um perfil do Novell AppArmor para um aplicativo no seu sistema sem a ajuda de um assistente. Para obter detalhes sobre as etapas, consulte a Seção 3.3.2, “Adicionar Perfil Manualmente” (↑Guia de Administração do Novell AppArmor 2.0).

Editar Perfil

Edita um perfil do Novell AppArmor existente no seu sistema. Para obter detalhes sobre as etapas, consulte a Seção 3.3.3, “Editando um perfil” (↑Guia de Administração do Novell AppArmor 2.0).

Apagar Perfil

Apaga um perfil do Novell AppArmor existente no sistema. Para obter detalhes sobre as etapas, consulte a Seção 3.3.4, “Apagando um perfil” (↑Guia de Administração do Novell AppArmor 2.0).

Assistente para Atualizar Perfil

Para obter detalhes sobre as etapas, consulte a Seção 3.3.5, “Atualizando perfis a partir de entradas do Syslog” (↑Guia de Administração do Novell AppArmor 2.0).

Relatórios do AppArmor

Para obter detalhes sobre as etapas, consulte a Seção 4.3, “Relatórios” (↑Guia de Administração do Novell AppArmor 2.0).

Painel de Controle do AppArmor

Para obter detalhes sobre as etapas, consulte a Seção 3.3.6, “Gerenciando o status do Novell AppArmor e dos eventos de segurança” (↑Guia de Administração do Novell AppArmor 2.0).

3.3.1. Adicionando um perfil usando o assistente

O Assistente para Adicionar Perfil se destina a configurar perfis do Novell AppArmor com as ferramentas de perfil do Novell AppArmor, genprof (Gerar Perfil) e logprof (Atualizar Perfis do Arquivo de Registro do Modo de Aprendizagem). Para obter mais informações sobre essas ferramentas, consulte a Seção 3.5.3, “Resumo das ferramentas de perfil” (↑Guia de Administração do Novell AppArmor 2.0).

  1. Interrompa o aplicativo antes de criar o perfil para garantir que sua inicialização seja incluída no perfil. Para tal, verifique se o aplicativo ou daemon não está sendo executado antes de criar seu perfil.

    Por exemplo, digite /etc/init.d/PROGRAMA stop em uma janela de terminal quando estiver conectado como Root, substituindo PROGRAMA pelo nome do programa cujo perfil deve ser criado.

  2. Se você ainda não tiver feito isso, na GUI do YaST, clique em Novell AppArmor+Assistente para Adicionar Perfil.

    Selecione o aplicativo desejado
  3. Digite o nome do aplicativo ou navegue até a localização do programa.

  4. Clique em Criar. Será executada uma ferramenta do Novell AppArmor chamada autodep, que realiza uma análise estática do programa selecionado e carrega um perfil aproximado no módulo do Novell AppArmor. Para obter mais informações sobre o autodep, consulte Seção 3.5.3.1, “autodep” (↑Guia de Administração do Novell AppArmor 2.0).

    A janela Assistente de Criação de Perfil do AppArmor será exibida.

    Assistente de Criação de Perfil do genprof do Novell AppArmor

    Em segundo plano, o Novell AppArmor também colocará o perfil no modo de aprendizagem. Para obter mais informações sobre o modo de aprendizagem, consulte Seção 3.5.3.2, “Modo de aprendizagem ou reclamação” (↑Guia de Administração do Novell AppArmor 2.0).

  5. Execute o aplicativo cujo perfil está sendo criado.

  6. Execute o máximo possível de funções do aplicativo para que o modo de aprendizagem possa registrar os arquivos e diretórios cujo acesso o programa exige para funcionar adequadamente.

  7. Clique em Explorar Entradas do Registro do Sistema para Adicionar ao Perfil para analisar os arquivos de registro do modo de aprendizagem. Isso gera uma série de perguntas que devem ser respondidas para guiar o assistente na geração do perfil de segurança.

    As perguntas enquadram-se em duas categorias:

    Cada um desses casos gera uma série de perguntas que devem ser respondidas para adicionar o recurso ou o programa ao perfil. As duas figuras a seguir são um exemplo de cada caso. As etapas subseqüentes mostram as opções de resposta a essas perguntas.

    A janela Assistente de Criação de Perfil do AppArmor será exibida.

    Figura 3.1. Exceção do modo de aprendizagem: controlando o acesso a recursos específicos

    Exceção do modo de aprendizagem: controlando o acesso a recursos específicos

    Figura 3.2. Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada

    Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada
  8. O Assistente para Adicionar Perfil começa sugerindo entradas de caminho de diretório acessadas pelo aplicativo cujo perfil está sendo criado (como mostrado na Figura 3.1, “Exceção do modo de aprendizagem: controlando o acesso a recursos específicos” (↑Guia de Administração do Novell AppArmor 2.0)) ou pedindo-lhe que defina permissões de execução para entradas (como mostrado na Figura 3.2, “Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada” (↑Guia de Administração do Novell AppArmor 2.0)).

    1. No caso da (↑Guia de Administração do Novell AppArmor 2.0): Das opções a seguir, selecione aquela que atende à solicitação de acesso, a qual pode ser uma inclusão sugerida, uma determinada versão englobada do caminho ou o nome do próprio caminho. Observe que nem todas essas opções estarão sempre disponíveis.

      #include

      É a parte de um perfil do Novell AppArmor relativa a um arquivo de inclusão. Os arquivos de inclusão obtêm permissões de acesso para programas. Com uma inclusão, você pode fornecer ao programa acesso a arquivos ou caminhos de diretórios que são necessários também a outros programas. Além disso, pode reduzir o tamanho do perfil. É recomendável selecionar inclusões quando sugerido.

      Versão englobada

      Para acessá-la, clique em Englobar, conforme descrito na próxima etapa. Para obter informações sobre a sintaxe de englobamento, consulte a Seção 3.6, “Nomes de caminhos e englobamento” (↑Guia de Administração do Novell AppArmor 2.0).

      Nome do caminho

      O próprio caminho que o programa precisa acessar para funcionar adequadamente.

    2. No caso da (↑Guia de Administração do Novell AppArmor 2.0): Das opções a seguir, selecione aquela que atende à solicitação de acesso.

      Herdar

      Permanecer no mesmo perfil de segurança (perfil do pai).

      Perfil

      Requer a existência de um perfil à parte para o programa executado.

      Não delimitado

      Executa o programa sem um perfil de segurança.

      [Warning]Atenção

      Só execute não delimitado se absolutamente necessário. A seleção da opção Não delimitado executa o novo programa sem nenhuma proteção do AppArmor.

  9. Após selecionar um caminho de diretório, você precisa processá-lo como entrada no perfil do Novell AppArmor. Para isso, clique em Permitir ou Negar. Caso não fique satisfeito com a entrada de caminho de diretório exibida, você poderá usar as opções Englobar ou Editar.

    As seguintes opções estão disponíveis para processar as entradas do modo de aprendizagem e criar o perfil:

    Permitir

    Concede ao programa acesso às entradas de caminho de diretório especificadas. O Assistente para Adicionar Perfil sugere acesso a permissões de arquivo. Para obter mais informações sobre isso, consulte a Seção 3.7, “Modos de acesso a permissões de arquivo” (↑Guia de Administração do Novell AppArmor 2.0).

    Negar

    Clique em Negar para impedir o acesso do programa às entradas de caminho de diretório especificadas.

    Englobar

    Se acessada com um clique, esta opção modifica o caminho do diretório (usando curingas) para incluir todos os arquivos no diretório de entrada sugerido. Se acessada com dois cliques, ela permite acesso a todos os arquivos e subdiretórios abaixo do mostrado.

    Para obter mais informações sobre a sintaxe de englobamento, consulte a Seção 3.6, “Nomes de caminhos e englobamento” (↑Guia de Administração do Novell AppArmor 2.0).

    Englobar c/ ext.

    Modifica o caminho do diretório original mantendo a extensão do arquivo. Se você clicar uma vez, /etc/apache2/arquivo.ext se tornará /etc/apache2/*.ext, com o acréscimo do curinga (asterisco) no lugar do nome do arquivo. Isso permite ao programa acessar todos os arquivos dos diretórios sugeridos que tiverem a extensão .ext. Se você clicar duas vezes, a opção permitirá acesso a todos os arquivos (com essa extensão) e subdiretórios abaixo do mostrado.

    Editar

    Permite a edição da linha realçada. A nova linha (editada) aparece na parte inferior da lista.

    Interromper

    Interrompe o logprof, descartando todas as mudanças de regra inseridas e deixando inalterados todos os perfis.

    Concluir

    Fecha o logprof, gravando todas as mudanças de regra inseridas e modificando todos os perfis.

    Clique em Permitir ou Negar para cada entrada do modo de aprendizagem. Isso contribuirá para criar o perfil do Novell AppArmor.

    [Note]Nota

    O número de entradas do modo de aprendizagem corresponde à complexidade do aplicativo.

    Repita as etapas anteriores se precisar executar mais funções do aplicativo.

    Ao terminar, clique em Concluir. Clique em Sim no pop-up exibido para sair do Assistente de Criação de Perfis. O perfil será gravado e carregado no módulo do Novell AppArmor.

3.3.2. Adicionar Perfil Manualmente

O Novell AppArmor permite-lhe criar um perfil do Novell AppArmor adicionando manualmente entradas a ele. Basta selecionar o aplicativo cujo perfil deseja criar e adicionar as entradas.

  1. Para adicionar um perfil, abra YaST+Novell AppArmor. A interface do Novell AppArmor é aberta.

  2. No Novell AppArmor, clique em Adicionar Perfil Manualmente (consulte a Figura 3.3, “Adicionando um perfil manualmente: selecionar aplicativo” (↑Guia de Administração do Novell AppArmor 2.0)).

    Figura 3.3. Adicionando um perfil manualmente: selecionar aplicativo

    Selecionando o aplicativo cujo perfil deve ser criado
  3. Navegue até o aplicativo cujo perfil deseja criar.

  4. Quando o localizar, selecione-o e clique em Abrir. Será exibido um perfil básico, vazio, na janela Caixa de Diálogo Perfil do Novell AppArmor.

    Criando um perfil manualmente
  5. Na janela Caixa de Diálogo Perfil do AppArmor, você pode adicionar, editar ou apagar entradas de perfis do Novell AppArmor clicando nos botões correspondentes e consultando as seguintes seções: Seção 3.3.2.1, “Adicionando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0), Seção 3.3.2.2, “Editando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0) ou Seção 3.3.2.2, “Editando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0).

  6. Ao terminar, clique em Concluído.

3.3.2.1. Adicionando uma entrada

Esta seção explica a opção Adicionar Entrada, que pode ser encontrada na Seção 3.3.2, “Adicionar Perfil Manualmente” (↑Guia de Administração do Novell AppArmor 2.0) ou na Seção 3.3.3, “Editando um perfil” (↑Guia de Administração do Novell AppArmor 2.0). Quando você seleciona Adicionar Entrada, uma lista suspensa exibe os tipos de entrada que podem ser adicionados ao perfil do Novell AppArmor.

3.3.2.2. Editando uma entrada

Esta seção explica a opção Editar Entrada, que pode ser encontrada na Seção 3.3.2, “Adicionar Perfil Manualmente” (↑Guia de Administração do Novell AppArmor 2.0) ou na Seção 3.3.3, “Editando um perfil” (↑Guia de Administração do Novell AppArmor 2.0). Quando você seleciona Editar Entrada, a janela pop-up do explorador de arquivos é aberta. A partir daqui, você poderá editar a entrada selecionada.

Na janela pop-up, especifique o caminho absoluto para um arquivo e o tipo de acesso permitido. Use englobamento se necessário. Ao terminar, clique em OK.

Para obter informações sobre englobamento, consulte a Seção 3.6, “Nomes de caminhos e englobamento” (↑Guia de Administração do Novell AppArmor 2.0). Para obter informações sobre permissão de acesso a arquivo, consulte a Seção 3.7, “Modos de acesso a permissões de arquivo” (↑Guia de Administração do Novell AppArmor 2.0).

Editar uma entrada

3.3.2.3. Apagando uma entrada

Esta seção explica a opção Apagar Entrada, que pode ser encontrada na Seção 3.3.2, “Adicionar Perfil Manualmente” (↑Guia de Administração do Novell AppArmor 2.0) ou na Seção 3.3.3, “Editando um perfil” (↑Guia de Administração do Novell AppArmor 2.0). Se você selecionar uma entrada e, em seguida, Apagar Entrada, o Novell AppArmor a removerá.

3.3.3. Editando um perfil

O Novell AppArmor permite-lhe editar manualmente perfis do Novell AppArmor adicionando, editando ou apagando entradas. Basta selecionar o perfil e depois adicionar, editar ou apagar as entradas desejadas. Para editar um perfil, siga estas etapas:

  1. Abra YaST+Novell AppArmor.

  2. Em Novell AppArmor, clique em Editar Perfil. A janela Editar Perfil — Escolher Perfil a Editar será exibida.

    Escolher Perfil a Editar
  3. Selecione o perfil a editar na lista de programas relacionados.

  4. Clique em Próximo. A janela Caixa de Diálogo Perfil do AppArmor exibirá o perfil.

    Caixa de diálogo Perfil do AppArmor
  5. Na janela Caixa de Diálogo Perfil do AppArmor, você pode adicionar, editar ou apagar entradas de perfis do Novell AppArmor clicando nos botões correspondentes e consultando as seguintes seções: Seção 3.3.2.1, “Adicionando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0), Seção 3.3.2.2, “Editando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0) ou Seção 3.3.2.3, “Apagando uma entrada” (↑Guia de Administração do Novell AppArmor 2.0).

  6. Ao terminar, clique em Concluído.

  7. Clique em Sim no pop-up exibido para confirmar as mudanças ao perfil.

3.3.4. Apagando um perfil

O Novell AppArmor permite-lhe apagar um perfil do Novell AppArmor manualmente. Basta selecionar o aplicativo cujo perfil deseja apagar e seguir estas etapas:

  1. Abra YaST+Novell AppArmor. A interface do Novell AppArmor é exibida.

  2. Em Novell AppArmor, clique no ícone Apagar Perfil. A janela Apagar Perfil — Escolher Perfil a Apagar será aberta.

    Apagar perfil, escolher perfil a apagar
  3. Selecione o perfil que deseja apagar.

  4. Clique em Próximo.

  5. Clique em Sim no pop-up exibido para apagar o perfil.

3.3.5. Atualizando perfis a partir de entradas do Syslog

O assistente de perfis do Novell AppArmor usa o logprof, a ferramenta que verifica arquivos de registro e lhe permite atualizar perfis. O logprof rastreia as mensagens do módulo Novell AppArmor que representam exceções para todos os perfis em execução no sistema. Essas exceções representam o comportamento do aplicativo em questão que está fora da definição do seu perfil. Você pode adicionar o novo comportamento ao perfil relevante selecionando a entrada de perfil sugerida.

  1. Abra YaST+Novell AppArmor. A interface do Novell AppArmor é exibida.

  2. Em Novell AppArmor, clique em Assistente para Atualizar Perfil. A janela Assistente de Perfis do AppArmor será exibida.

    O assistente de perfis do AppArmor

    Com a execução do Assistente para Atualizar Perfis (logprof), os arquivos de registro do modo de aprendizagem são analisados. Isso gera uma série de perguntas que devem ser respondidas para guiar o logprof na geração do perfil de segurança.

    As perguntas enquadram-se em duas categorias:

    Cada um desses casos gera uma pergunta que deve ser respondida para que você possa adicionar o recurso ou programa ao perfil. As duas figuras a seguir são um exemplo de cada caso. As etapas subseqüentes mostram as opções de resposta a essas perguntas.

    Figura 3.4. Exceção do modo de aprendizagem: controlando o acesso a recursos específicos

    Exceção do modo de aprendizagem: controlando o acesso a recursos específicos

    Figura 3.5. Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada

    Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada
  3. O logprof começa sugerindo entradas de caminho de diretório acessadas pelo aplicativo cujo perfil está sendo criado (como mostrado na Figura 3.4, “Exceção do modo de aprendizagem: controlando o acesso a recursos específicos” (↑Guia de Administração do Novell AppArmor 2.0)) ou pedindo-lhe que defina permissões de execução para entradas (como mostrado na Figura 3.5, “Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada” (↑Guia de Administração do Novell AppArmor 2.0)).

    1. No caso da Figura 3.4, “Exceção do modo de aprendizagem: controlando o acesso a recursos específicos” (↑Guia de Administração do Novell AppArmor 2.0): Das opções a seguir, selecione aquela que atende à solicitação de acesso, a qual pode ser uma inclusão sugerida, uma determinada versão englobada do caminho ou o nome do próprio caminho. Observe que nem todas essas opções estarão sempre disponíveis.

      #include

      É a parte de um perfil do Novell AppArmor relativa a um arquivo de inclusão. Os arquivos de inclusão obtêm permissões de acesso para programas. Com uma inclusão, você pode fornecer ao programa acesso a arquivos ou caminhos de diretórios que são necessários também a outros programas. Além disso, pode reduzir o tamanho do perfil. É recomendável selecionar inclusões quando sugerido.

      Versão englobada

      Para acessá-la, clique em Englobar, conforme descrito na próxima etapa. Para obter informações sobre a sintaxe de englobamento, consulte a Seção 3.6, “Nomes de caminhos e englobamento” (↑Guia de Administração do Novell AppArmor 2.0).

      Nome do caminho

      O próprio caminho que o programa precisa acessar para funcionar adequadamente.

    2. No caso da Figura 3.5, “Exceção do modo de aprendizagem: definindo permissões de execução para uma entrada” (↑Guia de Administração do Novell AppArmor 2.0): Das opções a seguir, selecione aquela que atende à solicitação de acesso:

      Herdar

      permanecer no mesmo perfil de segurança (perfil do pai)

      Perfil

      requer a existência de um perfil à parte para o programa executado

      Não delimitado

      o programa é executado sem um perfil de segurança

      [Warning]Atenção

      Só execute não delimitado se absolutamente necessário. A seleção da opção Não delimitado executa o novo programa sem nenhuma proteção do AppArmor.

  4. Após selecionar um caminho de diretório, você precisa processá-lo como entrada no perfil do Novell AppArmor. Para isso, clique em Permitir ou Negar. Caso não fique satisfeito com a entrada de caminho de diretório exibida, você poderá usar as opções Englobar ou Editar.

    As seguintes opções estão disponíveis para processar as entradas do modo de aprendizagem e criar o perfil:

    Permitir

    Concede ao programa acesso às entradas de caminho de diretório especificadas. O Assistente de Criação de Perfis sugere acesso a permissões de arquivo. Para obter mais informações sobre isso, consulte a Seção 3.7, “Modos de acesso a permissões de arquivo” (↑Guia de Administração do Novell AppArmor 2.0).

    Negar

    Clique em Negar para impedir o acesso do programa às entradas de caminho de diretório especificadas.

    Englobar

    Se acessada com um clique, esta opção modifica o caminho do diretório (usando curingas) para incluir todos os arquivos no diretório de entrada sugerido. Se acessada com dois cliques, ela permite acesso a todos os arquivos e subdiretórios abaixo do mostrado.

    Para obter mais informações sobre a sintaxe de englobamento, consulte a Seção 3.6, “Nomes de caminhos e englobamento” (↑Guia de Administração do Novell AppArmor 2.0).

    Englobar c/ ext.

    Modifica o caminho do diretório original mantendo a extensão do arquivo. Se você clicar uma vez, /etc/apache2/arquivo.ext se tornará /etc/apache2/*.ext, com o acréscimo do curinga (asterisco) no lugar do nome do arquivo. Isso permite ao programa acessar todos os arquivos dos diretórios sugeridos que tiverem a extensão .ext. Se você clicar duas vezes, a opção permitirá acesso a todos os arquivos (com essa extensão) e subdiretórios abaixo do mostrado.

    Editar

    Permite a edição da linha realçada. A nova linha (editada) aparece na parte inferior da lista.

    Interromper

    Interrompe o logprof, descartando todas as mudanças de regra inseridas e deixando inalterados todos os perfis.

    Concluir

    Fecha o logprof, gravando todas as mudanças de regra inseridas e modificando todos os perfis.

    Clique em Permitir ou Negar para cada entrada do modo de aprendizagem. Isso contribuirá para criar o perfil do Novell AppArmor.

    [Note]Nota

    O número de entradas do modo de aprendizagem corresponde à complexidade do aplicativo.

    Repita as etapas anteriores se precisar executar mais funções do aplicativo.

    Ao terminar, clique em Concluir. Clique em Sim no pop-up exibido para sair do Assistente de Criação de Perfis. O perfil será gravado e carregado no módulo do Novell AppArmor.

3.3.6. Gerenciando o status do Novell AppArmor e dos eventos de segurança

O Novell AppArmor permite-lhe mudar o status do Novell AppArmor e configurar a notificação de eventos.

Mudando o status do Novell AppArmor

Você pode mudar o status do Novell AppArmor habilitando-o e desabilitando-o. A habilitação do Novell AppArmor protege o sistema contra potenciais explorações de programas. A desabilitação do Novell AppArmor remove a proteção do sistema, mesmo que você tenha configurado os perfis.

Configurando a notificação de eventos

Você pode determinar como e quando será notificado quando ocorrerem eventos de segurança do sistema.

[Note]Nota

É preciso configurar no servidor SUSE Linux um servidor de correio que possa enviar correspondência usando SMTP (Simple Mail Transfer Protocol, Protocolo de Transferência de Correio Simples). Por exemplo, postfix ou exim, para que a notificação de eventos funcione.

Para configurar a notificação de eventos ou mudar o status do Novell AppArmor, siga as etapas abaixo:

  1. Quando você clica no Painel de Controle do Novell AppArmor, a janela Configuração do Novell AppArmor é exibida (veja abaixo):

    Painel de controle do AppArmor
  2. Na tela Configuração do AppArmor, procure a mensagem de status habilitado para saber se o Novell AppArmor e a notificação de eventos de segurança estão em execução.

3.3.6.1. Mudando o status do Novell AppArmor

Ao mudar o status do Novell AppArmor, você o define como habilitado ou desabilitado. Quando está habilitado, o Novell AppArmor está instalado, em execução e forçando as políticas de segurança do Novell AppArmor.

  1. Para habilitar o Novell AppArmor, abra YaST+Novell AppArmor. O menu principal do Novell AppArmor é aberto.

  2. No menu principal do Novell AppArmor, clique em Painel de Controle do AppArmor. A janela Configuração do AppArmor será exibida.

    Janela de configuração do AppArmor
  3. Na seção Habilitar Novell AppArmor da janela, clique em Configurar. A caixa de diálogo Habilitar Novell AppArmor será aberta.

    Habilitar AppArmor
  4. Habilite o Novell AppArmor selecionando Habilitar ou desabilite-o selecionando Desabilitar. Em seguida, clique em OK.

  5. Clique em Concluído na janela Configuração do AppArmor.

  6. Clique em Arquivo+Sair no Centro de Controle do YaST.