Tornando o SELinux legal com o OpenVPN (no NetworkManager)

5

Eu tenho tentado usar o OpenVPN para me conectar à minha rede de trabalho. Usá-lo através da linha de comando funciona bem:

openvpn user.conf

Eu não me preocupei em configurá-lo corretamente com o DNS, e parece ser um pouco trabalhoso. Eu preferiria usá-lo através do gerenciador de rede como minhas outras VPNs. O problema é este: eu armazeno meu user.crt , junto com ca.crt e user.key em ~/.openvpn/ (o que parece ser um lugar razoável para manter essas coisas. Quando tento conectar via NetworkManager, isso me diz que a conexão falhou Inspeção de /var/logs/messages revela o motivo: o SELinux está aplicando alguma política em algum lugar que impede openvpn de ler meus certificados.Eu tentei seguir todas as instruções dadas pelo solucionador de problemas do SELinux, mas sem sucesso.

Eu, então, tolamente deletei a política openvpn da minha configuração do SELinux (usando o GUI do SELinux Management, disponível no fedora repos). Todos os tipos de inferno se soltaram (não deixaria nem mesmo vincular uma porta nomeada).

O problema foi muito urgente, então acabei desabilitando o SELinux para a sessão (tudo funciona bem com isso fora do caminho). Mas vou ter que ligá-lo novamente em algum momento, então minha pergunta é esta:

Como posso primeiro restaurar meu arquivo de política original para o openvpn no SELinux e depois conceder acesso openvpn a certificados no meu diretório pessoal?

Eu também testei a ferramenta Gerador de Políticas SE, mas nada aparente (fica preso no diálogo em que eu dou um nome à política).

    
por jelford 24.09.2011 / 15:21

2 respostas

3

Para restaurar o módulo de política OpenVPN, basta executar o seguinte comando em um terminal como root :

semodule -i /usr/share/selinux/targeted/openvpn.pp.bz2

Se por algum motivo esse arquivo estiver faltando (improvável, mas não tenho certeza do que o system-config-selinux faz exatamente), reinstale o pacote de políticas do SELinux e tente novamente:

yum reinstall selinux-policy-targeted

Finalmente, para permitir que o OpenVPN leia arquivos do seu diretório home, execute este comando:

setsebool -P openvpn_enable_homedirs 1

Você também deve ser capaz de definir openvpn_enable_homedirs na lista de SELinux booleanos na ferramenta de administração gráfica .

    
por 29.09.2011 / 02:43
2

Apenas encontre um problema similar no Fedora 18

Veja o link

Coloque os certificados no lugar certo (do ponto de vista do Fedora) ~ / .pki e faça

restorecon -R -v ~/.pki

com certeza

Openvpn agora funciona.

    
por 15.05.2013 / 22:11