Documentação de Uso do OpenSSL
OpenSSL é um poderoso pacote de ferramentas open-source utilizado para implementar comunicação segura. Ele fornece funções de criptografia, descriptografia, protocolos SSL/TLS, entre outros. O ServBay já vem com o OpenSSL pré-instalado de fábrica; este documento detalha os métodos de instalação, configuração e uso do OpenSSL.
Sumário
Instalação e Configuração
Instalação
O ServBay já vem com o OpenSSL incluído de fábrica, não sendo necessário instalar separadamente.
Configuração
O arquivo de configuração do OpenSSL geralmente está localizado no diretório /Applications/ServBay/package/common/openssl/3.2
(para processadores Intel está em (/Applications/ServBay/package/common/openssl/1.1.1u
), o arquivo de configuração padrão é openssl.cnf
. Você pode modificar este arquivo conforme necessário para ajustar o comportamento do OpenSSL.
Exemplo de conteúdo do arquivo de configuração:
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Uso Básico
OpenSSL fornece uma rica gama de ferramentas de linha de comando para várias tarefas de criptografia e gerenciamento de certificados. Aqui estão alguns exemplos básicos de uso:
Gerar Chaves Privadas e Públicas
Gerar Chave RSA Privada
openssl genpkey -algorithm RSA -out private_key.pem
Gerar Chave Pública a partir da Chave Privada
openssl rsa -pubout -in private_key.pem -out public_key.pem
Gerar Solicitação de Assinatura de Certificado (CSR)
Gerar CSR
openssl req -new -key private_key.pem -out request.csr
Certificado Autoassinado
Gerar Certificado Autoassinado
openssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
Gerenciamento de Certificados
Visualizar Informações do Certificado
Visualizar Informações do CSR
openssl req -text -noout -verify -in request.csr
Visualizar Informações do Certificado
openssl x509 -text -noout -in certificate.crt
Converter Formatos de Certificado
Converter PEM para DER
openssl x509 -outform der -in certificate.pem -out certificate.der
Converter DER para PEM
openssl x509 -inform der -in certificate.der -out certificate.pem
Criptografia e Descriptografia
Criptografia Simétrica
Criptografar Arquivo com AES
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
Descriptografar Arquivo com AES
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
Criptografia Assimétrica
Criptografar Arquivo com Chave Pública
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plaintext.txt -out encrypted.txt
Descriptografar Arquivo com Chave Privada
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.txt -out decrypted.txt
Perguntas Frequentes
1. Comando do OpenSSL não está funcionando
- Solução: Verifique se o OpenSSL está instalado corretamente e se o caminho para o arquivo de configuração está correto. Caso o problema persista, verifique os logs de erro para obter mais informações.
2. Certificado gerado é inválido
- Solução: Verifique se as informações no arquivo de solicitação de certificado (CSR) e no arquivo de configuração estão corretas. Certifique-se de que todos os campos obrigatórios estão preenchidos.
3. Falha na criptografia ou descriptografia
- Solução: Certifique-se de que a chave e o algoritmo utilizados estão corretamente correspondentes. Verifique se os caminhos dos arquivos de entrada e saída estão corretos.
Conclusão
OpenSSL é um conjunto de ferramentas poderoso e flexível, sendo adequado para diversas tarefas de comunicação segura e criptografia. Com este documento, você pode aprender como instalar, configurar e usar o OpenSSL no ServBay para gerenciamento de certificados e criptografia de dados.