5

Я пытался использовать OpenVPN для подключения к моей рабочей сети. Использование через командную строку работает нормально:

openvpn user.conf

Я не удосужился настроить его правильно с помощью DNS, и это выглядит немного болезненно. Я бы предпочел использовать его через сетевой менеджер, как и другие мои VPN. Проблема заключается в следующем: я храню свой user.crt вместе с ca.crt и user.key в ~/.openvpn/ (что кажется разумным местом для хранения таких вещей. Когда я пытаюсь подключиться через NetworkManager, он просто говорит мне, что соединение не удалось. Изучение /var/logs/messages выявляет причину: SELinux где-то применяет некоторую политику, которая останавливает openvpn от чтения моих сертификатов. Я попытался выполнить все инструкции, приведенные в разделе устранения неполадок SELinux, но безрезультатно.

Затем я по глупости удалил политику openvpn из моей конфигурации SELinux (используя графический интерфейс SELinux Management, доступный в репозиториях fedora). Все виды ада вырвались на свободу (он даже не позволил бы ему связать названный порт больше).

Проблема была довольно острой, поэтому я просто отключил SELinux для сессии (с этим все отлично работает). Но в какой-то момент мне придется снова включить его, поэтому мой вопрос таков:

Как я могу сначала восстановить исходный файл политики для openvpn в SELinux, а затем второй предоставить openvpn доступ к сертификатам в моем домашнем каталоге?

Я также попробовал инструмент SE Policy Generator, но безрезультатно (он застревает в диалоге, где я даю название политике).

2 ответа2

3

Чтобы восстановить модуль политики OpenVPN, просто запустите следующую команду на терминале от имени пользователя root:

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

Если по какой-то причине этот файл отсутствует (маловероятно, но я не уверен, что именно system-config-selinux делает точно), переустановите пакет политики SELinux и повторите попытку:

yum reinstall selinux-policy-targeted

Наконец, чтобы разрешить OpenVPN читать файлы из вашего домашнего каталога, выполните следующую команду:

setsebool -P openvpn_enable_homedirs 1

Вы также должны иметь возможность установить openvpn_enable_homedirs в списке логических значений SELinux в графическом инструменте администрирования.

2

Просто встретите подобную проблему в Fedora 18

Посмотрите там https://bugzilla.redhat.com/show_bug.cgi?id=555785

Разместите сертификаты в нужном месте (с точки зрения Fedora) ~/.pki и сделайте

restorecon -R -v ~/.pki

наверняка

Openvpn сейчас работает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .