Firejail – Execute aplicativos não confiáveis com segurança no Linux
Às vezes você pode querer usar aplicativos que não foram bem testados em ambientes diferentes, mas você deve usá-los. Nesses casos, é normal se preocupar com a segurança do seu sistema. Uma coisa que pode ser feita no Linux é usar aplicativos em uma sandbox.
“Sandboxing ” é a capacidade de executar aplicativos em um ambiente limitado. Dessa forma, o aplicativo recebe uma quantidade restrita de recursos necessários para ser executado. Graças ao aplicativo chamado Firejail, você pode executar com segurança aplicativos não confiáveis no Linux.
Firejail é um aplicativo SUID (Set Owner User ID) que diminui a exposição a violações de segurança, limitando o ambiente de execução de programas não confiáveis usando namespaces Linux e seccomp-bpf .
Ele faz com que um processo e todos os seus descendentes tenham sua própria visão secreta dos recursos do kernel compartilhados globalmente, como pilha de rede, tabela de processos e tabela de montagem.
Alguns dos recursos que o Firejail usa:
- Namespaces Linux
- Contêiner do sistema de arquivos
- Filtros de segurança
- Suporte de rede
- Alocação de recursos
Informações detalhadas sobre os recursos do Firejail podem ser encontradas na página oficial.
Como instalar o Firejail no Linux
A instalação pode ser concluída baixando o pacote mais recente da página github do projeto usando o comando git conforme mostrado.
git clone https://github.com/netblue30/firejail.git
cd firejail
./configure && make && sudo make install-strip
Caso você não tenha o git instalado em seu sistema, você pode instalá-lo com:
sudo apt install git [On Debian/Ubuntu]
yum install git [On CentOS/RHEL]
dnf install git [On Fedora 22+]
Uma forma alternativa de instalar o firejail é baixar o pacote associado à sua distribuição Linux e instalá-lo com seu gerenciador de pacotes. Os arquivos podem ser baixados da página SourceForge do projeto. Depois de baixar o arquivo, você pode instalá-lo com:
sudo dpkg -i firejail_X.Y_1_amd64.deb [On Debian/Ubuntu]
sudo rpm -i firejail_X.Y-Z.x86_64.rpm [On CentOS/RHEL/Fedora]
Como executar aplicativos com Firejail no Linux
Agora você está pronto para executar seus aplicativos com Firejail. Isso é feito iniciando um terminal e adicionando firejail antes do comando que você deseja executar.
Aqui está um exemplo:
firejail firefox #start Firefox web browser
firejail vlc # start VLC player
Criar perfil de segurança
Firejail inclui muitos perfis de segurança para diferentes aplicações e eles são armazenados em:
/etc/firejail
Se você compilou o projeto a partir do código-fonte, poderá encontrar os perfis em:
path-to-firejail/etc/
Se você usou o pacote rpm/deb, poderá encontrar os perfis de segurança em:
/etc/firejail/
Os usuários deverão colocar seus perfis no seguinte diretório:
~/.config/firejail
Se quiser estender um perfil de segurança existente, você pode usar include com o caminho para o perfil e adicionar suas linhas posteriormente. Isso deve ser parecido com isto:
cat ~/.config/firejail/vlc.profile
include /etc/firejail/vlc.profile
net none
Se você deseja restringir o acesso do aplicativo a determinado diretório, você pode usar uma regra de lista negra para conseguir exatamente isso. Por exemplo, você pode adicionar o seguinte ao seu perfil de segurança:
blacklist ${HOME}/Documents
Outra maneira de obter o mesmo resultado é descrever o caminho completo para a pasta que você deseja restringir:
blacklist /home/user/Documents
Existem muitas maneiras diferentes de configurar seus perfis de segurança, como proibir acesso, permitir acesso somente leitura, etc. Se estiver interessado em criar perfis personalizados, você pode verificar as seguintes instruções do Firejail.
Firejail é uma ferramenta incrível para usuários preocupados com segurança, que desejam proteger seu sistema.