

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criar e acessar um certificado X509
<a name="configuring-https-ssl"></a>

Você pode criar um certificado X509 para seu aplicativo com `OpenSSL`. OpenSSL é uma biblioteca de código aberto padrão que oferece suporte a uma grande variedade de funções de criptografia, incluindo a criação e a assinatura de certificados x509. Para obter mais informações sobre OpenSSL, visite [www.openssl.org](https://www.openssl.org/).

**nota**  
Só será necessário criar um certificado localmente se você quiser [usar HTTPS em um ambiente de instância única](https-singleinstance.md) ou [criptografar novamente no back-end](configuring-https-endtoend.md) com um certificado autoassinado. Se você possui um nome de domínio, pode criar um certificado AWS e usá-lo com um ambiente de balanceamento de carga gratuitamente usando AWS Certificate Manager (ACM). Consulte [Solicite um certificado](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request.html) no*AWS Certificate Manager Guia do usuário* para obter instruções.

Execute `openssl version` na linha de comando para verificar se o OpenSSL já está instalado. Caso contrário, você pode criar e instalar o código-fonte usando as instruções no [ GitHub repositório público](https://github.com/openssl/openssl) ou usar seu gerenciador de pacotes favorito. [O OpenSSL também está instalado nas imagens Linux do Elastic Beanstalk, então uma alternativa rápida é conectar-se a uma instância em EC2 um ambiente em execução usando o comando da EB CLI:](eb-cli3.md) **eb ssh**

```
~/eb$ eb ssh
[ec2-user@ip-255-55-55-255 ~]$ openssl version
OpenSSL 1.0.1k-fips 8 Jan 2015
```

Você precisa criar uma chave privada RSA para criar sua solicitação de assinatura de certificado (CSR). Para criar sua chave privada, use o comando **openssl genrsa**:

```
[ec2-user@ip-255-55-55-255 ~]$ openssl genrsa 2048 > privatekey.pem
Generating RSA private key, 2048 bit long modulus
.................................................................................................................................+++
...............+++
e is 65537 (0x10001)
```

*privatekey.pem*  
O nome do arquivo onde deseja salvar a chave privada. Em geral, o comando **openssl genrsa** imprime o conteúdo da chave privada na tela, mas esse comando envia a saída para um arquivo. Escolha qualquer nome de arquivo e armazene o arquivo em um local seguro, de modo que possa recuperá-lo mais tarde. Se você perder a sua chave privada, não poderá usar seu certificado.

Um CSR é um arquivo que você envia a uma autoridade de certificação (CA) para solicitar um certificado de servidor digital. Para criar um CSR, use o comando **openssl req**:

```
$ openssl req -new -key privatekey.pem -out csr.pem
You are about to be asked to enter information that will be incorporated 
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
```

Insira as informações solicitadas e pressione **Enter**. A tabela a seguir descreve e mostra exemplos para cada campo.


****  

| Name (Nome) | Descrição | Exemplo | 
| --- | --- | --- | 
| Nome do país | A abreviação ISO de duas letras para seu país. | US = Estados Unidos | 
| Estado | O nome do estado ou província onde sua organização está localizada. Você não pode abreviar esse nome. | Washington | 
| Nome da localidade | O nome da cidade onde sua organização está localizada. | Seattle | 
| Nome da organização | A razão social completa da sua organização. Não abrevie o nome de sua organização. | Corporação de exemplo | 
| Unidade organizacional | Opcional, para fornecer informações adicionais sobre sua organização. | Marketing | 
| Nome comum | O nome de domínio totalmente qualificado para o seu site. Isso deve corresponder ao nome de domínio que os usuários veem quando visitam seu site; caso contrário, serão mostrados erros de certificado. | www.exemplo.com | 
| Endereço de e-mail | O endereço de e-mail do administrador do site. | someone@example.com | 

Você pode enviar a solicitação de assinatura para terceiros assinarem ou assine-a você mesmo para desenvolvimento e teste. Certificados autoassinados também podem ser usados para HTTPS de back-end entre um balanceador de carga e instâncias. EC2 

Para assinar o certificado, use o comando **openssl x509**. O exemplo a seguir usa a chave privada da etapa anterior (*privatekey.pem*) e a solicitação de assinatura (*csr.pem*) para criar um certificado público chamado *public.crt* válido por *365* dias.

```
$ openssl x509 -req -days 365 -in csr.pem -signkey privatekey.pem -out public.crt
Signature ok
subject=/C=us/ST=washington/L=seattle/O=example corporation/OU=marketing/CN=www.example.com/emailAddress=someone@example.com
Getting Private key
```

Guarde a chave privada e o certificado público para uso posterior. Você pode descartar a solicitação de assinatura. Sempre [armazene a chave privada em um local seguro](https-storingprivatekeys.md) e evite adicioná-la ao seu código-fonte.

Para usar o certificado com a plataforma Windows Server, converta-o em um formato PFX. Use o comando a seguir para criar um certificado PFX da chave privada e dos arquivos públicos do certificado:

```
$ openssl pkcs12 -export -out example.com.pfx -inkey privatekey.pem -in public.crt
Enter Export Password: password
Verifying - Enter Export Password: password
```

Agora que você tem um certificado, pode [fazer upload para o IAM](configuring-https-ssl-upload.md) para uso com um load balancer ou [configurar as instâncias em seu ambiente para encerrar o HTTPS](https-singleinstance.md).