AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 406520
Accepted
Ilya
Ilya
Asked: 2017-11-24 01:52:29 +0800 CST2017-11-24 01:52:29 +0800 CST 2017-11-24 01:52:29 +0800 CST

O OpenVPN auto-compilado não inicia a partir do systemd

  • 772

Eu compilei o openvpn da fonte, executando openvpn --versionretorna:

OpenVPN 2.4.4 x86_64-unknown-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [MH/PKTINFO] [AEAD] built on Nov 19 2017
library versions: OpenSSL 1.0.2g  1 Mar 2016, LZO 2.08

E criou um /etc/openvpn/server.confarquivo com algumas configurações básicas. No entanto, quando tento iniciá-lo, sudo systemctl start openvpn@serverele retorna

Failed to start [email protected]: Unit [email protected] not found.

E sudo systemctl status openvpnretorna:

● openvpn.service
   Loaded: masked (/dev/null; bad)
   Active: inactive (dead) since Sun 2017-11-19 14:21:06 HKT; 4 days ago
 Main PID: 1502 (code=exited, status=0/SUCCESS)

O que me faz pensar que o serviço openvpn nem está registrado.

Eu verifiquei /lib/systemd/system/, não tem openvpn.servicearquivo, mas /etc/systemd/system/tem. Pelo que entendi, é porque compilei em vez de apt-get install openvpn?

Alguém pode sugerir como devo adicionar openvpn auto-compilado como um serviço?

Primeira vez compilando a partir da fonte, então qualquer conselho/dica é muito bem-vindo!

EDIÇÃO 1:

Posso iniciar o servidor openvpn e conectar os clientes a ele (somente o serviço parece não funcionar):

sudo openvpn /etc/openvpn/server.conf
ubuntu compiling
  • 2 2 respostas
  • 13237 Views

2 respostas

  • Voted
  1. Best Answer
    Ilya
    2017-11-24T04:39:14+08:002017-11-24T04:39:14+08:00

    Fez funcionar criando manualmente dois arquivos em /lib/systemd/system.

    A primeira é openvpn.service:

    [Unit]
    Description=OpenVPN service
    After=network.target
    
    [Service]
    Type=oneshot
    RemainAfterExit=yes
    ExecStart=/bin/true
    ExecReload=/bin/true
    WorkingDirectory=/etc/openvpn
    
    [Install]
    WantedBy=multi-user.target
    

    e a segunda é [email protected]:

    [Unit]
    Description=OpenVPN connection to %i
    PartOf=openvpn.service
    ReloadPropagatedFrom=openvpn.service
    Before=systemd-user-sessions.service
    Documentation=man:openvpn(8)
    Documentation=https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage
    Documentation=https://community.openvpn.net/openvpn/wiki/HOWTO
    
    [Service]
    PrivateTmp=true
    KillMode=mixed
    Type=forking
    ExecStart=/usr/local/sbin/openvpn --daemon ovpn-%i --status /run/openvpn/%i.status 10 --cd /etc/openvpn --script-security 2 --config /etc/openvpn/%i.conf --writepid /run/openvpn/%i.pid
    PIDFile=/run/openvpn/%i.pid
    ExecReload=/bin/kill -HUP $MAINPID
    WorkingDirectory=/etc/openvpn
    ProtectSystem=yes
    CapabilityBoundingSet=CAP_IPC_LOCK CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_RAW CAP_SETGID CAP_SETUID CAP_SYS_CHROOT CAP_DAC_READ_SEARCH CAP_AUDIT_WRITE
    LimitNPROC=10
    DeviceAllow=/dev/null rw
    DeviceAllow=/dev/net/tun rw
    
    [Install]
    WantedBy=multi-user.target
    

    Depois de criá-los, faça sudo systemctl daemon-reloadpara recarregar as novas alterações.

    Geralmente, os arquivos são os mesmos, como se o openvpn fosse instalado do repositório oficial, a única diferença ExecStart=/usr/sbin/openvpndeveria ser ExecStart=/usr/local/sbin/openvpn, apontando para o openVPN local compilado.

    Editar: Se você usar o openvpn 2.4+, remova PIDFile=/run/openvpn/%i.pide --writepid /run/openvpn/%i.piddo segundo arquivo, pois impede que o servidor seja iniciado na inicialização. Encontrei aqui

    • 7
  2. River Rock
    2020-04-15T07:17:35+08:002020-04-15T07:17:35+08:00

    Atualizando da resposta de Ilya (não tenho reputação para comentar)

    Eu o tenho trabalhando no Ubuntu 16.04 usando o serviço fornecido como modelo (portanto, um único arquivo de serviço), alterando duas coisas:

    sudo cp ~/Downloads/openvpn-2.4.8/distro/systemd/[email protected] /lib/systemd/system/[email protected]
    
    sudo vi /lib/systemd/system/[email protected]
    

    Mudar:

    • @sbindir@ para /usr/local/sbin/
    • Tipo=notificar para Tipo=simples

    Recarregar e Iniciar

    sudo systemctl daemon-reload
    service [email protected] restart
    service [email protected] status
    

    Isso pressupõe que você já tenha sua configuração em /etc/openvpn/client/client.service.conf

    • 3

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Matriz JSON para bash variáveis ​​usando jq

    • 4 respostas
  • Marko Smith

    A data pode formatar a hora atual para o fuso horário GMT? [duplicado]

    • 2 respostas
  • Marko Smith

    bash + lê variáveis ​​e valores do arquivo pelo script bash

    • 4 respostas
  • Marko Smith

    Como posso copiar um diretório e renomeá-lo no mesmo comando?

    • 4 respostas
  • Marko Smith

    conexão ssh. Conexão X11 rejeitada devido a autenticação incorreta

    • 3 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Marko Smith

    comando systemctl não funciona no RHEL 6

    • 3 respostas
  • Marko Smith

    rsync porta 22 e 873 uso

    • 2 respostas
  • Marko Smith

    snap /dev/loop em 100% de utilização -- sem espaço livre

    • 1 respostas
  • Marko Smith

    chave de impressão jq e valor para todos no subobjeto

    • 2 respostas
  • Martin Hope
    EHerman Matriz JSON para bash variáveis ​​usando jq 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux A data pode formatar a hora atual para o fuso horário GMT? [duplicado] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC Como posso copiar um diretório e renomeá-lo no mesmo comando? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve Como as permissões de arquivo funcionam para o usuário "root"? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe Altere o editor padrão para vim para _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey Como baixar o pacote não instalá-lo com o comando apt-get? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao Por que os diretórios /home, /usr, /var, etc. têm o mesmo número de inode (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg — o comando list-keys gera uid [ desconhecido ] depois de importar a chave privada para uma instalação limpa 2017-11-26 18:26:02 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve