Como usar o / etc / fbtab no OpenBSD para proteger o X11?

8

A página de manual do OpenBSD, afterboot (8), sugere: "Você pode aumentar ainda mais a segurança editando / etc / fbtab como na instalação do X."

Como alguém pode fazer isso? Quais linhas, quando adicionadas /etc/fbtab, ajudariam a proteger o X Windows?

Nicholas
fonte
1
man fbtab - informará os detalhes sobre a atribuição temporária da propriedade dos dispositivos com base nos ttys de login. No meu laptop, o X11 recebe o ttyC5. Então, eu posso controlar a propriedade do dispositivo com base nisso. Não sei o quão útil isso é, porque já temos a configuração matchdep.allowaperture = 1 no /etc/sysctl.conf usando a qual podemos atribuir mais privilégios ao Xorg.
Salil

Respostas:

1

Vamos supor que o X11 seja / dev / ttyC5, como sugerido por Salil.

Exemplo 1: Servidor da Web e ambiente de desktop na mesma máquina

Vamos supor também que você esteja executando um servidor da Web com dados confidenciais (o proprietário é o usuário 'www') e seu usuário da área de trabalho tem permissão para trabalhar (ler, escrever, executar) nesse diretório.

Mas, para tudo o que você pretende fazer na área de trabalho, como correio, ouvir música, mensagens ou navegar, não tem nada a ver com esses arquivos. Agora, as GUIs desejam tornar tudo mais simples, mais rápido e mais confortável, para que um clique incorreto no Nautilus, Konqueror ou algum outro gerenciador de arquivos possa excluir acidentalmente um arquivo, um clique incorreto pode até enviar dados como um anexo de email pela Internet, você pode compartilhar acidentalmente um arquivo na rede etc. - todos esses perigos estão a um clique de distância no ambiente gráfico da área de trabalho, enquanto na linha de comando você emitia um nome de comando com os argumentos adequados para o mesmo efeito.

Agora você pode usar / etc / fbtab deixar logindizer chmodpara fazer esse diretório somente leitura para o proprietário, de modo nenhum de seus usuários de desktop pode apagar acidentalmente alguma coisa, mesmo que eles estão autorizados a trabalhar nesse diretório utilizando a linha de comando e somente o proprietário 'www' (que não deveria ter acesso à área de trabalho de qualquer maneira) pode lê-lo:

/dev/ttyC5 0400 /home/user/apache13/www/

Exemplo 2: dados confidenciais apenas para um projeto local

Vamos supor que você esteja trabalhando em um projeto com colegas, todos com permissão para fazer login na área de trabalho do X11 com suas contas. Mas eles devem ter acesso apenas ao diretório com seu projeto no X11, porque não têm muita experiência com a linha de comando e podem fazer algo errado sem querer, portanto, você tem permissões muito restritivas para esse diretório.

Esta entrada a altera para rwx rwx rx para X11:

/dev/ttyC5 0775 /www/groupproject

Exemplo 3: armazenamento USB e de disquete como discos de backup

Você deseja restringir o acesso ao armazenamento USB em / dev / wd0 e / dev / wd1, bem como disquetes em / dev / fd0, porque eles são usados ​​apenas para backup.

/dev/ttyC5 0400 /dev/wd0:/dev/wd1:/dev/fd0
superuser0
fonte