Segurança Linux Aprimorada: Instale e Configure o Firejail Agora!

O sistema operacional Linux é conhecido pela sua robustez em termos de segurança e, comparado com outros sistemas populares, apresenta menos vulnerabilidades no que diz respeito à privacidade. No entanto, mesmo com essa reputação, sempre existe margem para aprimoramento. É aqui que entra o Firejail, uma ferramenta que possibilita aos utilizadores confinar qualquer aplicação em execução, isolando-a do restante do sistema. Essencialmente, o Firejail cria uma “caixa de areia” para cada programa, impedindo que este aceda a outras partes do sistema. Este utilitário é o mais popular para sandboxing de aplicações no Linux, o que explica a sua inclusão em várias distribuições. Abaixo, exploraremos como instalar o Firejail no seu sistema Linux.

AVISO: Pode encontrar um tutorial em vídeo no final deste artigo.

Instalação do Firejail

Ubuntu

sudo apt install firejail

Debian

sudo apt-get install firejail

Arch Linux

sudo pacman -S firejail

Se a versão do Firejail disponível nos repositórios do Arch Linux não o satisfaz, pode optar por instalar a versão Git do AUR.

Fedora

Infelizmente, não existe um pacote Firejail nos repositórios principais do Fedora. No entanto, os utilizadores do Fedora podem instalar o software através do Copr.

O Copr funciona de maneira semelhante aos PPAs no Ubuntu ou ao AUR no Arch Linux. Qualquer utilizador pode criar um repositório Copr e disponibilizar software. Existem vários repositórios Copr com o Firejail, por isso, se o repositório mencionado neste artigo deixar de ser atualizado, pode consultar o site do Copr para encontrar alternativas.

Para instalar o Firejail no Fedora, utilize os seguintes comandos:

sudo dnf copr enable ssabchew/firejail
sudo dnf install firejail

OpenSUSE

Tal como acontece com muitos softwares de terceiros no openSUSE, o Firejail está disponível no OBS. É possível instalar rapidamente as versões do Firejail para as versões mais recentes do Leap e Tumbleweed. Consulte aqui para aceder aos pacotes.

Certifique-se de utilizar o botão de instalação com 1 clique via YaST.

Outras Distribuições

O código fonte do Firejail é acessível e fácil de compilar caso utilize uma distribuição Linux não suportada.

Comece por instalar o pacote Git na sua distribuição. Para isso, abra o seu gestor de pacotes, procure por “git” e instale-o. Certifique-se também de instalar as ferramentas de compilação necessárias para a sua distribuição (pode encontrar informações no wiki da sua distribuição). Por exemplo, no Debian/Ubuntu, a compilação requer o pacote `build-essential`.

Após instalar o Git, utilize-o para obter a versão mais recente do software Firejail:

git clone https://github.com/netblue30/firejail.git

O código será transferido para o seu sistema. Entre na pasta recém-criada através do comando `cd`.

cd firejail

Antes de poder compilar o software, precisa de executar um ficheiro de configuração. Este irá analisar o seu sistema e informar o software sobre as suas especificações. Este passo é essencial, sem ele a compilação não será possível.

configure

O programa está agora configurado para compilação. Vamos gerar um makefile. Este ficheiro contém as instruções necessárias para construir o software. Utilize o comando `make` para o criar.

make

Por último, instale o software Firejail no seu sistema:

sudo make install-strip

Utilizando o Firejail

O processo de isolamento de aplicações com o Firejail é bastante simples. Para isolar uma aplicação, basta adicionar o prefixo “firejail” antes do comando de execução. Por exemplo, para executar o editor de texto Gedit numa “sandbox”, isolado do resto do sistema, utilize o comando: `firejail gedit` no terminal. Esta é a base do funcionamento. Para sandboxing simples, isto é suficiente. No entanto, a configuração do Firejail pode requerer um pouco mais de atenção.

Por exemplo, se executar `firejail firefox`, o navegador Firefox será executado numa sandbox restrita, onde nenhuma outra parte do sistema poderá interagir com ele. Apesar de aumentar a segurança, pode impedir, por exemplo, que o navegador salve uma imagem num diretório específico, devido às restrições impostas pelo Firejail. É importante configurar quais diretórios estão acessíveis dentro da sandbox. A seguir, explicamos como fazê-lo:

Listas de Permissões e Listas Negras

As listas de permissões e listas negras são específicas para cada aplicação. Não é possível definir regras globais para o que as aplicações isoladas podem ou não aceder. O Firejail já inclui vários ficheiros de configuração pré-definidos, com configurações adequadas para a maioria dos utilizadores. No entanto, utilizadores mais avançados podem personalizar estes ficheiros.

Abra um terminal e navegue até ao diretório `/etc/firejail`:

cd /etc/firejail

Utilize o comando `ls` para ver todo o conteúdo do diretório, juntamente com o comando `more` para visualizar os resultados por página. Utilize a tecla Enter para avançar a página.

Localize o ficheiro de configuração da sua aplicação. Neste exemplo, continuaremos com o Firefox.

ls | more

Abra o ficheiro de perfil do Firefox no editor de texto nano:

sudo nano /etc/firejail/firefox.profile

Como mencionado anteriormente, o Firejail vem com configurações padrões que funcionam bem para a maioria dos utilizadores. Por exemplo, apesar da aplicação estar isolada, o diretório `~/Downloads` e os diretórios de plugins estão acessíveis. Para adicionar mais itens à lista de permissões, localize a seção adequada e adicione as suas próprias regras.

Por exemplo, para permitir que o Firefox aceda às suas imagens para fazer uploads no Facebook, adicione:

whitelist ~/Pictures

O mesmo método pode ser usado para listas negras. Para impedir que o Firefox aceda a diretórios específicos, utilize algo como:

blacklist ~/secret/file/area

Salve as alterações com Ctrl + O.

Nota: “~/” significa /home/utilizador atual

Conclusão

O sandboxing é uma forma eficaz de proteger o seu sistema contra aplicações maliciosas ou vulnerabilidades que possam comprometer os seus dados. Se valoriza a segurança no Linux, experimentar esta ferramenta é uma excelente opção.