Geração de Chave e Certificado
Este tutorial apresenta os passos necessários para se fazer a geração de Chave e Certificado SSL.A seguir serão apresentados os requisitos bem como roteiro para a referida instalação.

Roteiro

1. Crie o arquivo /tmp/openssl.cnf com o conteúdo a seguir não esquece de substituir a variável $HOSTNAME pelo hostname máquina (ex.: servidor, não utilizar servidor.instituicao.br).

1
vi /tmp/openssl.cnf
Copied!
1
[ req ]
2
default_bits = 2048 # Size of keys
3
string_mask = nombstr # permitted characters
4
distinguished_name = req_distinguished_name
5
[ req_distinguished_name ]
6
# Variable name Prompt string
7
#---------------------- ----------------------------------
8
0.organizationName = Nome da universidade/organização
9
organizationalUnitName = Departamento da universidade/organização
10
emailAddress = Endereço de email da administração
11
emailAddress_max = 40
12
localityName = Nome do município (por extenso)
13
stateOrProvinceName = Unidade da Federação (por extenso)
14
countryName = Nome do país (código de 2 letras)
15
countryName_min = 2
16
countryName_max = 2
17
commonName = Nome completo do host (incluíndo o domínio)
18
commonName_max = 64
19
# Default values for the above, for consistency and less typing.
20
# Variable name Value
21
#------------------------------ ------------------------------
22
#0.organizationName_default =
23
organizationalUnitName_default = CPD
24
#localityName_default = Porto Alegre
25
#stateOrProvinceName_default = Rio Grande do Sul
26
countryName_default = BR
27
commonName_default = $HOSTNAME
Copied!
É possível fazer o download do arquivo acima através da seguinte linha de comando:
1
wget https://svn.rnp.br/repos/CAFe/conf/ssl/openssl.cnf -O /tmp/openssl.cnf --no-check-certificate
Copied!

2. Muito embora este seja um roteiro genérico, cada aplicação que for utilizar chave/certificado possuirá particularidades. Desta forma, escolha os comandos a serem executados neste passo de acordo com a aplicação que utilizará chave/certificado.

2.1 Apache

1
openssl genrsa 2048 -config /tmp/openssl.cnf > /etc/ssl/private/chave-apache.key
2
openssl req -new -x509 -nodes -days 1095 -sha1 -key /etc/ssl/private/chave-apache.key -set_serial 00 \
3
-config /tmp/openssl.cnf > /etc/ssl/certs/certificado-apache.crt
4
chown root:ssl-cert /etc/ssl/private/chave-apache.key /etc/ssl/certs/certificado-apache.crt
5
chmod 640 /etc/ssl/private/chave-apache.key
Copied!

2.2 OpenLDAP

1
openssl genrsa -out /etc/ldap/$HOSTNAME.key 2048 -config /tmp/openssl.cnf
2
openssl req -new -key /etc/ldap/$HOSTNAME.key -out /etc/ldap/$HOSTNAME.csr -batch -config /tmp/openssl.cnf
3
openssl x509 -req -days 730 -in /etc/ldap/$HOSTNAME.csr -signkey /etc/ldap/$HOSTNAME.key -out /etc/ldap/$HOSTNAME.crt
Copied!

2.3 Shibboleth IDP

  • No quarto comando, informe os seguintes dados:
    • Confirme o código do País (BR)
    • Unidade da federação (por extenso)
    • Cidade (por extenso)
    • Instituição (preferencialmente preencha com [ABREV - Nome por extenso])
    • Departamento da instituição (preferencialmente preencha com [ABREV - Nome por extenso])
    • Confirme que o Hostname está correto (nome DNS por extenso do host que será o IDP) *No quinto comando, informe a senha "changeit". A senha está cadastrada no arquivo /etc/tomcat6/server.xml e o tomcat6 precisará dela para abrir o keystore que está sendo gerado.
1
cd /opt/shibboleth-idp/credentials/
2
rm -f idp*
3
openssl genrsa 2048 -config /tmp/openssl.cnf > idp.key
4
openssl req -new -x509 -nodes -days 1825 -sha1 -key idp.key -set_serial 00 -config /tmp/openssl.cnf > idp.crt
5
openssl pkcs12 -export -in idp.crt -inkey idp.key -out idp.p12 -name idp -caname selfsigned
6
2.4 Shibboleth SP
7
openssl genrsa -out /etc/ssl/private/$HOSTNAME.key 2048 -config /tmp/openssl.cnf
8
openssl req -new -key /etc/ssl/private/$HOSTNAME.key -out /etc/ssl/private/$HOSTNAME.csr -batch -config /tmp/openssl.cnf
9
openssl x509 -req -days 730 -in /etc/ssl/private/$HOSTNAME.csr -signkey /etc/ssl/private/$HOSTNAME.key -out /etc/ssl/certs/$HOSTNAME.crt
Copied!

2.5 SimpleSAML

1
cd /var/simplesamlphp/cert
2
openssl genrsa 2048 -config /tmp/openssl.cnf > simplesaml.key
3
openssl req -new -x509 -nodes -days 1095 -sha1 -key simplesaml.key -set_serial 00 -config /tmp/openssl.cnf > simplesaml.crt
4
openssl pkcs12 -export -in simplesaml.crt -inkey simplesaml.key -out simplesaml.p12 -name simplesaml -caname selfsigned
Copied!

3. Exclua o arquivo /tmp/openssl.cnf. Para tanto, execute a linha de comando a seguir:

1
rm -f /tmp/openssl.cnf
Copied!
Last modified 2mo ago
Export as PDF
Copy link