安装了 Fedora 20 64 位后,我遇到了 OpenVPN 和 SELinux 冲突的老问题。显然 SELinux 阻止openvpn
启动。
OpenVPN 已通过网络连接设置,我有三个文件:
cer.pem
ca.pem
key.pem
一些解决方案说我应该将证书文件移动到~/.cert
然后运行:
$ sudo restorecon -R -v ~/.cert
Run Code Online (Sandbox Code Playgroud)
然后 SELinux 将允许访问证书。
但是,在我启动之前openvpn
,我已将这些证书保存在 Documents/certificates 文件夹中。当然,当我执行:
$ mv ~/Documents/certificates/cer.pem ~/.cert
Run Code Online (Sandbox Code Playgroud)
该文件将被移动到~/.cert
网络连接中,并且不会有证书。
我试过使用cp
而不是,mv
但这没有帮助,但我仍然有这个老冲突问题。
SELinux 禁止openvpn
可执行文件访问文件系统上特定位置的文件。处理这些问题的最好朋友是使用 SELinux 故障排除程序 GUI。
$ sealert -b
Run Code Online (Sandbox Code Playgroud)
然后,您需要按照建议将必要的上下文添加到您的文件系统以安抚 SELinux。
注意:在上面的示例中,我选择了第二个选项并将运行命令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
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6001 次 |
最近记录: |