openvpn []: Erreur d'options: Dans [CMD-LINE]: 1: Erreur lors de l'ouverture du fichier de configuration


14

en essayant de service openvpn start

Oct 12 14:02:01 ccushing1 openvpn[9091]: Options error: In [CMD-LINE]:1: Error opening configuration file: devnet-client-vm.conf

courir openvpn devnet-client-vm.conffonctionne très bien. Pourquoi openvpn ne démarre-t-il pas? comment puis-je le réparer?


J'ai fourni une réponse, mais j'encourage les réponses qui n'impliquent pas la stérilisation de SELinux
xénoterracide

Réponses:


12

Vous voudrez peut-être exécuter

fixfiles -R openvpn restore

Un ls -alZ devrait vous donner quelque chose comme ça (montrant que vos fichiers sont dans le bon contexte selinux maintenant):

[root@server openvpn]# ls -alZ /etc/openvpn/
drwxr-xr-x. root    root    system_u:object_r:openvpn_etc_t:s0 .
drwxr-xr-x. root    root    system_u:object_r:etc_t:s0       ..
drwxr-xr-x. root    root    unconfined_u:object_r:openvpn_etc_t:s0 certs
-rw-r--r--. root    root    unconfined_u:object_r:openvpn_etc_t:s0 dh2048.pem
drwxr-xr-x. root    root    unconfined_u:object_r:openvpn_etc_t:s0 easy-rsa
-rw-------. root    root    unconfined_u:object_r:openvpn_etc_rw_t:s0 ipp.txt
-rw-------. root    root    unconfined_u:object_r:openvpn_etc_t:s0 ta.key
-rw-------. openvpn openvpn unconfined_u:object_r:openvpn_etc_t:s0 server.conf

Si vous avez une déclaration comme

status openvpn-status.log

dans votre fichier de configuration openvpn, vous remarquerez peut-être que le serveur ne démarre toujours pas. Un coup d'œil sur /var/log/audit/audit.log révélera

type=AVC msg=audit(1413580155.710:1265): avc:  denied  { write } for  pid=19725 comm="openvpn" name="openvpn-status.log" dev="dm-1" ino=54153273 scontext=system_u:system_r:openvpn_t:s0 tcontext=unconfined_u:object_r:openvpn_etc_t:s0 tclass=file

Changer le contexte de ce fichier en rw fait l'affaire:

chcon -t openvpn_etc_rw_t openvpn-status.log

et

[root@server openvpn]# ls -alZ openvpn-status.log
-rw-------. root    root    unconfined_u:object_r:openvpn_etc_t:s0 openvpn-status.log

va devenir

-rw-------. root    root    unconfined_u:object_r:openvpn_etc_rw_t:s0 openvpn-status.log

Après l'appel

service openvpn@server start

a parfaitement fonctionné.

[root@server openvpn]# service openvpn@server status
Redirecting to /bin/systemctl status  openvpn@server.service
openvpn@server.service - OpenVPN Robust And Highly Flexible Tunneling Application On server
   Loaded: loaded (/usr/lib/systemd/system/openvpn@.service; disabled)
   Active: active (running) since Fri 2014-10-17 23:13:49 CEST; 9s ago
  Process: 20445 ExecStart=/usr/sbin/openvpn --daemon --writepid /var/run/openvpn/%i.pid --cd /etc/openvpn/ --config %i.conf (code=exited, status=0/SUCCESS)
 Main PID: 20449 (openvpn)
   CGroup: /system.slice/system-openvpn.slice/openvpn@server.service
           └─20449 /usr/sbin/openvpn --daemon --writepid /var/run/openvpn/server.pid --cd /etc/openvpn/ --config server.conf

Oct 17 23:13:49 server openvpn[20445]: ROUTE_GATEWAY xx.xxx.xx.x/255.255.255.0 IFACE=eth0 HWADDR=XX:XX:XX:XX:XX:XX
Oct 17 23:13:49 server openvpn[20449]: GID set to nobody
Oct 17 23:13:49 server openvpn[20449]: UID set to nobody
Oct 17 23:13:49 server openvpn[20449]: UDPv4 link local (bound): [undef]
Oct 17 23:13:49 server openvpn[20449]: UDPv4 link remote: [undef]
Oct 17 23:13:49 server openvpn[20449]: MULTI: multi_init called, r=256 v=256
Oct 17 23:13:49 server openvpn[20449]: IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0
Oct 17 23:13:49 server systemd[1]: Started OpenVPN Robust And Highly Flexible Tunneling Application On server.
Oct 17 23:13:49 server openvpn[20449]: IFCONFIG POOL LIST
Oct 17 23:13:49 server openvpn[20449]: Initialization Sequence Completed

PS: je suis sur Centos 7.


Cela devrait être marqué comme la bonne réponse.
ansi_lumen

3

Pour toute autre personne qui trouve ce fil, j'ai eu le problème sur Fedora 26. Il s'avère que les instructions que je suivais si vous aviez placé les fichiers conf dans le répertoire / etc / openvpn, mais ils doivent aller dans / etc / openvpn / server.


1
MERCI. Pour les autres qui doivent aller aussi loin: vous devez copier votre ca, crtet key(donc deux .crtfichiers et un .key) fichier dans le même répertoire
AlexWalterbos

C'était aussi la solution pour moi sur CentOS 8
oucil

1

Le problème est SELinux, l'édition /etc/sysconfig/selinuxet la configuration SELINUX=permissive, puis le redémarrage l'ont corrigé pour moi. Je me souviens dans fedora qu'il y avait une commande qui devait être exécutée pour permettre au répertoire cert d'être utilisé correctement, mais j'oublie ce qu'est cette commande. La définition de correctifs permissifs complètement, mais un moyen plus préféré serait de le corriger afin qu'il puisse utiliser le répertoire correctement.


0

Pour le répertoire cert et le problème SElinux, il semble que ce soit assez ancien, signalé pour la première fois ici: https://bugzilla.redhat.com/show_bug.cgi?id=555785 Et il semble que ce soit un bogue en amont, du moins lorsque vous utilisez NetworkManager pour contrôler votre connexion openvpn. Mais le bogue en amont est toujours "non confirmé" -.- https://bugzilla.gnome.org/show_bug.cgi?id=670198

Peut -être que le problème de ré-étiquetage SELinux lors de la tentative d'exécution d'OpenVPN aide en quelque sorte avec les bits SElinux.

Ou si vous souhaitez utiliser des certificats par utilisateur et non des certificats à l'échelle du système: /superuser/339391/making-selinux-play-nice-with-openvpn-in-networkmanager


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.