openvpn []: Erro de opções: Em [CMD-LINE]: 1: Erro ao abrir o arquivo de configuração

14

ao tentar 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

correr openvpn devnet-client-vm.conffunciona muito bem. Por que o openvpn não inicia? como posso consertar isso?

xenoterracida
fonte
I forneceu uma resposta, mas eu incentivar respostas que não envolvem a castração SELinux
xenoterracide

Respostas:

12

Você pode querer correr

fixfiles -R openvpn restore

Um ls -alZ deve fornecer algo parecido com isto (mostrando seus arquivos agora no contexto correto do selinux):

[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

Se você tem uma declaração como

status openvpn-status.log

no seu arquivo de configuração openvpn, você pode perceber que o servidor ainda não será iniciado. Uma espiada no /var/log/audit/audit.log revelará

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

Alterar o contexto deste arquivo para rw faz o truque:

chcon -t openvpn_etc_rw_t openvpn-status.log

e

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

se tornará

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

Depois a ligação

service openvpn@server start

funcionou perfeitamente.

[root@server openvpn]# service openvpn@server status
Redirecting to /bin/systemctl status  [email protected]
[email protected] - OpenVPN Robust And Highly Flexible Tunneling Application On server
   Loaded: loaded (/usr/lib/systemd/system/[email protected]; 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/[email protected]
           └─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: Estou no Centos 7.

massimo2001
fonte
Isso deve ser marcado como a resposta correta.
ansi_lumen 29/03
3

Para qualquer outra pessoa que encontre esse segmento, tive o problema no Fedora 26. Acontece que as instruções que eu estava seguindo se você colocou os arquivos conf no diretório / etc / openvpn, mas eles precisam acessar o arquivo / etc / openvpn / server.

Jeremias
fonte
1
OBRIGADO. Para outros que têm de ir esta profunda: Você tem que copiar o seu ca, crte key(assim dois .crtarquivos e um .key) arquivo para o mesmo diretório
AlexWalterbos
Esta também foi a solução para mim no CentOS 8
oucil 6/11/19
1

O problema é o SELinux, editar /etc/sysconfig/selinuxe configurar SELINUX=permissivee depois reiniciar o corrigiu para mim. Lembro no fedora que havia um comando que precisava ser executado para permitir que o diretório cert fosse usado corretamente, mas esqueço o que é esse comando. Definir para correções permissivas completamente, mas uma maneira mais preferida seria corrigi-lo para que ele possa usar o diretório corretamente.

xenoterracida
fonte
0

Para o diretório cert e o problema do SElinux, parece bastante antigo, primeiro relatado aqui: https://bugzilla.redhat.com/show_bug.cgi?id=555785 E parece que é um bug de upstream, pelo menos quando você usa o NetworkManager para controlar sua conexão openvpn. Mas o bug do upstream ainda é "não confirmado" -.- https://bugzilla.gnome.org/show_bug.cgi?id=670198

Talvez o problema de rotular novamente o SELinux ao tentar executar o OpenVPN ajude de alguma forma com os bits do SElinux.

Ou se você deseja usar certificados por usuário, e não em todo o sistema: /superuser/339391/making-selinux-play-nice-with-openvpn-in-networkmanager

doktor5000
fonte
0

Resolvi o erro acima movendo o (s) arquivo (s) conf para o  clientdiretório, por exemplo,

/etc/openvpn/client/openvpn.conf
Anmol Jain
fonte
1
@ GAD3R: Hein? Parece-me que este não fornecer uma resposta para a pergunta; tanto quanto a resposta de Jeremias , que é semelhante (mas não idêntica).
G-Man Diz 'Reinstate Monica' em