SELinux 和 OpenVPN?

SELinux 和 OpenVPN?

安装了 Fedora 20 64 位后,我遇到了 OpenVPN 和 SELinux 冲突的老问题。显然 SELinux 阻止openvpn启动。

OpenVPN已设置通过网络连接我有三个文件:

  • 用户证书为:cer.pem
  • CA证书为:ca.pem
  • 私钥为:key.pem

一些解决方案说我应该将证书文件移入~/.cert然后运行:

$ sudo restorecon -R -v ~/.cert

然后 SELinux 将允许访问证书。

但是,在启动之前openvpn,我已将这些证书保存在 Documents/certificates 文件夹中。当然,当我执行时:

$ mv ~/Documents/certificates/cer.pem ~/.cert

该文件将被移动到“~/.cert网络连接”,并且在“网络连接”中将没有证书。

我尝试使用cp代替,mv但这没有帮助,而且我仍然遇到这个老冲突问题。

答案1

SELinux 不允许openvpn可执行文件访问文件系统上特定位置的文件。处理这些问题最好的朋友是使用 SELinux 疑难解答 GUI。

$ sealert -b 

   ss#1

然后,您需要按照建议将必要的上下文添加到您的文件系统中以安抚 SELinux。

    ss #2

笔记:在上面的示例中,我选择了第二个选项,并将运行命令semanage并按restorecon描述修复我的问题。您需要对您的openvpn问题执行相同的操作。它应该与我在屏幕截图中显示的内容相同。

为了解决这个问题,我运行了以下命令:

$ sudo semanage fcontext -a -t home_cert_t /home/slm/somedom.com.ca.crt
$ sudo restorecon -R -v /home/slm/somedom.com.ca.crt

参考

相关内容