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 / ubuntu / Perguntas / 1546455
Accepted
lensboard
lensboard
Asked: 2025-04-25 07:01:08 +0800 CST2025-04-25 07:01:08 +0800 CST 2025-04-25 07:01:08 +0800 CST

Como posso automatizar o fornecimento de uma senha para ./easyrsa gen-req no Ubuntu 24.04?

  • 772

Pergunta original:

Passei horas lendo o manual e procurando por essa resposta e todas as soluções estão desatualizadas ou não funcionam.

Estou usando o Ubuntu 24.04.2 LTS

Quero executar este comando em um script bash e fornecer a senha em um arquivo ou variável com antecedência, sem intervenção do usuário:

./easyrsa gen-req nome_do_cliente

Se você tiver uma resposta que funcione hoje, ficarei grato.

Informações sobre a versão do EasyRSA Versão: 3.1.7

Documentação/Manual

GitHub

openvpn
  • 2 2 respostas
  • 143 Views

2 respostas

  • Voted
  1. muru
    2025-04-25T22:36:11+08:002025-04-25T22:36:11+08:00

    O Easy RSA é essencialmente um wrapper para openssl, então procure como evitar solicitações de senha paraopenssl . Como alguns usuários experientes observaram naquela postagem de Superusuário, a opção para definir uma senha para um arquivo de saída é --passout, e esta é uma das opções globais aceitas pelo easyrsascript.

    Então tente:

    ./easyrsa --passout=pass:abc gen-req client-name
    

    Onde abcestá a senha?

    • 3
  2. Best Answer
    lensboard
    2025-04-25T23:52:22+08:002025-04-25T23:52:22+08:00

    A solução verificada

    Mudei de gen-reqpara build-client-fullpara permitir a automatização da criação completa do cliente em um único comando, sem a necessidade de assinar a solicitação. A --batchopção elimina a solicitação do nome comum como entrada e usa o nome de entrada como nome comum. O build-client-fullcomando também cria um arquivo embutido localizado em /etc/openvpn/easy-rsa/pki/inline/que contém o certificado, a chave e a CA.

    Caso contrário, se não estiver usando a --batchopção de usar um nome inserido como Nome Comum (CN) no EasyRSA, você precisará modificar o arquivo vars e usar o --req-cnsinalizador ao gerar a solicitação de certificado. O set_var EASYRSA_REQ_CN "your_common_name"comando no arquivo vars definirá o CN padrão, e o sinalizador --req-cn permite substituí-lo para uma solicitação específica, como ao gerar um certificado de servidor ou cliente.

    Esses dois comandos foram verificados para funcionar em uma configuração OpenVPN ativa. Um deles usa um arquivo como opção e o outro usa uma senha embutida:

    root@ubuntu:/etc/openvpn/easy-rsa# ./easyrsa --batch --passout=file:passfile build-client-full client_name
    root@ubuntu:/etc/openvpn/easy-rsa# ./easyrsa --batch --passout=pass:password build-client-full client_name
    

    Nota: Você deve estar no diretório /etc/openvpn/easy-rsa/, ou onde quer que o easy-rsa esteja localizado para que os comandos funcionem.

    Aqui está a saída sem intervenção do usuário:

    Notice
    ------
    Private-Key and Public-Certificate-Request files created.
    Your files are:
    * req: /etc/openvpn/easy-rsa/pki/reqs/client_name.req
    * key: /etc/openvpn/easy-rsa/pki/private/client_name.key 
    
    Using configuration from /etc/openvpn/easy-rsa/pki/openssl-easyrsa.cnf
    Check that the request matches the signature
    Signature ok
    The Subject's Distinguished Name is as follows
    commonName            :ASN.1 12:'client_name'
    Certificate is to be certified until Oct 22 14:36:17 2025 GMT (180 days)
    
    Write out database with 1 new entries
    Database updated
    
    Notice
    ------
    Certificate created at:
    * /etc/openvpn/easy-rsa/pki/issued/client_name.crt
    
    Notice
    ------
    Inline file created:
    * /etc/openvpn/easy-rsa/pki/inline/client_name.inline
    
    • 3

relate perguntas

Sidebar

Stats

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

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

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