

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á.

# Tutorial: Como configurar o acesso à rede privada usando um Linux Bastion Host
<a name="tutorials-private-network-bastion"></a>

Este tutorial mostra as etapas para criar um túnel SSH do seu computador para o servidor Web do Apache Airflow para seu ambiente Amazon Managed Workflows para Apache Airflow. Pressupõe-se que você já tenha criado um ambiente Amazon MWAA. Depois de configurado, um Linux Bastion Host atua como um servidor jump, permitindo uma conexão segura do seu computador com os recursos em sua VPC. Em seguida, você usará um complemento de gerenciamento de proxy SOCKS para controlar as configurações de proxy em seu navegador e acessar sua IU do Apache Airflow.

**nota**  
Este tutorial se aplica ao modo de acesso à **rede privada**. Se você escolher **Acesso à rede pública e privada**, não precisará de um bastion host para acessar a interface do Apache Airflow, pois ela pode ser acessada pela Internet.

**Topics**
+ [Rede privada](#private-network-lb-onconsole)
+ [Casos de uso](#private-network-lb-usecases)
+ [Antes de começar](#private-network-lb-prereqs)
+ [Objetivos](#private-network-lb-objectives)
+ [Etapa 1: criar a instância do bastion](#private-network-lb-create-bastion)
+ [Etapa 2: criar o túnel ssh](#private-network-lb-create-test)
+ [Etapa 3: configurar o grupo de segurança bastion como uma regra de entrada](#private-network-lb-create-sgsource)
+ [Etapa 4: copiar o URL do Apache Airflow](#private-network-lb-view-env)
+ [Etapa 5: definir as configurações de proxy](#private-network-lb-browser-extension)
+ [Etapa 6: abra a IU do Apache Airflow](#private-network-lb-open)
+ [Próximas etapas](#bastion-next-up)

## Rede privada
<a name="private-network-lb-onconsole"></a>

Este tutorial pressupõe que você tenha escolhido o modo de acesso à **rede privada** para seu servidor Web do Apache Airflow.

![Esta imagem mostra a arquitetura de um ambiente Amazon MWAA com acesso à rede privada.](http://docs.aws.amazon.com/pt_br/mwaa/latest/userguide/images/mwaa-private-web-server.png)


O modo de acesso à rede privada limita o acesso à interface do usuário do Apache Airflow aos usuários *dentro da sua Amazon VPC* que receberam acesso à [política do IAM do seu ambiente](access-policies.md).

Ao criar um ambiente com acesso à **rede privada**, você deve empacotar todas as suas dependências em um arquivo Python wheel `.whl` () e, em seguida, `.whl` referenciá-las em seu. `requirements.txt` Para obter instruções sobre como empacotar e instalar suas dependências usando o wheel, consulte [Gerenciamento de dependências usando o wheel do Python](best-practices-dependencies.md#best-practices-dependencies-python-wheels).

A imagem a seguir mostra onde encontrar a opção **Rede privada** no console do Amazon MWAA.

![Esta imagem mostra onde encontrar a opção de Rede privada no console do Amazon MWAA.](http://docs.aws.amazon.com/pt_br/mwaa/latest/userguide/images/mwaa-console-private-network-2026.png)


## Casos de uso
<a name="private-network-lb-usecases"></a>

Você pode usar este tutorial depois de criar um ambiente Amazon MWAA. Você deve usar a mesma Amazon VPC, grupos de segurança VPC e sub-redes públicas do seu ambiente.

## Antes de começar
<a name="private-network-lb-prereqs"></a>

1. Verifique as permissões do usuário. Certifique-se de que sua conta no AWS Identity and Access Management (IAM) tenha permissões suficientes para criar e gerenciar recursos de VPC.

1. Use sua VPC do Amazon MWAA. Este tutorial pressupõe que você esteja associando o bastion host a uma VPC existente. O Amazon VPC deve estar na mesma região de seu ambiente do Amazon MWAA e ter duas sub-redes privadas, como definido em [Criar a rede VPC](vpc-create.md).

1. Crie uma chave SSH. Você precisa criar uma chave SSH do Amazon EC2 (**.pem**) na mesma região do seu ambiente Amazon MWAA para se conectar aos servidores virtuais. Se você não tiver uma chave SSH, consulte [Criar ou importar um par de chaves](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#prepare-key-pair) no *Guia do usuário do Amazon EC2*.

## Objetivos
<a name="private-network-lb-objectives"></a>

Neste tutorial, você irá:

1. Crie uma instância do Linux Bastion Host usando um [Modelo CloudFormation para uma VPC existente](https://fwd.aws/vWMxm).

1. Autorize o tráfego de entrada para o grupo de segurança da instância bastion usando uma regra de entrada na porta `22`.

1. Autorize o tráfego de entrada do grupo de segurança de um ambiente do Amazon MWAA para o grupo de segurança da instância do Bastion.

1. Crie um túnel SSH para a instância do bastion.

1. Instale e configure o FoxyProxy complemento para o navegador Firefox para acessar a interface do Apache Airflow.

## Etapa 1: criar a instância do bastion
<a name="private-network-lb-create-bastion"></a>

A seção a seguir descreve as etapas para criar a instância Linux Bastion usando um [CloudFormation modelo para uma VPC existente](https://fwd.aws/vWMxm) no CloudFormation console.

**Para criar o Linux Bastion Host**

1. Abra a página [Deploy Quick Start](https://fwd.aws/Jwzqv) no CloudFormation console.

1. Use o seletor de região na barra de navegação para escolher o mesmo ambiente Região da AWS do Amazon MWAA.

1. Escolha **Próximo**.

1. Digite um nome no campo de texto **Nome da pilha**, como `mwaa-linux-bastion`.

1. No painel **Parâmetros**, **Configuração de rede**, escolha as seguintes opções:

   1. Escolha o seu **ID da VPC** do ambiente do Amazon VPC.

   1. Escolha o seu **ID da sub-rede pública 1** do ambiente do Amazon VPC.

   1. Escolha o seu **ID da sub-rede pública 2** do ambiente do Amazon VPC.

   1. Insira o intervalo de endereços mais estreito possível (por exemplo, um intervalo CIDR interno) em **CIDR de acesso externo permitido ao Bastion**.
**nota**  
A maneira mais simples de identificar um intervalo é usar o mesmo intervalo CIDR de suas sub-redes públicas. Por exemplo, as sub-redes públicas no CloudFormation modelo na [Criar a rede VPC](vpc-create.md) página são e. `10.192.10.0/24` `10.192.11.0/24`

1. No painel **Configuração do Amazon EC2**, escolha o seguinte:

   1. Escolha sua chave SSH na lista suspensa em **Nome do par de chaves**.

   1. Insira um nome em **Nome do bastion host**.

   1. Escolha **verdadeiro** para **Encaminhamento TCP**.
**Atenção**  
O encaminhamento TCP deve ser definido como **verdadeiro** nesta etapa. Caso contrário, não será possível criar um túnel SSH na etapa seguinte.

1. Escolha **Avançar**, **Avançar**.

1. Selecione a confirmação e então escolha **Criar pilha**.

Para saber mais sobre a arquitetura do seu Linux Bastion Host, consulte [Linux Bastion Hosts on the AWS Cloud:](https://docs.aws.amazon.com/quickstart/latest/linux-bastion/architecture.html) Architecture.

## Etapa 2: criar o túnel ssh
<a name="private-network-lb-create-test"></a>

As etapas a seguir descrevem como criar o túnel ssh para o seu bastion do Linux. Um túnel SSH recebe a solicitação do seu endereço IP local para o linux bastion, e é por isso que o encaminhamento de TCP para o linux bastion foi configurado para `true` nas etapas anteriores.

------
#### [ macOS/Linux ]

**Para criar um túnel usando a linha de comando**

1. Abra a página [Instâncias](https://console.aws.amazon.com/ec2/v2/home#/Instances:) no console do Amazon EC2.

1. Escolha uma instância.

1. Copie o endereço em **DNS IPv4 pública**. Por exemplo, .`ec2-4-82-142-1.compute-1.amazonaws.com`

1. No prompt de comando, navegue até o diretório em que sua chave SSH está armazenada.

1. Execute o comando a seguir para se conectar à instância do bastion usando ssh. Substitua o valor da amostra pelo nome da sua chave SSH em `mykeypair.pem`.

   ```
   ssh -i {{mykeypair.pem}} -N -D 8157 ec2-user@{{YOUR_PUBLIC_IPV4_DNS}}
   ```

------
#### [ Windows (PuTTY) ]

**Para criar um túnel usando PuTTY**

1. Abra a página [Instâncias](https://console.aws.amazon.com/ec2/v2/home#/Instances:) no console do Amazon EC2.

1. Escolha uma instância.

1. Copie o endereço em **DNS IPv4 pública**. Por exemplo, .`ec2-4-82-142-1.compute-1.amazonaws.com`

1. Abra o [PuTTY](https://www.putty.org/), e selecione **Sessão**.

1. **Insira o nome do host em Nome **do host** como ec2-user@ {{YOUR\_PUBLIC\_IPV4\_DNS}} e a porta como.** `22`

1. Expanda a guia **SSH** e selecione **Auth**. Em **Arquivo de chave privada para autenticação**, escolha seu arquivo “ppk” local.

1. Em SSH, escolha a guia **Túneis** e selecione as opções *Dinâmico* e *Automático*.

1. Em **Porta de origem** adicione a porta `8157` (ou qualquer outra porta não usada) e deixe a porta **Destino** em branco. Escolha **Adicionar**.

1. Escolha a guia **Sessão** e insira o nome da sessão. Por exemplo, `SSH Tunnel`.

1. Escolha **Salvar**, **Abrir**.
**nota**  
Talvez seja necessário inserir uma frase secreta para sua chave pública.

------

**nota**  
Se você receber um `Permission denied (publickey)` erro, recomendamos usar a [AWSSupport-TroubleshootSSH](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-awssupport-troubleshootssh.html)ferramenta e escolher **Executar esta automação (console)** para solucionar problemas na configuração do SSH.

## Etapa 3: configurar o grupo de segurança bastion como uma regra de entrada
<a name="private-network-lb-create-sgsource"></a>

O acesso aos servidores e o acesso regular à Internet a partir dos servidores são permitidos com um grupo de segurança especial de manutenção conectado a esses servidores. As etapas a seguir descrevem como configurar o grupo de segurança bastion como uma fonte de tráfego de entrada para o grupo de segurança VPC de um ambiente.

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha um ambiente.

1. No painel **Rede**, escolha **Grupo de segurança VPC**.

1. Escolha **Editar regras de entrada**.

1. Escolha **Adicionar regra**.

1. Escolha sua ID do grupo de segurança da VPC na lista suspensa **Fonte**.

1. Deixe as opções restantes em branco ou defina-as com seus valores padrão.

1. Escolha **Salvar regras**.

## Etapa 4: copiar o URL do Apache Airflow
<a name="private-network-lb-view-env"></a>

As etapas a seguir descrevem como abrir o console do Amazon MWAA e copiar o URL para a IU do Apache Airflow.

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha um ambiente.

1. Copie o URL na **IU do Airflow** para as etapas subsequentes.

## Etapa 5: definir as configurações de proxy
<a name="private-network-lb-browser-extension"></a>

Se você usar um túnel SSH com o encaminhamento de portas dinâmicas, deverá usar um complemento de gerenciamento de proxy SOCKS para controlar as configurações de proxy no seu navegador. Por exemplo, você pode usar o `--proxy-server` recurso do Chromium para iniciar uma sessão do navegador ou usar a FoxyProxy extensão no navegador Mozilla FireFox .

### Opção um: configure um túnel SSH usando o encaminhamento de portas locais
<a name="private-network-lb-browser-extension-portforwarding"></a>

Se não quiser usar um proxy SOCKS, é possível configurar um túnel SSH usando o encaminhamento de portas locais. O comando de exemplo a seguir acessa a interface web do Amazon *ResourceManager*EC2 encaminhando o tráfego na porta local 8157.

1. Abra uma nova janela do prompt de comando.

1. Digite o seguinte comando para abrir um túnel SSH.

   ```
   ssh -i {{mykeypair.pem}} -N -L 8157:{{YOUR_VPC_ENDPOINT_ID}}-vpce.{{us-east-1}}.airflow.amazonaws.com:443 ubuntu@{{YOUR_PUBLIC_IPV4_DNS}}.{{us-east-1}}.compute.amazonaws.com
   ```

   `-L` significa o uso do encaminhamento de portas locais, que você pode usar para especificar uma porta local usada para encaminhar dados à porta remota identificada no servidor Web local do nó.

1. Digite `http://localhost:8157/` no navegador.
**nota**  
Talvez seja necessário usar `https://localhost:8157/`.

### Opção dois: proxies via linha de comando
<a name="private-network-lb-browser-extension-foxyp"></a>

É possível usar a maioria dos navegadores da Web para configurar proxies por meio de uma linha de comando ou parâmetro de configuração. Por exemplo, com o Chromium, é possível iniciar o navegador com o seguinte comando:

```
chromium --proxy-server="socks5://localhost:8157"
```

Ele inicia uma sessão do navegador que usa o túnel ssh que você criou nas etapas anteriores para proxy de suas solicitações. É possível abrir sua URL privada do ambiente Amazon MWAA (com *https://*) da seguinte forma:

```
https://{{YOUR_VPC_ENDPOINT_ID}}-vpce.{{us-east-1}}.airflow.amazonaws.com/home.
```

### Opção três: uso de proxies FoxyProxy para o Mozilla Firefox
<a name="private-network-lb-browser-extension-foxyp"></a>

O exemplo a seguir demonstra uma configuração FoxyProxy padrão (versão 7.5.1) para o Mozilla Firefox. FoxyProxy fornece um conjunto de ferramentas de gerenciamento de proxy. Permite que seja usado um servidor proxy para URLs que corresponda aos padrões correspondentes aos domínios usados pela IU do Apache Airflow.

1. No Firefox, abra a página de extensão [FoxyProxy padrão](https://addons.mozilla.org/en-US/firefox/addon/foxyproxy-standard/).

1. Escolha **Adicionar ao Firefox**.

1. Escolha **Adicionar**.

1. Escolha o FoxyProxy ícone na barra de ferramentas do seu navegador e escolha **Opções**.

1. Copie o código a seguir e salve localmente como `mwaa-proxy.json`. Substitua o valor da amostra pelo seu URL do **Apache Airflow**. {{YOUR\_HOST\_NAME}}

   ```
   {
     "e0b7kh1606694837384": {
       "type": 3,
       "color": "#66cc66",
       "title": "airflow",
       "active": true,
       "address": "localhost",
       "port": 8157,
       "proxyDNS": false,
       "username": "",
       "password": "",
       "whitePatterns": [
         {
           "title": "airflow-ui",
           "pattern": "{{YOUR_HOST_NAME}}",
           "type": 1,
           "protocols": 1,
           "active": true
         }
       ],
       "blackPatterns": [],
       "pacURL": "",
       "index": -1
     },
     "k20d21508277536715": {
       "active": true,
       "title": "Default",
       "notes": "These are the settings that are used when no patterns match a URL.",
       "color": "#0055E5",
       "type": 5,
       "whitePatterns": [
         {
           "title": "all URLs",
           "active": true,
           "pattern": "*",
           "type": 1,
           "protocols": 1
         }
       ],
       "blackPatterns": [],
         "index": 9007199254740991
     },
     "logging": {
       "active": true,
       "maxSize": 500
     },
     "mode": "patterns",
     "browserVersion": "82.0.3",
     "foxyProxyVersion": "7.5.1",
     "foxyProxyEdition": "standard"
   }
   ```

1. No painel **Importar configurações do painel FoxyProxy 6.0\+**, escolha **Importar configurações** e selecione o arquivo. `mwaa-proxy.json`

1. Escolha **OK**.

## Etapa 6: abra a IU do Apache Airflow
<a name="private-network-lb-open"></a>

As etapas a seguir descrevem como abrir sua IU do Apache Airflow.

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha **Abrir a IU do Airflow**.

## Próximas etapas
<a name="bastion-next-up"></a>
+ Saiba como executar comandos CLI do Airflow em um túnel SSH para um bastion host em [Referência de comandos da CLI do Apache Airflow](airflow-cli-command-reference.md).
+ Aprenda a fazer upload de um código DAG para seu bucket do Amazon S3 em [Como adicionar ou atualizar DAGs](configuring-dag-folder.md).