# Como definir as main settings de um firewall

import DocButton from '~/components/webkit/DocButton.vue';
import Tag from '~/components/webkit/Tag.vue'
import Tabs from '~/components/tabs/Tabs'
import Code from '~/components/Code/Code.astro'


Após criar um firewall na Azion, você pode modificar algumas configurações. Neste guia, você aprenderá a modificar os domínios associados ao seu firewall e a habilitar os módulos disponíveis.

---

<Tabs client:visible>
    <Fragment slot="tab.console">Console</Fragment>
    <Fragment slot="tab.api">API</Fragment>

<Fragment slot="panel.console">
Nesta seção, você modificará as principais configurações de seus firewalls: nome, domínios e módulos via [Azion Console](https://console.azion.com).

1. Acesse o [Azion Console](/pt-br/documentacao/produtos/guias/como-acessar-o-azion-console/) > **Firewall**.
2. Na lista, selecione o firewall que você deseja editar ou clique em **+ Add** para criar um novo.
3. Dê ao seu firewall um nome único e fácil de lembrar.

Se quiser proteger seu domínio com um firewall, veja o guia abaixo.
<DocButton href="/pt-br/documentacao/produtos/guias/secure/proteja-seu-dominio/" label="Saiba mais sobre como proteger seu domínio" kind="secondary" size="medium" />

### Módulos

[Módulos](/pt-br/documentacao/produtos/secure/firewall/#sobre-os-modulos-do-edge-firewall) podem desbloquear funcionalidades e recursos adicionais relacionados aos seus firewalls configurados. Veja a [página de Preços](/pt-br/documentacao/produtos/precos/) para mais detalhes.

Existem quatro módulos disponíveis que podem ser ativados com o seu firewall:

- <Tag severity="info">[DDoS Protection](/pt-br/documentacao/produtos/secure/firewall/ddos-protection/)</Tag>
Protege seu conteúdo e aplicações contra ataques de Distributed Denial of Service (DDoS). Automaticamente habilitado em todas as contas.

- <Tag severity="info">[Functions](/pt-br/documentacao/produtos/secure/firewall/functions/)</Tag>
Permite que você execute funções serverless no edge da Azion com baixa latência, trazendo o poder operacional mais perto do usuário final.

- <Tag severity="info">[Network Shield](/pt-br/documentacao/produtos/secure/firewall/network-shield/)</Tag>
Permite a criação de filtros por endereços IP/CIDR, ASN ou por países (geolocalização) através da configuração de Network Lists e a definição de regras de negócio que validarão os Criteria de bloqueio ou liberação.

- <Tag severity="info">[Web Application Firewall](/pt-br/documentacao/produtos/secure/firewall/web-application-firewall/)</Tag>
Protege suas aplicações contra ameaças como SQL Injections, Remote File Inclusion (RFI), Cross-Site Scripting (XSS) e muitas outras.

Você pode escolher entre a lista de módulos: você pode selecionar um, alguns, ou até mesmo todos.

### Debug rules

Você também encontrará um switch chamado **Debug Rules**. Se você ativar o switch, ativará o recurso que permite verificar se as regras que você criou usando o Rules Engine para Firewall foram executadas com sucesso em sua aplicação.

<DocButton href="/pt-br/documentacao/produtos/guias/debug-regras/" label="saiba mais sobre debug de regras" kind="secondary" size="medium" />

### Status

Você também encontrará um switch chamado **Active**. Você poderá usar o switch para ativar ou desativar seu firewall.

Depois de terminar de definir suas configurações principais, clique no botão **Save**.

:::tip[dica]
Para configurar um firewall para proteger um domínio específico, [consulte o guia Proteja seu domínio](/pt-br/documentacao/produtos/guias/secure/proteja-seu-dominio/)
:::
</Fragment>

<Fragment slot="panel.api">
1. Execute a seguinte requisição `GET` no seu terminal, substituindo `[TOKEN VALUE]` pelo seu [personal token](/pt-br/documentacao/produtos/guias/personal-tokens/) para recuperar seu `<edge_firewall_id>`:

<Code lang="bash" code={`
curl --request GET \
  --url https://api.azion.com/v4/edge_firewall/firewalls \
  --header 'Accept: application/json' \
  --header 'Authorization: Token [TOKEN VALUE]'
`} />

2. Você receberá uma resposta com todos os seus firewalls existentes. Copie o valor do `<id>` que você deseja configurar.
3. Execute uma requisição `PATCH` para modificar o firewall da seguinte maneira:

<Code lang="bash" code={`
curl --request PATCH \
  --url https://api.azion.com/v4/edge_firewall/firewalls/<edge_firewall_id> \
  --header 'Accept: application/json' \
  --header 'Authorization: Token [TOKEN VALUE]' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "My firewall",
    "modules": {
      "edge_functions": { "enabled": true },
      "network_protection": { "enabled": true },
      "waf": { "enabled": true }
    },
    "debug": true,
    "active": true
  }'
`} />


| Chave | Descrição |
| --- | --- |
| `name` | Nome do firewall |
| `is_active` | Valor booleano que ativa (`true`) ou desativa (`false`) o firewall |
| `edge_functions_enabled` | Valor booleano que ativa (`true`) ou desativa (`false`) o módulo [Functions](/pt-br/documentacao/produtos/secure/firewall/functions/) |
| `network_protection_enabled` | Valor booleano que ativa (`true`) ou desativa (`false`) o módulo [Network Shield](/pt-br/documentacao/produtos/secure/firewall/network-shield/) |
| `waf_enabled` | Valor booleano que ativa (`true`) ou desativa (`false`) o módulo [Web Application Firewall (WAF)](/pt-br/documentacao/produtos/secure/firewall/web-application-firewall/) |
| `debug_rules` | Valor booleano que ativa (`true`) ou desativa (`false`) o recurso [Debug Rules](/pt-br/documentacao/produtos/guias/debug-regras/) |

Aguarde alguns minutos para que as alterações se propaguem e seu firewall será atualizado.

:::tip
Confira a [documentação da API da Azion](https://api.azion.com/) para saber mais sobre o que a API da Azion pode oferecer.
:::
</Fragment>

</Tabs>

---