Livro do PfSense 2.0 Um guia prático com exemplos ilustrados de configurações, para usuários iniciantes e avançados sobre o PfSense 2. - PDF
Download "Livro do PfSense 2.0 Um guia prático com exemplos ilustrados de configurações, para usuários iniciantes e avançados sobre o PfSense 2."
Natália de Andrade Figueiredo
1 Livro do PfSense 2.0 Um guia prático com exemplos ilustrados de configurações, para usuários iniciantes e avançados sobre o PfSense 2.0 Feito originalmente em inglês por Matt Williamson Traduzido por Christopher Persaud 01/2012
2 Considerações iniciais Eu, como um usuário que admira, uso e curto o PfSense 2.0, vi que existem poucas apostilas e livros em português referente a esse excelente sistema operacional, como vi que esse livro é muito bom e muito bem explicativo, decidi refazê-lo passando para o Português, não sei se já foi feito isso, mas estou fazendo a minha parte, espero que me desculpem por alguns erros de tradução, apesar de eu ter um pouco de noção em inglês eu traduzi a maior parte pelo Tradutor do Google, mas não passei para o livro ao pé da letra, eu li e passei para o livro de uma forma mais explicativa possível, algumas palavras que se referem ao Sistema PfSense 2.0 mantive em inglês (até o momento em que foi traduzido esse documento em 12/01/2012, ainda não tinha saído o PfSense em português). Não quero tirar o mérito de toda a equipe que fez o livro originalmente já que é muito explicativo e ilustrativo, e aborda muitos recursos que com certeza muitos não sabiam que existia ou como usar. Espero ter ajudado, essa foi minha contribuição para a melhora do projeto PfSense no Brasil. Acessem o fórum em português do PfSense para aperfeiçoar a aprendizado Um Salve a toda equipe PfSense do Brasil!! Compartilhar conhecimento traz mais crescimento do que se imagina
3 Tabela de Conteúdo Capitulo 1 Configuração Inicial 1 Introdução 1 Aplicando configurações básicas em General Setup 2 Identificando e atribuindo interfaces 3 Configurando a Interface WAN 6 Configurando a Interface LAN 8 Configurando Interfaces Opcionais 10 Habilitando o Secure Shell (SSH) 12 Gerando chaves RSA autorizada 14 Configurando o SSH com autenticação de Chave RSA 16 Acessando por Secure Shell (SSH) 18 Capitulo 2 Serviços Essenciais 20 Introdução 20 Configurando o Servidor DHCP 20 Criando DHCP com mapeamentos estático 23 Criando o DHCP relay 25 Especificando DNS alternativo 26 Configurando o DNS Forwarder 28 Configurando servidor de DNS/DCHP dedicado 30 Configurando DNS dinâmico 32 Capitulo 3 Configuração Geral 35 Introdução 35 Criação de Alias 35 Criação de regras em NAT port forward 41 Criação de regras no Firewall 44 Criando agendamento 51 Acesso remoto ao desktop, usando exemplo completo 55 Capitulo 4 Rede privada Vi rtual (VPN) 60 Introdução 60 Criando VPN em um túnel IPSec 60 Configurando o serviço L2TP VPN 63 Configurando o serviço OpenVPN 69 Configurando o serviço PPTP VPN 75 Capitulo 5 Configurações Avançadas 87 Introdução 87 Criando um IP Virtual 87 Criando regra de NAT 1:1 93 Criando uma regra de NAT outbound 95 Criando Gateway 98
4 Criando uma rota estática 100 Configurando o Traffic Shaping 102 Interfaces do tipo ponte 107 Criando uma LAN Virtual 108 Criando um Captive Portal 110 Capitulo 6 Redundância, Balanceamento de carga e Failover 114 Introdução 114 Configurando Multiplas Interfaces 114 Configurando o balanceamento de carga em uma multi-wan 119 Configurando o Failover em uma multi-wan 122 Configurando um servidor de web com balanceamento de carga 125 Configurando um servidor web com Failover 129 Configurando um firewall CARP com Failover 132 Capitulo 7 Serviços e Manutenção 139 Introdução 139 Habilitando OLSR 139 Habilitando PPPoE 141 Habilitando RIP 143 Habilitando SNMP 144 Habilitando UPnP e NAT-PMP 145 Habilitando OpenNTPD 147 Habilitando Wake On Lan (WOL) 148 Habilitando o log externo (servidor syslog) 151 Usando o PING 153 Usando o Traceroute 154 Fazer backup do arquivo de configuração 156 Restaurando o arquivo de configuração 159 Configurando o backup automático do arquivo de configuração 161 Atualização do Firmware do PfSense 162 Apêndice A Monitoramento e Registros 168 Introdução 168 Personalizar a tela de Status Dashboard 168 Monitoramento de tráfego em tempo real 170 Configurando SMTP de de notificação 171 Vendo os logs do sistema 173 Configurando um servidor de syslog externo 176 Visualizações de gráficos RRD 177 Visualizações de mapeamentos DHCP 183 Monitoramento de filtro de pacotes com PfInfo 186 Monitoramento de tráfego com PfTop 187 Monitoramento de atividades do sistema 188
5 Apêndice B Determinar os requisitos de hardware 190 Introdução 190 Determinando o cenário de implantação 190 Determinando os requisitos de rendimento 193 Determinando os requisitos das interfaces 194 Escolher o tipo de instalação 196 Melhor forma de uso 197 Informações do tradutor 200
6 1 Configuração Inicial Nesse capitulo, iremos abordar: Aplicando configurações básicas em General Setup Identificando e atribuindo interfaces Configurando a Interface WAN Configurando a Interface LAN Configurando Interfaces Opcionais Habilitando o Secure Shell (SSH) Gerando Chaves RSA Autorizada Configurando o SSH com autenticação de Chave RSA Acessando por Secure Shell (SSH) Introdução PfSense é um sistema operacional de código aberto usado para transformar o computador em um firewall, roteador. PfSense é uma distribuição FreeBSD feita com base no projeto m0n0wall, uma distribuição de firewall poderoso e leve. PfSense se baseia basicamente em m0n0wall e toma decisões de todas as suas funções, e foi adicionado mais uma variedade de serviços de rede mais usadas. Nesse capitulo iremos abordar as definições básicas para implantação do PfSense; sendo um firewall, roteador, ou até mesmo um AP sem fio! Uma vez o PfSense instalado e configurado de acordo com o descrito nesse capítulo, você vai ter um firewall operacional q vai além de um roteador. Em seu nível mais básico, uma maquina PfSense pode ser usado para substituir um roteador domestico com a funcionalidade que deseja. Em configurações mais avançadas, PfSense pode ser usado para estabelecer um túnel seguro para um escritório remoto, equilíbrio de carga de tráfego. Existem realmente centenas de formas de se configurar um PfSense. 1
7 Uma vez o PfSense instalado, há duas maneiras de acessar o servidor remotamente, SSH e os WebGUI, uma conexão SSH você iria ver o menu igual ao visto se você plugasse o monitor no servidor, no menu de opções do SSH são básicas e muito pouca configuração é feita aqui. Toda configuração descrita em cada capitulo do livro é feita através da interface WebGUI, que pode ser acessada através do endereço de ip de qualquer interface que você configurou durante a instalação (como ) Aplicando Configurações básicas em General Setup Nessa receita iremos abordar configurações básicas feita no PfSense. Se preparando... Tudo que é preciso pra fazer as configurações é uma base de instalado bem feita e acesso ao WebGUI. Algumas dessas configurações podem ter sido configuradas durante a instalação mas nada impede que possa ser modificada a qualquer momento. Em uma nova instalação as credencias de acesso padrão: Usuário: admin Senha: pfsense Como fazer 1. Vá em System General Setup. 2. Digite um Hostname. Esse nome será usado pra acessar a maquina pelo nome e não pelo endereço de IP. Por exemplo podemos acessar digitando apenas em vez de 3. Digite o domínio em Domain. 2
8 4. Servidores de DNS podem ser especificados aqui. Por padrão o PfSense vai atuar como DNS primário e esses campos ficarão em branco. Mas você pode usar outros servidores de DNS. Consulte o DNS alternativo no Capitulo 2 Serviços Essenciais, para maiores informações. 5. Marcar Allow DNS server list to be overridden by DHCP/PPP on WAN. Isso garante que todas as solicitações de DNS que não são resolvidas internamente, vão passar a ser resolvidas pelo servidor de DNS do seu provedor ISP. 6. Digite o Fuso Horário em Time Zone e deixe o padrão NTP time server como 0.pfsense.pool.ntp.org. 7. Eu recomendo o Tema padrão, Pfsense 2.0 o novo pfsense_ng. Os menus do topo agora são estáticos e não vai desaparecer se você percorrer o conteúdo da página. Veja também... Configurando DNS Forwarder no capitulo 2 Serviços Essenciais. Especificando DNS alternativo no capitulo 2 Serviços Essenciais. Identificando e atribuindo as Interfaces Aqui vamos descrever como identificar e atribuir as configurações apropriadas para cada interface no Pfsense. 3
9 Se Preparando... Você precisa identificar o endereço MAC de cada placa Ethernet no seu PfSense antes de atribuir as interfaces. Como fazê-lo Acessar o console da maquina física através do monitor ou ativar o SSH acessando remotamente (Veja ativando o Secure Shell(SSH) para mais detalhes). 2. A tela inicial exibirá uma lista de interfaces, portas de rede e endereço de IP. 3. Escolha a opção 1 Assign Interfaces. 4. Pule a configuração de VLANs agora. Veja a criação de VLANs no Capitulo 5 Serviços Essenciais para mais informação. 4
10 5. Atribuir para cada interface, a interface de sua escolha correspondente ao endereço MAC para cada endereço da interface na tela. A capacidade de configurar apenas uma interface é novo para o PfSense 2.0, sendo que nas versões anteriores era preciso WAN e LAN. Como ele funciona... PfSense como qualquer outro sistema operacional para computador, usa referencia pra cada Placa de Rede atribuindo valor único pra cada interface (fxp0, em0, em1, e assim por diante). Esses identificadores estão associados ao driver identificado pelo sistema para tornar fácil a nossa identificação na hora de associar o MAC (00:80:0c:12:01:52). Sendo assim uma interface um nome dado a cada porta Ethernet: fxp0=wan, LAN=em0, em1=dmz, e assim por diante. 5
11 Há mais... Agora você sabe qual porta esta direcionada pra qual interface, você pode gerenciar as futuras mudanças através do WebGUI. Indo até Interfaces (assign). Veja também... O acessando o Secure Shell em SSH O configurando interface WAN O configurando interface LAN O configurando Interface Opcional Configurando WAN interface Aqui vamos aprender a configurar o Wide Area Network (WAN) na interface externa do nosso firewall. Se Preparando... A interface WAN é que conecta seu firewall a internet. Você vai precisar configurar corretamente a WAN interface (como foi feito no capitulo anterior) pra uma conexão com a internet. No exemplo q vamos usar um modem a cabo fornece acesso à internet, mas o PfSense pode fazer outros tipos de conexão. Como fazê-lo Vá até Interfaces WAN. 2. Marque Enable Interface. 3. Escolha o tipo de configuração de endereço em Type. 4. Deixe em branco o MAC address. Você só vai precisar inserir endereço MAC se for usar o spoofing. O seu provedor não pode verificar seus endereços MAC, então atribuindo manualmente você vai forcar o Provedor fornecer um IP ou um conjunto diferente de DNS. 5. Deixe MTU, MSS, Hostname, e Alias IP Address em branco. 6
12 6. Marque Block private networks. Essa configuração normalmente é marcada em uma só WAN interface. 7. Marque Block bogon networks. Essa configuração normalmente é marcada em uma só WAN interface. 8. Clique em Save. 7
13 Como ele funciona... Devemos primeiro criar uma conexão com a internet antes de começarmos a configurar o PfSense e permitir q a rede conecte a internet através dele. Se colocarmos o nosso firewall como única maquina com acesso direto a internet, estamos garantindo um ambiente seguro, estabelecendo um controle completo sobre o trafego que flui dentro e fora da rede, toda o trafego deve passar agora pelo nosso firewall e respeitar as nossas regras. Há Mais... Agora podemos conectar o cabo de rede do modem na interface WAN que definimos na configuração anterior do PfSense. Uma vez conectado o cabo de rede, podemos verificar o status de conexão na porta WAN em Status Interfaces: Veja também... O Identificando a Atribuindo as interfaces O configurando interface LAN O configurando interface opcional Configurando a Interface LAN Aqui vamos aprender a configurar o Local Area Network (LAN) interface interna do nosso firewall. 8
14 Se Preparando... A interface LAN é usada pra conectar seus dispositivos internos em uma rede interna segura. É necessário configurar a interface LAN corretamente. Como fazê-lo Vá até Interface Lan. 2. Marque Enable Interface. 3. Escolha a configuração de endereço em Type. 4. Digite seu ip em IP address e mascara de subrede. Deixe Gatway em None. 5. Deixe Block privates network e Block bogon networks desmarcadas. 6. Clique em Save. 9
15 Como ele funciona Você acabou de configurar sua primeira rede interna. Se você fez a configuração de acordo com o livro, agora você já conhece os requisitos mínimos para um bom funcionamento de um firewall! Você já definiu uma rede externa (WAN) e uma rede interna (LAN). Agora você pode definir as regras de trafego entre os dois. Há Mais... Agora você pode conectar o cabo de rede da rede interna na interface LAN do seu PfSense. Isso permitira q você se conecte aos computadores da rede interna. Veja também... O Identificando a Atribuindo as interfaces O configurando interface WAN O configurando interface opcional Configurando Interface Opcional Aqui iremos descrever como criar e atribuir interface de rede opcional no nosso firewall. Se Preparando... A rede opcional que você vai criar nesse exemplo, se refere a uma DMZ. A ideia de usar Zona Militar Desmilitarizada é de permitir a passagem de trafego direta ou não. A ideia do DMZ e controlada separada de outras áreas, se aplica DMZ nesse exemplo: Trafego de internet DMZ Trafego rede interna O trafego de internet inseguro é permitido entrar na DMZ, para acessar um servidor web por exemplo. O trafego da Lan também pode entrar na DMZ se quiser acessar o servidor web também. No entanto o ponto chave fica na ultima regra não permitindo a entrada de DMZ na rede interna. A rede DMZ é a rede menos segura, vamos permitir acesso externo só a determinado IP, para configurar uma DMZ ou qualquer outra rede opcional, vamos precisar de outra interface disponível. Como fazê-lo Vá até uma interface disponível, Interfaces OPT1 2. Marque Enable Interface. 3. Em Description digite DMZ. 4. Escolha a configuração de endereço em Type, no exemplo foi escolhido Static. 5. Digite em IP Address o ip e selecione o tipo de mascara. Usaremos o e selecione o tipo de mascara a partir de 24 na lista. 6. Deixe Gatway em None. 10
16 7. Deixe Block privates networks e Block bogon networks desmarcados. 8. Clique em Save. 9. Clique em Apply Changes. Como ele funciona Sua rede DMZ vai permitir acesso externo (WAN). Sua DMZ também permitira acesso a partir da LAN, mas não terão permissão de enviar trafego para LAN. Isso irá permitir que as requisições vindas da internet para acessar recursos do seu DMZ (websites, , assim por diante) não enxerguem sua rede interna (LAN). 11
17 Há mais... Agora você pode conectar um switch ligado à interface DMZ para se conectar em varias maquinas. Iria ficar como o diagrama a seguir: Veja também... O Identificando a Atribuindo as interfaces O configurando interface WAN O configurando interface LAN Habilitando o Secure Shell (SSH) Aqui iremos descrever como habilitar o Secure Shell (SSH) no PfSense. 12
18 Se preparando... SSH é um protocolo de rede que permite q comunicação criptografada entre dois dispositivos. Ativando o SSH permiti acesso seguro para o console do PfSense remotamente, como se você estivesse sentado na frente do servidor com o PfSense. Como fazê-lo Vá até System Advanced Secure Shell. 2. Marque Enable Secure Shell. 3. Voce sera solicitado a fornecer credenciais quando você se conectar remotamente por SSH (use o mesmo nome de usuário e senha que você conecta por WebGUI), você pode marcar Disable password login for Secure Shell. Isso ira permitir q você use chave RSA, veja mais a frente para maiores informações. 4. Deixe SSH Port em branco, que vai ser usado à porta padrão Clique em Save que o serviço de SSH eh habilitado automaticamente. Como ele funciona... Ativando o Secure Shell SSH permiti ao PfSense ouvir as requisições da porta 22 ou a porta que você especificar em SSH Port. Assim como todos os serviços. O serviço SSH irá ouvir em cada interface disponível. Assim como outros serviços, regras de firewall são usadas para permitir ou bloquear acesso a esses serviços. Consulte o Capitulo 3 Configurações Geral, para obter mais informações de como configurar regras de firewall. Há mais... Mudando o método de autenticação do SSH para usar chaves RSA é uma ótima maneira de proteger acesso ao seu sistema. Veja abaixo para mais detalhes. Além disso você pode alterar a porta em que o servidor escuta o SSH. Fazendo isso você pode aumentar a segurança ainda mais do seu sistema, reduzindo o numero de tentativas de login não autorizado, mas é preciso se lembrar da porta que você alterou se não, não irá poder se conectar novamente. Veja também... O Gerando Chaves autorizadas RSA O Criando regras de firewall no Capitulo 3 Configurações Geral 13
19 Gerando Chaves autorizadas RSA Aqui vamos descrever como ciar uma chave RSA autorizada para que um usuário possa se conectar ao PfSense sem ser solicitado uma senha. Se preparando... Usuários de Linux e Mac terão que ter o ssh-keygen instalado em seu sistema (quase todas as distribuições já vêm instalado por padrão em seu sistema). Usuários do Windows terão que baixar e instalar a ferramenta PuTTYgen. Como fazê-lo... Gerando chaves SSH em computadores Linux/Mac da seguinte maneira: 1. Abrir terminal e digite: ssh-keygen 2. Guardar a chave no local padrão /home/user/.ssh e especificar uma senha (opcional, mas recomendado). 3. Sua chave publica esta localizada agora em /home/user/.ssh/id_rsa.pub Gerando chaves SSH em computadores Windows usando PuTTY da seguinte forma: 4. Abra PuTTYgen e gere um par de chaves publica/privada clicando no botão Generate. 5. Digite uma senha (Opcional, mas recomendado) 14
20 6. Clique em Save Private Key e escolha um local como C:\MyPrivateKey.ppk 7. Selecione a chave publica q foi gerada na caixa de texto, copie e cole em um novo arquivo, digamos C:\MyPrivateKey.txt (Não use o botão Save public key que adiciona comentários e outros campos q são as vezes incompatíveis). 15
21 Como ele funciona... Chaves RSA se tornaram um padrão para proteger as conexões de Cliente/Servidor para qualquer serviço. Um cliente gera um par de arquivos uma chave privada e uma chave publica(uma senha opcional pode ser usada para maior segurança), agora qualquer administrador do servidor pode adicionar uma chave publica de clientes em seu sistema, e o cliente pode se autenticar no servidor sem precisar digitar uma senha. Há mais... Autenticação de chave RSA é mais usada com acesso SSH, e muitas vezes se referem a ela como Chaves SSH, mas isso não é verdade. Chave RSA é uma forma de segurança que também pode ser usada em SSH. Embora é muito usado em SSH ela também pode ser usada como VPN, VoIP, FTP, e assim por diante. Veja também... O Habilitando o Secure Shell (SSH) O Gerando Chaves autorizadas RSA Configurando SSH com autenticação de chave RSA 16
22 Aqui vamos descrever como configurar o PfSense para usar uma chave RSA em vez de senha para autenticação SSH. Se preparando... Certifique-se que você já ativou o SSH e já gerou uma chave publica. Como fazê-lo Vá até System Advanced Secure Shell 2. Marque Disable password login for Secure Shell (RSA key only). 3. Editar o usuário que irá associar com a chave publica, vá em System User Manager Edit admin. 4. Cole em Authorized Keys a chave publica do cliente RSA. Quando ele for colado, a chave deve aparecer em uma única linha. Certifique-se de que seu editor de texto não insira quaisquer caracteres que alimente a linha do espaço ou então a autenticação pode falhar. 5. Clique em Save. Como ele funciona... Quando um cliente se conectar por SSH, não será solicitado uma senha. Ao invés disso, o SSH usa a sua copia da chave publica RSA para enviar uma comparação com a chave privada do cliente correspondente. Há mais... Chaves RSA privadas também podem ser salvas criptografadas na maquina do cliente. O cliente SSH vai pedir uma senha pra descriptografar a chave privada antes de ser usada para autenticação com o servidor. Veja também... O Habilitando o Secure Shell (SSH) O Gerando Chaves autorizadas RSA 17
23 O acessando o Secure Shell em SSH Acessando o Secure Shell SSH Aqui vamos descrever como acessar o console do PfSense usando cliente Linux, Mac ou Windows. Se preparando... O SSH já deve estar habilitado e configurado no PfSense. Usuários do Linux, Mac terão o cliente SSH instalado por padrão. Os usuários Windows terão q baixar o PuTTY. Como fazê-lo... Conectando via SSH usando cliente Linux/Mac: 1. Abra a janela do terminal e execute: ssh 2. Se você estiver usando a configuração padrão, então será solicitado uma senha. 3. Se você estiver usando chave de autenticação RSA, você vai ser conectado diretamente ou ser solicitado a digitar uma senha associada com sua chave. Se precisar especificar a localização do seu arquivo de chave privada, você pode usar a opção i dessa forma: ssh -i /home/matt/key/id_rsa 4. Se voce configurou o PfSense pra usar uma porta diferente, você pode especificar usando a opção p, igual o exemplo a seguir: ssh -p Conectando via SSH usando cliente Windows com o PuTTY: 5. Abra o PuTTY e digite o Hostame ou o IP do servidor 6. Especifique uma porta alternativa se houver a necessidade, a padrão é Se você usar a chave de autenticação RSA. Procure o arquivo da chave privada em Connection SSH Auth Private key file for authentication. 18
24 8. Você vai se conectar e será solicitado um nome de usuário. 9. Você vai ter q digitar uma senha, ou se você usar autenticação por RSA você vai ser conectado diretamente ou vai ser solicitado uma senha pra descriptografar sua chave privada. Como ele funciona... O SSH permite ter acesso ao console de configuração do PfSense a partir de qualquer computador que tenha um cliente SSH. Você pode até acessar o console a partir do seu telefone, se você instalar o cliente SSH no seu dispositivo móvel. Veja também... O Habilitando o Secure Shell (SSH) O Gerando Chaves autorizadas RSA Configurando SSH com chave de autenticação RSA 19
25 2 Serviços Essenciais Nesse capitulo, iremos abordar: Configurando o Servidor DHCP Criando DHCP com mapeamento estático Configurando o DHCP relay Especificando DNS alternativo Configurando o DNS Forwarder Configurando servidor de DNS/DHCP dedicado Configurando DNS dinâmico Introdução Depois de instalar o PfSense e executar os passos se configuração inicial, temos agora a estrutura básica do nosso sistema funcionando, até agora temos: Determinamos a necessidade do nosso sistema Configuramos o acesso por SSH Configuramos a WAN, LAN e o Opcional DMZ Agora estamos prontos para começar a configurar os serviços de rede essenciais que o nosso PfSense vai proporcionar. O serviço de DHCP permite que as estações peguem endereços de ip automaticamente. O serviço de DNS converte os IPs em nomes legíveis de endereço de internet, e vive-versa. O serviço de DNS dinâmico permite o PfSense atualizar automaticamente o registro e DNS ao publico assim q ele mudar. Configurando o servidor DHCP 20
26 Aqui iremos descrever como configurar o serviço de DHCP do PfSense. O serviço de DHCP atribui um endereço de ip a qualquer cliente q solicitar um. Se preparando... O PfSense só pode ser configurado como um servidor de DHCP se a interface estiver com endereço de ip estático. Nesse livro iremos abordar a interface LAN e DMZ, e não a WAN. O Exemplo abaixo aborda configurar o servidor DHCP para a interface DMZ. Como fazê-lo Vá em Services DHCP Server. 2. Selecione a aba DMZ. 3. Marque Enable DHCP Server on DMZ interface. 4. Selecione em Range os ips que os clientes poderão usar. Os ips deverão estar dentro da faixa de ip contida em Available range. 5. Clique em Save para salvar e habilitar o serviço de DHCP. 6. Clique em Apply Changes, é necessário para que as alterações entre em vigor. Como ele funciona... O servidor DHCP aceita as solicitações de requerimento de IP, e atribui um ip disponível sem que haja algum problema de duplicidade de IP. Há mais... Um servidor DHCP manda um ip disponível pra um cliente que esteja solicitando, eh provável que quando o cliente faça novamente a solicitação o ip que o servidor manda vai mudar a cada pedido. Para garantir que o cliente sempre receba o mesmo endereço de IP podemos criar um mapeamento estático do DHCP. Veja no próximo exemplo. Negar clientes desconhecidos Habilitando essa opção garante que apenas os clientes com mapeamento cadastrado irão receber endereços de ip. Solicitações de DHCP vindo de clientes não cadastrados serão ignorados. 21
27 É diferente do que marcar a opção Enable static ARP entries onde os clientes desconhecidos irão receber endereços de ip, mas não vão ser capazes de se comunicar com o firewall de nenhuma forma. Servidor de DNS Você pode especificar manualmente qual DNS os clientes irão ser atribuídos. Se deixar em branco o PfSense irá atribuir o DNS em uma das duas formas: Se o DNS forwarder estiver habilitado, o DNS vai ser o IP da interface local do PfSense, isso porque o DNS Forwarder torna a própria maquina PfSense em um servidor DNS. Se o DNS forwarder estiver desabilitado, então deverão ser configurados em General Setup os endereços de DNS. E claro, se Allow DNS server list to be overridden by DHCP/PPP on WAN estiver habilitado em General Setup os servidores DNS serão obtidos através da porta WAN. Gateway O gateway das maquinas clientes por padrão será o ip da interface local usada como servidor de DHCP, mas pode ser mudada colocando um valor, se necessário. Domain Name O nome de domínio configurado em General Setup vai ser usado como padrão mas pode ser usado um nome de domínio diferente especificado se houver a necessidade. Default Lease Time É um valor que pode ser usado para especificar um tempo mínimo que expire o acesso por DHCP. O tempo padrão é 7200 segundos Maximum Lease Time É um valor que pode ser usado para especificar um tempo maximo que expire o acesso por DHCP. O tempo padrão é segundos. Failover Peer IP Sistema que pode configurar um endereço de ip que sirva como Fail-Over de balanceamento de carga. Veja a configuração de balanceamento de carga e Fail-Over no capitulo 6. Static ARP 22
28 Habilitando o Static Arp vai permitir que somente os ips cadastrados no mapeamento estático de DHCP irão se comunicar com o firewall. Clientes não cadastrados até poderão pegar ip mas não se comunicarão com o firewall. Isso eh diferente de Deny unknown clientes onde os ips que não estão cadastrados nem se quer chegam a pegar ip. Dynamic DNS Permite que os clientes sejam registrados automaticamente com o domínio de DNS dinâmico especificado. Additional BOOTP/DHCP Options Digite um valor a sua escolha obedecendo as regras listadas nesse site: Veja também... Criando mapeamento estático por DHCP Configuração de balanceamento de carga e Fail-Over no capitulo 6. Criando DHCP com mapeamento estático Aqui vamos descrever como ativar e configurar o mapeamento estático do DHCP no PfSense. O mapeamento estático garante que o cliente sempre pegue o mesmo IP. Se preparando... O DHCP com mapeamento estático só se aplica para as interfaces que utilizam o serviço de DHCP. Como fazê-lo Vá até Status DHCP leases então você verá a lista de clientes que fizeram a requisição de ip pro DHCP. 23
29 2. Então clique no botão com o símbolo + pra adicionar o ip no mapeamento estático. 3. O endereço MAC será cadastrado. 4. Digite em IP address o ip que você deseja atribuir para aquele cliente, esse ip tem que estar fora dos ips cadastrados em Range, que esse vai ser atribuído pra outros clientes que fizerem a requisição de ip. 5. Deixe o Hostname já pre configurado, ou então digite um a sua escolha. 6. Em Description digite uma descrição que você possa identificar o computador do cliente. 7. Clique em Save. 8. Clique em Apply Changes, vá até a página DHCP Server no final da pagina você vai ver o mapeamento que foi criado. Como ele funciona... Quando um cliente faz uma requisição de ip automático no servidor DHCP do PfSense, se o endereço MAC estiver cadastrado no mapeamento então o cliente pega o ip cadastrado referente ao MAC. Se o MAC não estiver cadastrado então é atribuído um ip ao cliente dentro da gama de ip cadastrado em Range. Há mais... Os ips cadastrados no mapeamento estático podem ser vistos na pagina DHCP Server na parte inferior da página, você vai até Services DHCP Server Interface selecionando a aba correspondente da interface. Todos os ips estáticos cadastrados você verá nessa tela, você pode modificar, remover, até criar um novo ip estático para o cliente, mas se você criar por aqui o endereço MAC vai precisar ser atribuído manualmente. 24
30 Veja também... O Configurando servidor DHCP O Configurando servidor DHCP relay Configurando o DHCP relay Aqui vamos configurar o DHCP para retransmitir pedidos DHCP de outro domínio. Especificando o DHCP relay é mais uma alternativa pra configurar o DHCP no PfSense. Se preparando... O DHCP relay só pode ser ativado se o serviço de DHCP de todas as interfaces estiver desativado, você pode desativar o serviço da seguinte forma: 1. Vá até Services DHCP Server Interface seleciona a aba (a LAN por exemplo). 2. Desmarque a opção Enable DHCP Server on LAN Interface. 3. Clique em Save. 4. E clique em Apply Changes. Como fazê-lo Vá até Services DHCP relay. 2. Marque a opção Enable DHCP relay on Interface. 3. Selecione qual interface vai usar o DHCP relay, se quiser selecionar mais de uma interface clique nas duas como botão ctrl pressionado. 4. Em Destination Server digite o endereço de ip do servidor DHCP que você deseja usar como destino. Vários ip podem ser usados desde que sejam separados por virgula. 5. Clique em Save. 6. Clique em Apply Changes. 25
31 Como ele funciona... O PfSense pode ser configurado para retransmitir um pedido de DHCP feito a outro servidor DHCP existente, qualquer pedido de DHCP será enviado ao servidor com o ip configurado em DHCP relay e devolvida a resposta ao cliente que requisitou. Append Circuit ID and Agent ID to Requests Marcando essa opção o PfSense pode também acrescentar nas requisições de ip sua identificação junto ao pedido de ip se houver a necessidade. Usando o DHCP relay pela interface WAN Usando o DHCP relay pela interface WAN não foi implementado até a versão 2.0 do PfSense quando foi feito o livro. Veja também... O Configurando servidor DHCP O Configurando servidor DHCP relay Especificando DNS alternativo Aqui vamos descrever como usar o DNS alternativo, que seja diferente do configurado por padrão pelo PfSense. 26
32 Se preparando... Quando se trata de resolução de nomes DNS, na maioria dos ambientes é fornecida pelo seu provedor de internet ISP através da WAN. Por padrão não é preciso definir nenhum DNS, porque é atribuído pelo próprio PfSense se a opção Allow DNS server list to be overridden by DHCP/PPP on WAN estiver marcada. Mas se por algum motivo você quiser atribuir outro DNS alternativo terá que seguir os seguinte passos. Como fazê-lo Vá em System General Setup 2. O DNS Servers terá que conter as seguinte configurações: Especificar o IP e gateway pra cada linha do DNS Servers. Desmarque Allow DNS server list to be overridden by DHCP/PPP on WAN. 3. Clique em Save. 4. Clique em Apply Changes. Como ele funciona... Os servidores DNS especificados manualmente sempre terão prioridade a menos se for substituído pelas seguintes opções. Os servidores DNS que foram colocados no exemplo são servidores públicos que podem ser usados pra diagnosticar problemas de DNS. Usando o DNS Forwarder Se o DNS Forwarder estiver habilitado podemos substituir os servidores DNS por domínios individuais ou até mesmo dispositivos individuais. Para saber mais informações consulte o Configurando o DNS Forwarder. O DNS Forwarder tem preferencia sobre todos os pedidos de DNS. Usando o DNS da sua WAN 27
33 Quando Allow DNS server list to be overridden by DHCP/PPP on WAN estiver marcado. O PfSense usará o DNS da WAN se falhar então passará a usar os DNS s listados cadastrados. Depois do DNS Forwarder é ele que tem preferência sobre os pedidos de DNS. Veja também... O Configurando DNS Forwarder. Configurando o DNS Forwarder Aqui vamos descrever como configurar o DNS Forwarder no PfSense. O DNS Forwarder do PfSense permite agir como um servidor de DNS com uma série de vantagens. Se preparando... O DNS Forwarder permite o PfSense resolver os pedidos do DNS usando o hostname obtido pelo serviço de DHCP, ou manualmente se você inseriu as informações manualmente. O DNS Forwarder tambem pode encaminhar todas as solicitações de DNS para um determinado domínio especificado manualmente. Como fazê-lo Vá em Services DNS Forwarder Enable DNS Forwarder 2. Se Register DHCP leases in DNS Forwarder estiver marcado, todos os dispositivos em Status DHCP Leases usará a função do DNS Forwarder. 3. Se Register DHCP static mappings in DNS Forwarder estiver marcado, todos os dispositivos conectados e mapeados em qualquer aba de interface em Services DHCP Server usará o servidor configurado. 4. Especificando individualmente em Hosts estará usando os registros do DNS. Clicando no botão + você adiciona um registro, dispositivos cadastrados nessa lista terá seu pedido imediatamente devolvido tendo preferencia. 28
34 5. Você pode especificar um DNS em particular em Domain, clicando no botão + para adicionar um registro. Esses registros são verificados imediatamente logo depois dos registros individuais a cima, por isso aqui pode ter preferencia em registros existentes em outros lugares. 6. Clique em Save. 7. Clique em Apply Changes. Como ele funciona... Se o DNS Forwarder estiver marcado, ele vai ter prioridade sobre todos os pedidos de DNS, a resposta vai na seguinte orgem: 1. Registro de dispositivos individuais (Services DNS Forwarder). 2. Registro de domínios específicos (Services DNS Forwarder). 3. Mapeamento de DHCP estático (Services DHCP Server Interface) selecione a aba. 4. DHCP Leases (Status DHCP Leases). Veja também... O Configurando o servidor DHCP O Criando o DHCP com mapeamento estático O Configurando o servidor DHCP/DNS dedicado 29
35 Configurando o servidor DHCP/DNS dedicado Aqui vamos descrever como configurar o PfSense com DNS e DHCP dedicado Como fazê-lo Configure o PfSense como servidor DHCP. Veja Configurando o servidor DHCP. 2. Crie um mapeamento estático para cada dispositivo que vá se conectar com ip automático em seu sistema. 3. Vá em System General Setup 4. Se certifique que nenhum outro DNS esta configurado na lista. 5. Marque a opção Allow DNS server list to be overridden by DHCP/PPP on WAN, nesse modo o PfSense vai resolver os nomes de DNS vindo direto da interface WAN. 6. Clique em Save. 7. Clique em Apply Changes se necessário. 8. Vá até System DNS Forwarder 9. Marque Enable DNS Forwarder. 10. Marque Register DHCP static mappings in DNS Forwarder. 30
36 11. Criar um registro em Host pra qualquer dispositivo que precise ser resolvido, mas não pode estar no mapeamento DHCP (ele deve ser configurado ip manualmente) 12. Criar um registro em Domain para todos os pedido de DNS que você gostaria que fosse direcionado pra um determinado domínio. 13. Clique em Save 14. Clique em Apply Changes. Como ele funciona... Se o DNS Forwarder estiver habilitado, todas as solicitações de DNS de cada interface será solicitado pelo PFsense. Registros individuais cadastrados em Host vão ser verificados, se ele for correspondido então ele é imediatamente devolvido. Se habilitar o Register DHCP Static Mappings você não terá que se preocupar com criação de registros DNS para os dispositivos. Esse é o meu método preferido de usar o PfSense como um servidor de DNS. 31
37 Contando que terá que mapear todos os endereços de ip pra cada dispositivo da rede que o hostname resolverá automaticamente. Usando esse método nos vamos ter que adicionar os hostnames e ips de computadores que não usarem DHCP que devem ser poucos na rede. Registrando em DHCP Leases o DNS Forwarder Se Register DHCP Leases in DNS Forwarder estiver marcado, o PfSense vai registrar quaisquer dispositivos que tiver um hostname e fizer um pedido de DNS. A desvantagem é claro que nem todos os dispositivos vão se conectar se não estiver cadastrado no mapeamento estático do DHCP, eu prefiro registrar todos. Veja também... O Configurando o servidor DHCP O Criando o DHCP com mapeamento estático O Configurando DNS Forwarder Configurando DNS Dinâmico Aqui vamos descrever como configurar o serviço de DNS dinâmico no PfSense. Se preparando... No PfSense já vem integrado o serviço de DNS dinâmico permitindo atualizar automaticamente toda vez que muda o endereço de ip da interface. Como fazê-lo Vá em Services Dynamic DNS 2. Clique na aba DynDNS 3. Clique no botão + para adicionar um novo registro 4. Escolha o Service Type (Ou seja, o prestador de serviço de DNS dinâmico) 5. Especifique em Interface to Monitor a interface ligada na internet pela qual deseja configurar (geralmente é usada a interface WAN) 6. Digite em Hostname o nome que você criou no provedor do DNS dinâmico, no exemplo é o DynDNS 7. Marque o Wildcard, se for o caso 8. Digite em username e password as credenciais que você configurou no provedor de DNS dinâmico, no exemplo é o DynDNS. 9. Digite em Description uma descrição qualquer que você possa reconhecer posteriormente. 10. Clique em Save. 11. Clique em Apply Changes. 32
38 Como ele funciona... Sempre que o endereço de ip muda da interface, o PfSense automaticamente se conecta com o provedor de DNS dinâmico usando as credenciais cadastradas e atualiza todos os dados. Serviços de provedores de DNS dinâmico cadastrados O PfSense já vem com os provedores de DNS dinâmico mais usados já cadastrados: DNS-0-Matic DynDNS DHS DyNS easydns No-ip ODS ZoneEdit Loopia freedns DNSexit 33
39 OpenDNS NameCheap Especificando um serviço alternativo usando o RFC 2136 Mas se você quiser usar um provedor DNS dinâmico que não esteja cadastrado, você pode usar ele desde que obedeça ao padrão RFC Vá em Services Dynamic DNS na aba RFC 2136, em seguida preencha nos campos apropriados os dados fornecido pelo seu provedor de DNS dinâmico. 34
40 3 Configuração Geral Nesse capitulo, iremos abordar: Criação de Alias Criação de regras em Nat port forward Criação de regras no firewall Criando agendamento Acesso remoto ao desktop, usando exemplo completo Introdução A principal funcionalidade de qualquer firewall a criação de portas, regras de segurança no firewall, e no PfSense não é diferente. Estas características, e outras, podem ser encontradas no menu Firewall na pagina principal da WebGUI. Neste capitulo vamos explicar como configurar essas regras e explicar cada características associadas a cada uma, depois de ter feito de tudo um pouco você vai ver o quanto é fácil a configuração do firewall do PfSense. Criando Alias Aqui vamos explicar como usar, criar, editar e excluir Alias. O Alias fornece um grau de separação entre as regras e valores que podem mudar no futuro (por exemplo, endereços de IP, portas, e assim por diante). É sempre bom usar Alias. Como fazê-lo Vá em Firewall Aliases 2. Clique no botão + para adicionar um novo Alias. 3. Em Name digite o nome do Alias 4. Em Description digite uma descrição prévia do que você vai querer nesse Alias 5. Selecione um tipo de Alias em Type. Sua configuração a seguir vai se basear no que você selecionar. 35
41 Veja que a mais tipos de Alias, nas seções seguinte vamos ver detalhes sobre cada uma delas (Host, Rede, Usuários Open VPN, URL e tabelas URL) 6. Clique em Save. 7. Clique em Apply Changes. Como ele funciona... Um Alias é um lugar de suporte para obter informações que podem mudar. Um Alias de host é um bom exemplo, podemos criar um Alias de host chamado Computer 1, e guardar um endereço de ip Podemos então criar varias regras de firewall e Nat e usar o nome Computer 1 em vez de especificamente o endereço de IP do Computer 1. Se o endereço de ip do Computer 1 mudar, é só mudar no Alias o ip referente ao Computer 1 ao invés de mudar inúmeras regras criadas para aquele ip. Os Alias permitem e flexibilidade e torna simples algumas mudanças futura. É sempre bom usar Aliases sempre que possível. Há mais... Adicionando Alias dentro de Alias, também é uma ótima maneira de gerenciar e simplificar regras. Para mostrar o poder do Alias, digamos que a nossa organização tem um telefone VoIP único, que deve se comunicar com o nosso servidor VoIP. Um exemplo dessa regra sem Alias é a seguinte: 36
42 Um exemplo melhor, usando Alias, é a seguinte: Um exemplo ainda melhor usando sub-alias, é seguinte: Com o sub-alias nos permite modificar facilmente mais telefones, basta modificar um Alias. Host Alias Selecionando Host(s) como tipo de Alias permite que você crie um Alias contendo um ou mais endereços de IP: 37
43 Network Alias Selecionando Network(s) como tipo de Alias, permite que você crie Alias um ou mais tipos de redes (ou seja, intervalos de endereço de rede). Port Alias Selecione Port(s) como tipo de Alias, permite que você crie alias com um ou mais portas: OpenVPN Users Alias Selecione OpenVPN Users como tipo de Alias, permite que você crie um ou mais nomes de usuários OpenVPN. 38
44 URL Alias Selecionando URL como tipo de Alias, permite que você crie um ou mais alias contendo URL s: URL Table Alias Selecionando URL Table como tipo de Alias, permite que você crie uma URL única apontando para uma grande lista de endereços. Isso é muito importante quando você precisa importar uma grande lista de endereços de ips e/ou subredes. Usando o Alias O Alias pode ser usado em qualquer lugar que você veja uma caixa de texto da cor vermelha. Basta começar a digitar que o PfSense vai exibir qualquer Alias disponível correspondente com o texto que você começou a digitar. Editando o Alias Para modificar um Alias existente, siga esses passos: 1. Vá até Firewall Aliases 39
45 2. Clique no botão de edição para editar o Alias 3. Faça as mudanças necessárias 4. Clique em Save 5. Clique em Apply Changes. Deletando um Alias: Para remover um Alias existente, siga esses passos: 1. Vá até Firewall Aliases. 2. Clique no botão de delete para deletar o Alias 3. Clique em Save 4. Clique em Apply Changes Importando dados em lotes no Alias Para importar uma lista de vários endereços IP, siga estes passos: 1. Vá até Firewall Aliases 2. Clique no botão de importação de Alias para importar em lotes. 3. Digite um nome para a importação em Alias Name 4. Digite um nome para descrição do Alias em Description. 5. Cole a lista de endereços que você quer importar um por linha no Alias 6. Clique em Salvar. 7. Clique em Apply Changes Veja também... O Criando Nat com regra de Port Forward O Criando regras de Firewall. 40
46 Documento Oficial Criando Nat com regras de Port Forward Aqui vamos descrever como criar, editar e excluir regras de Port Forward. Se preparando... A complexidade das regras de Port Forward pode variar muito. Todos os aspectos de uma regra de Port Forward são aprofundados mais adiante. O seguinte cenário é um exemplo típico de Port Forward para encaminhar qualquer solicitação recebida pela web (HTTP) para um computador já configurado como servidor web Como fazê-lo Vá até Firewall NAT 2. Seleciona a aba Port Forward. 3. Clique em + para adicionar uma regra de Port Forward. 4. Em Destination port range, escolha HTTP em from e to na caixa de menu 5. Em Redirect target IP especifique o servidor web de tráfego para qual vai ser encaminhado, pode ser por Alias ou IP. 6. Em Redirect target Port escolha HTTP. 7. Digite uma descrição em Description, no exemplo usamos Forward HTTP to webserver1 8. Clique em Save. 9. Clique em Apply Changes. 41
47 Por padrão uma regra de firewall é criada para permitir que o tráfego passe, mas é muito importante lembrar que as regras de NAT e Firewall são distintos e separados. As regras de NAT servem para encaminhar o tráfego, enquanto as regras de firewall são para permitir ou bloquear o tráfego. É muito importante lembrar que só porque uma regra NAT esta encaminhando um tráfego, não quer dizer que o Firewall não possa bloquear ela. Como ele funciona... Todo o tráfego passa através da lista de regras de NAT, com os seguintes critérios: Interface Protocolo Origem e intervalos de portas de origem Destino e intervalos de portas de destino Se todo o tráfego corresponde a todos os critérios desta regra, que o tráfego será redirecionado para o Redirect target IP e Redirect target port específicos. Assim como todas as regras do PfSense, regras de NAT são lidas de cima para baixo, a primeira regra é executada imediatamente e o restante é ignorado. Nossos exemplos podem ser lidos assim: O tráfego de: 42
48 A Internet (Interface: WAN) A partir de qualquer cliente (Source) em qualquer porta (Source Port Range) Indo para: Nosso endereço de IP Publico (Destination WAN address) Com um pedido de website (Protocol: TCP, Destination Port Range: HTTP) Será redirecionado para: Um computador em particular (Redirect Target IP: Webserver1) Com o mesmo pedido (Protocol: TCP, Redirect Target Port: HTTP) Há mais... As regras de NAT podem ser configuradas usando uma variedade de opções: Disabled: Ativa ou desativa a regra de NAT marcando essa opção. No RDR (NOT): Ativando essa opção irá desativar o redirecionamento de tráfego. Interface: Especifica a interface que a regra de NAT vai ser usada (a mais usada é a WAN) Protocol: Especifica o tipo de protocolo que vai ser usado na regra de NAT. A mais usada é TCP, UDP ou TCP/UDP, mas existem também GRE e ESP. Source: Normalmente a origem é deixada como padrão any, mas você pode especificar uma outra fonte, se necessário. Source Port Range: Geralmente é usada por padrão any, mas você pode especificar outra porta se houver a necessidade. Destination: Na maioria das vezes é deixado o valor padrão que é a WAN (o endereço publico), mas pode ser usada outra alternativa se houver a necessidade. Destination Port Range: Essa é a porta de tráfego solicitante. Se nós estamos encaminhando o tráfego da web, poderíamos selecionar HTTP, é tão comum que já vem no menu drop-down, mas a escolha (other), e especificando a porta 80 funcionaria da mesma forma. Poderíamos também personalizar uma porta (vamos usar como exemplo um encaminhamento de tráfego do torrente na porta 46635) lembre-se que você pode usar um Alias! Redirect Target IP: Aqui é o endereço do computador interno que vai ser transmitido o tráfego para ele. Lembre-se que você pode usar um Alias! Redirect Target Port: Aqui é a porta do ip do computador especificado em cima. Lembre-se que você pode usar um Alias! Description: A descrição feita aqui vai ser automaticamente copiada para as regras firewall (precedidas pela palavra NAT ) No XMLRPC Sync: Marque essa opção para impedir que esta regra seja aplicada a qualquer firewall usando o CARP. Consulte o Firewall CARP Configurando Seção de failover no Capítulo 6, redundância, balanceamento de carga e Failover para mais da informação. NAT Reflection: É usado por padrão no sistema quase todas as vezes, mas NAT Reflection pode ser ativado ou desativado por padrão se for necessário. Filter Rule Association: Será criado a regra de firewall associada a regra do NAT. 43
49 Port Redirection A verdadeira regra de encaminhamento de porta que vai passar o tráfego para maquina da rede interna é usada também pela porta configurada (ou seja, Destination Port Range e Redirect target port se correspondem). No entanto não a nada que impeça você redirecionar para uma porta diferente, se quiser. Há duas razões para você querer fazer isso: Segurança por Obscuridade: Todo mundo sabe que a porta padrão HTTP é 80, mas vamos supor que você tem um website secreto que você não quer que seja acessada facilmente. Você pode definir um intervalo de portas de destino para alguma porta obscura (por exemplo: 54321) então dai em diante usar a porta padrão HTTP 80. E os usuários que queiram acessar o site terão que digitar o endereço assim Um único endereço de IP público: Em ambientes menores com apenas um endereço publico, você não vai poder acessar duas maquinas distintas remotamente porque você só tem um endereço de ip publico. Então você pode criar duas regras diferentes no NAT. O primeiro ira redirecionar a porta para o Computador 1 usando a porta 3389, e o segundo vai redirecionar a porta para o Computador 2 usando a mesma porta Fazendo isso você pode acessar o Computador1:50001 e o Computador2:50002, e assim por diante. Usando o mesmo ip publico. Veja também... O Criando Alias O Criando regras de firewall O Configurando CARP firewall failover recipe in Chapter 6, Redundancy, Balanceamento de Carga,e Failover Criando regras de Firewall Aqui vamos descrever como criar uma regra de firewall Se preparando... Como exemplo, vamos criar uma regra de firewall para permitir o tráfego web encaminhado pela NAT (a regra que criamos anteriormente). Se você acompanhou, o NAT que criamos, automaticamente foi criado uma regra em Firewall, mas poderíamos marcar None em Filter Rule Association que essa regra não iria ser copiada para o Firewall. Como fazê-lo Vá até Firewall Rules. 2. Selecione a aba WAN 3. Clique no botão + para adicionar uma nova regra de firewall 4. Especifique a WAN Interface 5. Especifique o Protocol TCP 6. Especifique any em Source 7. Especifique any em Source Port Range 44
50 8. Especifique Webserver1 em Destination 9. Especifique HTTP em Destination Port Range 10. Digite q descrição da regra em Description 11. Clique em Save 12. Clique em Apply Changes 45
52 Como ele funciona... Todo o tráfego passa pela lista de regras de Firewall. Se qualquer pacote de tráfego corresponde a qualquer critério de qualquer regra, a regra seria executada (e o pacote seria permitido ou negado). Essa regra pode ser lida como: "Qualquer porta de qualquer cliente na internet tem permissão para acessar a nossa web pela porta do servidor que é 80". Há mais... Regras de firewall são altamente configuráveis. Detalhes de cada opção de regra de firewall são as seguintes: Action: É o tipo de ação que a regra vai ter o Pass: Se os critérios forem correspondidos, a passagem do pacote é permitida. o Block: Se todos os critérios forem correspondidos, a passagem do pacote é bloqueada (alguns se referem a ela como Drop Silencioso). o Reject: Se todos os pacotes forem correspondidos, a passagem do pacote é devolvida ao remetente. Disabled: Desativa a regra sem ter que apaga-la. Interface: Se especifica de qual interface o tráfego vai ser originado, que estará sujeito a essa regra, geralmente é usada a WAN. Protocol: Corresponde o tipo de protocolo, variando de acordo com o tipo de regra que define o tráfego. Source: É geralmente marcado any quando se refere a tráfego de entrada. Source Port Range: É geralmente marcado any quando se refere a tráfego de entrada. Destination: Aqui é usado o Alias ou o endereço de IP do computador que o tráfego esta apontando. Destination Port Range: É geralmente a porta do computador que atende este tráfego. Log: Habilitar o log de registro do pacote que corresponde a regra. Description: Digite uma descrição que você possa identificar futuramente. Raramente sabemos a porta de origem! Ao especificar as regras, é muito importante lembrar que Source Port Range é quase sempre definida como any. Muitas vezes as pessoas cometem erro de especificar um Source Port Range. Lembre-se quando você solicita um site, você esta solicitando a porta 80 no computador do servidor web, e seu computador que vai decidir que porta sua vai ser aberta para receber a solicitação. Esta é sua porta de origem, uma porta sempre em mudança, que você provavelmente não vai saber qual será. Assim 99 por cento do tempo, não saberemos o Source Port Range. A ordem das regras do Firewall As regras do PfSense são sempre avaliadas de cima para baixo. Muitos administradores inclui uma regra muito especifica na parte superior das outras regras e as mais genéricas na parte inferior. Para 47
53 reordenar uma regra, clique na regra e então clique no botão que parece uma mão na linha da regra que você quer colocar a cima dela. Duplicando regras de firewall Muitas vezes, a gente pode querer criar uma nova regra muito parecida com a regra existente. Para poupar tempo nós podemos duplicar a regra e fazer as alterações especificas clicando no botão +. Recursos Avançados Esse recurso é novo para o PfSense 2.0, nas regras de firewall tem uma seção chamada Advanced Features, cada um dos seguintes recursos podem ser especificados como critérios para uma regra. Se um recurso avançado é especificado, a regra só será executada se for encontrada uma correspondência. Clique no botão Avançado para exibir as seguintes definições de configuração para cada função: Source OS: Esta opção ira tentar comparar a fonte do tráfego com o sistema operacional do dispositivo: Diffserv Code Point: É um mecanismo para fornecer Qualidade de Serviço (QoS) de tráfego de rede. Podendo priorizar tráfego com base nos valores especificados: Advanced Option: Permite a opção de especificação avançada do IP: 48
54 TCP Flags: Estes são bits de controle que indicam diversos estados de conexão ou informações sobre como um pacote deve ser tratado. State Type: Especifica um mecanismo de rastreamento especial sobre o estado 49
55 No XMLRPC Sync: Impede que a regra sincronize com outros membros do CARP: Schedule: Especifica um agendamento do período que essa regra vai ser valida. Terá que cadastrar os horários em Firewall Schedule. Então aparecerá aqui: Gateway: Se quiser definir outro gateway diferente do configurado como padrão, então defina aqui: In/Out: Especificar filas alternativas de velocidade e interfaces virtuais: Ackqueue/Queue: Especificar as alternativas de reconhecimento de filas de velocidades: Layer7: Especifica uma alternativa de Layer7: Veja também... Criação de regras em Nat port forward Criando agendamento Criando Alias 50
56 Criando agendamentos Agora vamos descrever como criar uma agenda Se preparando... A agenda nos permite configurar quando as regras entram em vigor e saem. Elas são usadas geralmente com regras de firewall, mas na concepção em geral vai ser permitido usar para muito mais funções no futuro em versões posteriores do PfSense. Se uma regra do firewall especifica um horário, a regra então só é ativada durante esse período de tempo. No exemplo a seguir, vamos definir um cronograma para o nosso horário de 9 horas da manhã ah 5 horas da tarde, horário comercial. Ao criar horários, é essencial ter o fuso horário configurado corretamente, e o tempo de sincronização configurado devidamente em um servidor confiável. Como fazê-lo Vá até Firewall Schedules 2. Clique no botão + para criar uma nova agenda 3. Em Schedule Name digite um nome de referencia, o exemplo usamos WorkHours. 4. Digite em Description a descrição para que você possa reconhecer que tipo de horário você esta configurando, no exemplo usamos Regular work week hours. 5. Na seção Month selecione o mês, clique em Mon, Tue, Wed, Thu e Fri selecionando todos os dias da semana de trabalho. 6. Especificar 9 horas da manhã em Start Time e 17 horas em Stop Time. 7. Digite em Time Range Description a descrição do horário, no exemplo usou Monday-Friday 9am- 5pm. 8. Clique em Add Time. 51
57 9. Note que o tempo de repetição é adicionado em Configured Ranges. 10. Clique em Save. 11. Clique em Apply Changes. Como ele funciona... Um agendamento associado a uma regra só será valida durante o tempo especificado. Para saber associar uma regra de firewall com o agendamento que acabamos de criar: 1. Edite uma regra, ou adicione uma. 52
58 2. Clique em Schedule Advanced, então vá na opção Schedule e selecione o agendamento que você deseja usar, no exemplo nós só criamos um. 3. Escolha o agendamento que criamos WorkHours na opção Schedule. 4. Clique em Save 5. Clique em Apply Changes. Há mais... No PfSense vários ícones aparecem para auxiliar nas informações, no agendamento também, os ícones no agendamento aparecem para informar se o agendamento está ativou ou não. Firewall Schedules: agendamentos ativados aparecem com um relógio : Firewall Rules: Regras com agendamento ativo aparecem uma seta verde na coluna Schedule, e diz qual o nome do agendamento. Regras com agendamentos desativados, na coluna Schedule apare um x vermelho com o nome do agendamento: 53
59 Seleção de dia ou dias da semana A seleção Month funciona de duas formas: Selecionando dias específicos: Selecione o mês correto e clique nos dias específicos (o ano é irrelevante, qualquer dia especificado será repetido em cada ano). Selecionando dias da semana: Clique no dia da semana, selecionando todos os dias do mês referente aquele dia da semana (o mês é irrelevante, o dia da semana vai sempre repetir todos os meses). Veja também... Criando Alias Criação de regras em Nat port forward Criando regras de firewall 54
60 Acesso remoto ao Desktop com exemplo completo Vamos descrever aqui como liberar o acesso através de regras de firewall do PfSense, o acesso remoto ao computador da rede interna usando o acesso remoto da própria Microsoft que vem no Windows o (RDP). Se preparando... Vamos demonstra como criar uma regra de firewall para liberar o acesso do inicio ao fim. O exemplo a seguir vai mostrar como acessar uma maquina da rede interna, com o pedido vindo da internet. Para fazer isso requer as configurações que vamos postar agora, vale ressaltar que as configurações feitas agora nos vamos ter que saber alguns pontos que foram tocadas no livro: DHCP Server DHCP com mapeamento estatico DNS Forwarder Aliases NAT port forwarding Regras de Firewall Agendamentos Como fazê-lo Vamos cadastrar o computador na nossa rede: 2. Vá até Status DHCP Leases e localize o computador que acabou de entra na rede. Clique no botão + para atribuir um mapeamento estático para ele. 3. Vamos atribuir um endereço de IP a ele, em IP address digite , e em Hostname, digite o nome que vai querer identificar ele, pode ser Laptop1, e digite em Description, uma descrição do Laptop para você saber qualquer é o laptop que você adicionou. 55
61 4. Vamos agora fazer com que nosso DNS Forwarder seja configurado para transmitir automaticamente aos clientes com mapeamento estático, vá a Services DNS Forwarder, para que possamos localizar com facilidade o computador pelo nome: 5. Vamos agora criar um Alias para ser usado como referencia ao seu IP dentro do PfSense em Firewall Aliases: 56
62 6. Vamos criar um agendamento para a regra usando o mesmo que já criamos afinal se usarmos o agendamento que só funciona em horário comercial, vai ficar mais protegido contra ataque externo quando não estiver em horário comercial: 7. Vamos agora criar uma regra no NAT para encaminhar os pedido de RDP vindo de fora para o computador que acabamos de cadastrar, vá a Firewall NAT. Se pesquisarmos na internet sobre protocolo de acesso remoto ao desktop vamos ver que a porta é a TCP 3389 ( o PfSense já vem com um pré-definido no sistema com o nome MS RDP) 8. Agora vamos criar um agendamento para que essa regra funcione de acordo com o horário que criamos, vá a Firewall Rules: 57
63 9. Clique em Save. 10. Clique em Apply Changes. Como ele funciona... A nossa regra de NAT encaminha todas as solicitações RDP para o nosso laptop. A regra NAT é sempre habilitada. Mas na regra de firewall faz com que esse encaminhamento só funcione durante o horário especificado Há mais... Para aumentar a segurança nós podemos fazer mais, podemos restringir o acesso liberando apenas nosso ip de acesso externo, e se esse IP mudar então teremos que mudar o Alias atualizando o IP então sempre íamos ter um controle de quando a pessoa acessou. Crie um Alias com o IP do escritório: Então podemos modificar nossa regra de firewall aplicando os pedidos provenientes ao IP da nossa empresa (lembre-se que o tráfego que não corresponde a regra any é bloqueado por padrão). Agora com a associação do NAT com as regras de firewall, pelas regras de firewall nós não poderíamos modificar a fonte diretamente. 58
64 Então vamos ter que modificar dentro do próprio NAT, clique na opção Advanced, e especifique o Alias com o endereço publico da nossa empresa. Então vamos checar se essas mudanças foram alteradas também em regras de firewall. Veja também... Configurando servidor DHCP no Capitulo 2 Serviços Essenciais Criando DHCP com mapeamento estático no Capitulo 2 Serviços Essenciais Configurando DNS dinâmico no Capitulo 2 - Serviços Essenciais Criando Alias Criando Nat Port Forwarding Criando regras de firewall Criando agendamentos 59
65 4 Rede Privada Virtual (VPN) Nesse capitulo iremos abordar: Criando VPN em um túnel IPSec Configurando o serviço L2TP VPN Configurando o serviço OpenVPN Configurando o serviço PPTP VPN Introdução Virtual Private Networking (VPN) (Vamos abordar no livro esse nome como Rede Privada Virtual (VPN)) é um sistema moderno muito eficaz. Uma conexão VPN permite que um usuário remoto conecte com segurança uma rede e use os recursos como se estivesse no próprio local. Com todas as variedades de acesso VPN, O PfSense tem quatro implementações mais usadas, elas são construídas direto dentro do OpenVPN que esta migrado como o protocolo VPN. Mas nada impede que você baixe um software a sua escolha de VPN cliente para qualquer maquina usando Windows (suporte OpenVPN não vem no Windows). IPSec é mais complexo, mais também é uma aplicação muito popular do VPN. Serviço PPTP VPN e L2PTP VPN são menos usados entre os quatro, mas seu uso ainda é bem generalizado. Neste capitulo vamos descrever como configurar o PfSense para usar qualquer um ou as quatro aplicações VPN-IPSec, L2TP, OpenVPN, e PPTP. Criando VPN em um túnel IPSec Aqui vamos descrever como criar uma VPN usando um túnel IPSec. Se preparando... IPSec é muitas vezes o método preferido para o tipo de conexão rede-a-rede (é oposto ao cliente-arede). Um cenário típico monta uma conexão permanente e segura entre sede e filial. 60
66 Redes conectadas através de VPN devem obrigatoriamente usar sub-redes diferentes. Por exemplo, se as duas redes usam sub-redes /24, o VPN não vai funcionar. Como fazê-lo Vá até VPN Ipsec 2. Clique no botão + para criar um túnel IPSec. 3. Especifique em Remote Gateway o IP publico ou o hostname do gateway remoto. 4. E em Description adicione uma descrição do seu IPSec 5. Em Pre-Shared Key digite sua senha 6. Clique em Save 7. Marque Enable IPsec. 8. Clique em Save. 61
67 9. Clique em Apply Changes. 10. Vá até Firewall Rules 11. Selecione a aba IPSec 12. Clique no botão + para adicionar uma nova regra no firewall 13. Em Destination selecione Lan subnet. 14. Em Destination port selecione any 15. Em Description, ponha uma descrição que você possa reconhecer a regra, nos usamos no exemplo Allow IPsec traffic to LAN. 62
68 16. Clique em Save 17. Clique em Apply Changes. Como ele funciona... Uma vez que o túnel IPSec foi estabelecido, os clientes conectados em qualquer uma das duas redes, terão acesso de um ao outro mesmo em sub-redes diferentes como se estive na mesma rede física. Veja também... Configurando o serviço L2TP VPN Configurando o serviço OpenVPN Configurando o serviço PPTP VPN Configurando o serviço L2TP VPN Aqui vamos descrever como configurar o PfSense para ser servidor VPN L2TP Se preparando... É muito importante entender que ao contrario das outras implementações VPN, o L2TP não criptografa os dados. O L2TP é simplesmente um método de encapsulamento que só deve ser usado em redes já confiáveis, em conjunto do IPsec. A grande vantagem do L2TP é que pode ser usado com redes sem precisar de IP. Como fazê-lo Vá em VPN L2TP 2. Na aba Configuration, marque Enable L2TP Server. 3. Especifique um IP sem uso em Server address. 4. Em Remote address Range digite o inicio da faixa de IP não usada de endereço remoto. O numero de IPs que vai ser usado vai estar indicado na etapa Em Subnet mask especifique o tipo de subrede. 6. Em Number of L2TP users especifique o numero de usuários que irão se conectar. 63
69 7. Clique em Save 8. Clique na aba Users. 9. Clique no botão + para adicionar um novo usuário 10. Digite o usuário em username e a senha em password. 11. Clique em Save. 12. Vá até Firewall Rules 64
70 13. Selecione a aba L2TP VPN 14. Clique no botão + para adicionar uma nova regra de firewall 15. Selecione em Destination o LanSubnet 16. Selecione em Destination port range o any 17. Digite em Description uma descrição que você possa identificar a sua regra, no exemplo nos usamos Allow L2TP Clients to LAN. 18. Clique em Save. 19. Clique em Apply Changes. Como ele funciona... O serviço permite que usuários conectem remotamente a interface de rede a nossa escolha usando o L2TP. Usando esse serviço é como se o cliente estivesse usando a rede como se estivesse fisicamente no local. Conexão de um cliente usando Windows 7 Para criar uma conexão VPN L2TP em uma maquina usando o Windows 7: 1. Abra o Painel de Controle Rede e Internet Status de tarefas de rede, abra o Central de Rede e compartilhamento 65
71 2. Clique Configurar uma nova conexão de rede 3. Escolha Conectar a um local de trabalho. 66
72 4. Escolha Usar minha conexão com a internet (VPN): 67
73 5. Digite em Endereço na Internet o endereço do servidor da rede a qual você esta querendo se conectar. Se o endereço L2TP que você configurou não esta acessível diretamente, você terá que fazer um NAT no servidor direcionando o tráfego L2TP. 6. Digite o nome de usuário e senha que foi configurado antes: 68
74 7. Clique depois em Conectar, o Windows ira detectar automaticamente se o servidor esta aceitando a conexão L2TP ou PPTP, e vai ser configurado de acordo com o selecionado. Veja também... Configurando NAT por Forward, capitulo 3 Configuração Geral Criando VPN em um túnel IPSec Configurando o serviço OpenVPN Configurando o serviço PPTP VPN Configurando serviço de OpenVPN Aqui vamos descrever como configurar o PfSense para aceitar conexões OpenVPN. Como fazê-lo Vá até VPN OpenVPN. 2. Clique na aba Wizards. 3. Em Type of Server, selecione Local User Access. 4. Clique em Next. 5. Em Descriptive Name, coloque um nome para seu VPN, no exemplo nos usamos MyCaCert, se referindo ae certificado CA. 6. Em Country Code usamos no exemplo o USA. 7. Em State or Province, nós usamos no exemplo New York. 8. Em City, nós usamos no exemplo New York. 9. Em Organization, usamos no exemplo Blue Key Consulting. 10. No usamos como exemplo 11. Clique em Add new CA. 69
75 12. Digite em Descriptive name, um nome o novo certificado do servidor, no exemplo usamos o mesmo MyCaCert. A criação desse certificado vai ficar quase idêntico ao criado anteriormente. 13. Em Country Code usamos no exemplo o USA. 14. Em State or Province, nós usamos no exemplo New York. 15. Em City, nós usamos no exemplo New York. 16. Em Organization, usamos no exemplo Blue Key Consulting. 17. No usamos como exemplo 18. Clique em Create new Certification. 70
76 19. Em Description você coloca a descrição que você possa reconhecer futuramente, no exemplo nos usamos My OpenVPN Connection. 20. Digite em Tunner Network a conotação em CIDR, isso vai ser uma faixa de IP não usada (que geralmente não é muito diferente da rede que você usa) como /24. 71
77 21. Digite em Local Network a conotação em CIDR, que os clientes vão ser capazes de acessar, que geralmente é a rede interna LAN, / Especifique em Concurrent Connections, o numero máximo de clientes que irão se conectar. 23. Clique no botão Next. 24. Marque Add a rule to permit traffic from clients on the Internet to the OpenVPN server process. 25. Marque Add a rule to allow all traffic from connected clients to pass across the VPN tunnel: 72
78 26. Clique no botao Next. 27. Depois clique no botao Finish. 73
79 Como ele funciona... O serviço permite que usuários externos usem o OpenVPN para estabelecer uma conexão segura e criptografada em nossa rede. Os usuários se conectarão usando um cliente OpenVPN, e uma vez autenticado, o usuário terá acesso a rede como se estivesse no local fisicamente. Algoritmos de Criptografia Escolher o melhor algoritmo de criptografia é essencial para o melhor desempenho do seu hardware. Muitas placas de expansão VPN, como aquelas encontradas em Netgate usando Alix requerem placas AES- 128-CBC. Verifique com seu fornecedor de hardware para obter mais detalhes. Exportando Cliente OpenVPN Há um pacote de instalação no PfSense chamado OpenVPN Client Export Utility, que simplifica o processo de configuração: 1. Vá até System Packages 2. Clique na aba Available Packages. 3. Localize OpenVPN Client Export Utility, e clique no botão + para começar a instalação. 4. O pacote depois de baixado será instalado automaticamente. 5. O pacote depois de instalado será encontrado no menu VPN OpenVPN. Veja também... Criando VPN em um túnel IPSec 74
80 Configurando o serviço PPTP VPN Configurando o serviço L2TP VPN Configurando o serviço PPTP VPN Aqui vamos descrever como configurar o PfSense para receber conexões PPTP VPN. Como fazê-lo Vá até VPN PPTP aba Configuration 2. Marque Enable PPTP server 3. Escolha em No. PPTP users, o numero de clientes que irão se conectar 4. Em Server address digite um IP não usado para especificar o endereço para o servidor PPTP. O PPTP do servidor vai escutar esse endereço. 5. Em Remote address range, digite o inicio dos IPs dos clientes que irão se conectar, lembre-se de deixar uma quantidade de IP o suficiente referente ao que você colocou em No. PPTP users. 6. Marque Require 128-bit encryption. 75
81 7. Clique em Save. 8. Selecione a aba Users. 9. Clique no botão + para adicionar um usuário 10. Coloque o nome de usuário em username e a senha em password. 11. Clique em Save. 12. Vá até Firewall Rules 13. Selecione a aba PPTP VPN 14. Clique no botão + para criar uma nova regra de firewall. 15. Selecione em Destination o Lansubnet. 16. Selecione em Destination port range a opção any. 17. Em Description digite uma descrição que você possa reconhecer futuramente, no exemplo usamos Allow PPTP Clients to LAN. 18. Clique em Save. 19. Clique em Apply Changes. 76
82 Como ele funciona... O serviço permite que usuários externos estabeleçam uma conexão segura e criptografada usando o PPTP. Os usuários irão se conectar a rede usando um cliente PPTP, uma vez autenticado, o usuário terá acesso a rede como se estivesse conectado no próprio local. Conexão de um cliente usando Windows 7 Para criar uma conexão VPN PPTP em uma maquina usando o Windows 7: 8. Abra o Painel de Controle Rede e Internet Status de tarefas de rede, abra o Central de Rede e compartilhamento 9. Clique Configurar uma nova conexão de rede 77
83 10. Escolha Conectar a um local de trabalho. 11. Escolha Usar minha conexão com a internet (VPN): 78
84 12. Digite em Endereço na Internet o endereço do servidor da rede a qual você esta querendo se conectar. Se o endereço L2TP que você configurou não esta acessível diretamente, você terá que fazer um NAT no servidor direcionando o tráfego L2TP. 79
85 13. Digite o nome de usuário e senha que foi configurado antes: Clique depois em Conectar, o Windows ira detectar automaticamente se o servidor esta aceitando a conexão L2TP ou PPTP, e vai ser configurado de acordo com o selecionado. Conectando usando como cliente o Ubuntu Execute os seguintes passos para criar uma conexão PPTP VPN em um cliente usando Ubuntu (por não ter um computador com esse sistema operacional em português eu mantive os exemplos em inglês de acordo com as janelas de exemplo). 1. Abra System Preferences Network Connections 2. Selecione a aba VPN Clique no botão Add para criar uma conexão VPN. 80
86 3. Selecione PPTP e clique em Create Em Connection name digite um nome que você possa identicar, no exemplo usamos Matt s Network. 5. Em Gateway digite o ip do servidor que você configurou o PPTP VPN. Se o IP não pode ser acessado diretamente, você terá que configurar o NAT com port Forward. 81
87 6. Cliquem Apply 7. Clique em Close. 8. Vá em Network connection, selecione no menu VPN Connections Matt s Network 82
88 Conectando usando como cliente o Mac OSx Execute os seguintes passos para criar uma conexão PPTP VPN em um cliente usando Mac OSx (por não ter um computador com esse sistema operacional em português eu mantive os exemplos em inglês de acordo com as janelas de exemplo). 1. Abra System Preferences. 83
89 2. Clique em Network 84
90 3. Clique no botão + para adicionar uma nova conexão de rede 4. Selecione VPN em Interface. 5. Selecione PPTP em VPN Type. 6. Digite em Service Name um nome de descrição, no exemplo usamos Matt s Network. 7. Digite em Server Address o ip do servidor que você configurou o PPTP VPN. Se o IP não pode ser acessado diretamente, você terá que configurar um NAT port Forward. 8. Digite o nome de usuário cadastrado em Account Name. 9. Clique em Connect que aparecerá uma janela pedindo a senha 85
91 Veja também... Criando VPN em um túnel IPSec Configurando o serviço L2TP VPN Configurando o serviço OpenVPN Configurando o serviço PPTP VPN 86
92 5 Configurações Avançadas Nesse capitulo, iremos abordar: Criando um IP Virtual Criando regra de NAT 1:1 Criando uma regra de NAT outbound Criando Gateway Criando uma rota estática Configurando o Traffic Shaping (QoS, Qualidade do Serviço) Interfaces do tipo ponte Criando uma LAN Virtual Criando um Captive Portal Introdução A seguir vamos abordar recursos avançados de rede, que normalmente se encontram em classes empresariais. No entanto cada um desses recursos então disponíveis na ultima versão do PfSense. Criando um IP Virtual Aqui vamos descrever como configurar um endereço de IP virtual no PfSense. Se preparando... No PfSense você pode criar quatro tipos distintos de IPs virtuais: Proxy ARP CARP Other AP Alias 87
93 Um tipo comum de IP virtual é configurado como NAT 1:1, neste cenário o IP virtual do tipo Other é necessário, é o que vamos configurar agora: Como fazê-lo Vá em Firewall Virtual IPs 2. Clique no botão + e adicione um novo endereço de IP virtual. 3. Em Type escolha Other. 4. Em Interface escolha WAN 5. Em IP address digite o IP que você deseja virtualizar 6. Adicione uma descrição que você possa identificar posteriormente em Description. 7. Clique em Save 8. Clique em Apply Changes 88
94 Como ele funciona... O IP Virtual (vamos o chamar de VIP de agora em diante) do tipo Other tem as seguintes características: O tráfego só pode ser encaminhado para esse tipo de VIP; e o PfSense não pode usar esse tipo de VIP para os seus próprios serviços. O VIP pode ser usado em uma subrede diferente do que esta sendo usado pelo PfSense. O VIP não pode responder a pings. Há mais... Nós estamos configurando um VIP do tipo Other. Mas existem mais três tipos de endereços VIP que podem ser configurados no PfSense 2.0. Os quatro tipos de endereços VIP são semelhantes, mas mudam algumas propriedades, vamos ver a comparação: CARP o Pode ser usados e encaminhados pelo firewall o Pode usar o tráfego Layer 2. o Podem ser usados em cenários com balanceamento de carga e Fail-Over o Tem que estar na mesma subrede da interface o Ele vai responder a pings se configurado corretamente Proxy ARP o Só pode ser transmitida pelo firewall o Pode usar o tráfego Layer 2. o Pode estar em uma subrede diferente do que a interface o Não pode responder aos pings Other o Só pode ser transmitida pelo firewall o Pode estar em uma subrede diferente do que a interface o Não pode responder aos pings IP Alias o Novo no PfSense 2.0 o Só pode ser usado ou encaminhado pelo firewall o Permite que os endereços IP sejam adicionados como IP extra na interface. Configurando CARP como endereço VIP 1. Vá até Firewall Virtual IPs 2. Clique no botão + para adicionar um novo endereço VIP 3. Em Type escolha CARP 4. Em Interface selecione WAN 5. Em IP address digite o IP que você deseja 6. Em Virtual IP Password, digite uma senha 7. Escolha um VHID Group 8. Escolha um Advertising Frequency (0 para todos) 89
95 9. Digite uma descrição que você possa identificar futuramente em Description. 10. Clique em Save 11. Clique em Apply Changes. Configurando o Proxy ARP como endereço VIP 1. Vá em Firewall Virtual IPs 2. Clique no botão + para adicionar um novo endereço VIP 3. Em Type escolha Proxy ARP. 4. Em Interface selecione WAN 5. Selecione Single Address em Type. 6. Em Address digite o IP. 90
96 7. Digite uma descrição em Description. 8. Clique em Save 9. Clique em Apply Changes. Configurando o IP Alias como endereço VIP 1. Vá em Firewall Virtual IPs 2. Clique no botão + para adicionar um novo endereço VIP 3. Em Type escolha IP Alias 4. Em Interface escolha WAN. 5. Em IP address digite o IP 91
97 6. Digite uma descrição em Description. 7. Clique em Save. 8. Clique em Apply Changes. Veja também... Criando regra de NAT 1:1 Criando uma regra de NAT outbound Criando uma rota estática Criando uma LAN Virtual 92
98 Configurando regra de NAT 1:1 Aqui vamos descrever como configurar uma regra de NAT 1:1. A regra NAT 1:1 é usada quando você quiser associar um endereço de IP publico com uma maquina da rede interna. Tudo que for destinado ao IP publico vai ser encaminhado para maquina da rede interna. Como fazê-lo Vá até Firewall Virtual IP 2. Na aba Virtual IPs, clique no botão + para adicionar um novo VIP. 3. Em Type selecione Proxy ARP. 4. Em Interface selecione WAN 5. Na opção IP address, em Type selecione Single Address, e em Address digite o ip externo que você deseja associar a uma maquina da rede interna. 6. Adicione uma descrição que você possa reconhecer mais tarde em Description, no exemplo nos usamos My public IP address. 7. Clique em Save. 8. Clique em Apply Changes. 9. Vá em Firewall NAT. 10. Selecione a aba 1:1 11. Clique no botão + para adicionar uma regra de NAT 1:1 12. Em Interface selecione WAN 13. Em Source selecione any 14. Em Destination, especifique o computador interno, no caso vamos usar o Alias. 15. Digite em External Subnet o seu ip publico 16. Em Description, adicione uma descrição que você possa reconhecer posteriormente, no exemplo usamos Forward all external requests to Webserver Em NAT Freflection deixe Disabled. 93
99 18. Clique em Save. 19. Clique em Apply Changes. Como ele funciona... Uma vez que é feita uma relação de NAT 1:1 estabelecida, todo o tráfego será encaminhado para o endereço de IP internou ou subrede, como se a maquina interna fosse diretamente configurado com o IP público. Isso é muito mais fácil do que criar uma regra de Port Forward se todo o tráfego de entrada e saída tiver destinado a maquina. Há mais... Como muito recursos avançados de rede, o relacionamento bem sucedido do NAT 1:1 requer o uso de VIPs. Veja também... Criando um IP Virtual 94
100 Criando uma regra de NAT outbound Aqui vamos descrever como criar uma regra de NAT outbound Se preparando... Uma regra de NAT outbound define como traduzir o que um tráfego de rede esta deixando. Isso pode parecer um conceito difícil de entender na primeira vez, porque a maioria dos cenários de rede em geral só então preocupados em saber o local de onde os pacotes estão vindos, e não se preocupam em saber como eles saem. Vamos descrever agora como usar uma regra de NAT outbound para resolver um cenário comum que envolve o nateamento para uma maquina com varias interfaces. Vamos supor que temos um único servidor de destino com duas interfaces, LAN e DMZ, e o firewall PfSense protege essas duas interfaces. Usando a velha regra de Port Forward, encaminhando solicitações HTTP para o servidor em sua interface DMZ, o que é bom. No entanto, quando tentamos encaminhar solicitações SSH para a interface LAN do servidor, o tráfego chega corretamente, mas tenta responder através da rede DMZ. Isso não é reconhecido como valido pelo firewall e fica dando tempo perdido quando se tenta conectar. A solução e lhe dar com os pedidos SSH usando uma regra de NAT outbound junto com uma regra de NAT 1:1, como vamos descrever. Como fazê-lo Vá a Firewall Virtual IPs 2. Na aba Virtual IPs, clique no botão + para adicionar um novo VIP. 3. Em Type selecione Proxy ARP 4. Em Interface selecione WAN 5. Na opção IP address, em Type selecione Single Address, e em Address digite o ip externo que você deseja associar a uma maquina da rede interna. 6. Adicione uma descrição que você possa reconhecer mais tarde em Description, no exemplo nos usamos My public IP address. 7. Clique em Save 8. Clique em Apply Changes 95
101 9. Vá até Firewall NAT 10. Clique na aba Outbound 11. Selecione o modo Automatic outbound NAT rule generation (IPsec passthrough included). 12. Clique no botão + para adicionar um novo mapeamento de NAT outbound. 13. Escolha Interface que a maquina vai responder, no caso é a LAN. 14. Em Source especifique any 15. Em Destination ponha o endereço do servidor que ira responder. 16. Deixe o Translation para tratar da Interface Address e especificar a porta 22 para responder os pedidos de SSH. 17. Escreva em Description a descrição para você identificar futuramente, no exemplo usamos Outbound NAT for WAN Clients to Server1 SSH. 18. Clique em Save. 19. Clique em Apply Changes. 96
102 20. Vá até Firewall NAT 21. Clique na aba 1:1 22. Clique no botão + para adicionar um mapeamento NAT 1:1 23. Em Interface escolha WAN. 24. Em Source escolha any. 25. Especifique em Destination, Single Host ou Alias, e fornecer o endereço IP do servidor que esta recebendo as solicitações. 26. Especifique o VIP que criamos anteriormente em External subnet. 27. Em Description digite uma descrição que possa reconhecer no futuro, no exemplo colocamos 1:1 NAT Public IP to Server Clique em Save 29. Clique em Apply Changes. 30. Vá a Firewall Rules 31. Clique na aba WAN. 32. Clique no botão + para adicionar uma nora regra de firewall. 33. Em Source escolha any 34. Em Source port range escolha any. 35. Em Destination selecione ou Singles host ou Alias especificando o endereço de IP do servidor que está lidando com as solicitações. 36. Em Destination port range selecione SSH. 37. Em Description digite uma descrição qualquer que você possa reconhecer mais tarde, no exemplo usamos Allow WAN Clients to Server1 SSH. 38. Clique em Save. 39. Clique em Apply Changes. 97
103 Como ele funciona... A regra de outbound que criamos avisa ao PfSense para direcionar o tráfego de saída através da interface LAN, independentemente de qual interface ela entrou. Isso vai permitir que o tráfego SSH encontrasse o caminho de casa mesmo se o gateway padrão do servidor estiver em contra interface, no caso (DMZ). Enquanto isso as solicitações HTTP que foram configuradas através do Port Forwarding continuam funcionando perfeitamente. Veja também... Criando um IP Virtual Criando regra de NAT 1:1 Criação de regras em Nat port Forward Criando um Gateway Aqui vamos descrever como criar um gateway no PfSense. Se preparando... Em geral, as redes com uma única ligação WAN, não é necessário mudar as configurações de gateway; o padrão criado pelo próprio PfSense automaticamente já é o suficiente. No entanto, as redes que possuem 98
104 mais de uma conexão de internet ou tira proveito de algumas funcionalidades avançadas (por exemplo, rotas estáticas) terá que definir um gateway personalizado. Como fazê-lo Vá a System Routing 2. Clique na aba Gateways 3. Clique no botão + para adicionar um novo gateway 4. Selecione a Interface do novo gateway 5. Em Name você vai especificar um nome para esse gateway (não pode ser espaço) 6. Em Gateway especifique o IP do gateway, esse IP tem que ser reconhecido pela interface que você escolheu na etapa Em Monitor IP você pode atribuir um IP alternativo ou deixar em branco mesmo, fazendo isso o sistema ira colocar o mesmo IP do gateway como monitor IP. 8. Em Description você vai colocar uma descrição para identificar qual gateway você criou, no exemplo usamos My New Gateway. 9. Clique em Save. 10. Clique em Apply Changes. 99
105 Como ele funciona... Um gateway é um portal que liga duas redes. O gateway eh o que gera tráfego entre a LAN e a internet. Se tivermos varias conexões WAN (ou seja, múltiplas conexões para internet) seria necessário definir um gateway para cada um. Há mais... Vamos ver agora como criar gateways para fazer rotas estáticas. Uma rota estática é um caminho feito de uma rede para outra, o todo o tráfego entre essas duas redes devem passar por um gateway. Grupos de Gateway O PfSense 2.0 implemente um novo conceito chamado Grupos de Gateway. O grupo de gateway é uma junção de vários gateways que podem ser tratados como uma unidade a partir de varias outras funcionalidades no sistema. Grupos de gateway ira aparecer na porta de entrada em um menu drop-down, como em uma definição de regra de firewall. Veja também... Criando regras de firewall, capitulo 3 Configurações Gerais Configurando interface WAN, capitulo 1 Configurações Iniciais Criando rotas estáticas Criando rotas estáticas Aqui vamos descrever como criar uma rota estática no PfSense. Se preparando... As rotas estáticas servem para acessar redes que não são acessíveis através do gateway padrão WAN, mas pode ser alcançado indiretamente através de uma interface diferente. Um exemplo comum pode ser usado em uma grande empresa com vários escritórios que usam uma impressora compartilhada, é só preciso 100
106 criar uma rota estática. Podemos usar o PfSense para criar essa rota estática para uma rede interna, em vez de configurar uma rota estática em cada pc. Como fazê-lo Vá até System Routing. 2. Clique na aba Gateways 3. Clique no botão + para adicionar um novo gateway 4. Selecione em Interface onde vai ficar o novo gateway 5. Digite em Name o nome do seu gateway (não pode ter espaço) 6. Digite em IP Address o IP do gateway, esse IP tem que ser reconhecido pela interface selecionada anteriormente. 7. Em Monitor IP você pode atribuir um IP alternativo ou deixar em branco mesmo, fazendo isso o sistema ira colocar o mesmo IP do gateway como monitor IP. 8. Em Description você vai colocar uma descrição para identificar qual gateway você criou, no exemplo usamos My New Gateway. 9. Clique em Save 10. Clique em Apply Changes 11. Vá em System Routing 12. Clique na aba Routes 13. Clique no botão + para adicionar uma nova rota 14. Em Destination network digite o endereço de IP da rede de destino 15. Em Gateway escolha o que criamos a cima. 16. Em Description escreva algo para descrever a regra, no exemplo usamos Static route for shared printer network. 101
107 17. Clique em Save. 18. Clique em Apply Changes. Como ele funciona... Ao definir uma rota estática, temo um caminho traçado para nossa rede de impressora compartilhada. Nós podemos acessar agora esta rede através da rota estática criada, e oferecer uma porta de entrada para outros usuários do firewall. Veja também... Criando Gateway Configurando o Traffic Shaping (QoS, Qualidade do Serviço) Aqui vamos descrever como configurar o controle de banda no PfSense Se preparando... O Traffic Shaping, também conhecido como QoS, é a priorização e otimização de pacotes de rede. Priorizando os pacotes de rede de certos tipos de tráfego em relação a outros. Limita o pacote de rede fixando 102
108 certos limites de velocidade de certos tipos de tráfego para certos momentos. Um administrador pode querer priorizar os pacotes de VoIP sobre todos os outros para garantir que chamadas telefônicas não vão ser descartadas ou interrompidas devido ao alto tráfego de rede. Além disso, podemos também limitar o rendimento do VoIP para 100kbps. Esse é um exemplo tipo de ambiente que roda VoIP. A seguir vamos usar o PfSense para moldar os acessos externos usando o Desktop Remoto do próprio Windows (MSRDP) que entram em nossa rede. Assim podemos nos assegurar que podemos administrar nossos servidores remotamente mesmo se o tráfego de rede estiver muito alto. Como fazê-lo Vá a Firewall Traffic Shaper 2. Clique na aba Wizards 3. Na coluna Wizard functions, clique no link referente a Single WAN multi LAN. 4. Em Enter number of LAN type connections digite o numero de Lans, no nosso caso tem LAN e DMZ, então colocamos numero Em Link Upload digite a velocidade que o seu provedor de internet forneceu para upload, no exemplo usamos 2.000Kbps (2Mbps), se você tiver duvida faça um teste em sites de velocidade, como por exemplo: 6. Em Link Download digite a velocidade que o seu provedor de internet forneceu para download, no exemplo usamos Kbps (15Mbps), se você tiver duvida faça um teste em sites de velocidade, como por exemplo: 103
109 7. A pagina seguinte é usada especificamente para configurar a priorização de tráfego de VoIP, você pode pular essa etapa clicando em Next. 104
110 8. Na próxima pagina se chama PenaltyBox, nos permite limitar a velocidade de um determinado endereço de IP ou Alias. Isso é muito útil, mas não vamos ter a necessidade de usar essa função no momento, você pode ignorar clica em Next. 9. Essa próxima pagina se chama Peer to Peer (P2P) Networking, você pode diminuir a prioridade de tráfego P2P, nessa pagina a cerca de 20 opções de rede P2P mais populares para ser limitado o tráfego. Como não nos interessa essa parte no momento então clique em Next. 10. Nessa próxima pagina Network Games, você pode configurar o tráfego de rede liberada aos jogos online, nessa pagina a cerca de 20 jogos mais populares online para ser priorizado. Como não nos interessa essa parte no momento então clique em Next. 105
111 11. Na página final Other Applications, nos permite morldar outros tipos comuns de tráfego. Vamos ter que clicar na opção Enable, para permitir o uso dessa aplicação, em MSRDP vamos selecionar Higher priority, os outros vamos deixar como Default, e clique em Next. 12. Clique em FInish para aplicar a nova configuração. 106
112 Como ele funciona... Usando o Wizard do Traffic Shapping, nós definimos um conjunto de regras que prioriza o tráfego do MSRDP acima de qualquer outro. Mesmo que a rede esteja com tráfego pesado, seja com uso da web, VoIP ou quantos mais tiver, nossa conexão MSRDP sempre ficará estável e interrupta, já que foi priorizado. Interfaces do tipo ponte (bridge) Aqui vamos descrever como fazer uma ponte juntando duas interfaces no PfSense. Pontes permitem unir duas redes. Por exemplo, o administrador pode fazer uma ponte de rede entre uma rede com fio e uma rede sem fio. Como fazê-lo Vá a Interfaces (assign) 2. Clique na aba Bridge 3. Clique no botão + para adicionar uma nova ponte 4. Em Member Interfaces, selecione as interfaces com o Ctrl pressionado. 5. Em Description você vai digitar uma identificação que possa reconhecer posteriormente, no exemplo nos usamos LAN DMZ Bridge. 6. Clique em Save 107
113 Como ele funciona... A ponte combina duas interfaces no firewall em uma rede única de Layer-2. A LAN e DMZ estão agora ligados. Há mais... Clique em Show advanced options, para configurar qualquer uma dessas seguintes opções: RSTP/STP: Abilite para abrir a arvore de opções: o Protocol o STP Interfaces o Valid time o Forward time o Hello time o Priority o Hold count o Interface priority o Path cost Cache size Cache entry expire time Span port Edge ports Auto Edge ports PTP ports Auto PTP ports Sticky ports Private ports Veja também... Identificando e atribuindo interfaces, capitulo 1 Configuração Inicial. Criando LAN Virtual 108
114 Aqui vamos descrever como criar uma LAN Virtual no PfSense. Se preparando... A VLAN permite q um único interruptor físico possa hospedar varias camadas de rede, separando as portas com tags VLAN. A tag de VLAN define uma rede virtual separada. O PfSense pode anexar em cada VLAN, definindo tags nas interfaces do firewall. Como fazê-lo Vá até Interface (assign) 2. Clique na aba VLANs 3. Clique no botão + para adicionar uma nova VLAN 4. Na opção Parent Interface. Se refere a uma atribuição de uma interface de referencia (observe na figura a baixo). Neste caso a DMZ foi atribuída como vr2 então vamos selecionar ela. 5. Na opção VLAN tag, ponha um valor entre Em Description, ponha um nome para referencia no exemplo nos usamos My DMZ virtual LAN. 7. Clique em Save. 109
115 Como ele funciona... Todos os pacotes destinados ou originados de VLAN serão marcados com a tag VLAN. É assim que o PfSense diferencia ele dos outros tráfegos, garantindo que esse tráfego vá para o lugar certo. Veja também... Identificando e atribuindo interfaces, capitulo 1 Configuração Inicial. Criando um Captive Portal Aqui vamos descrever como criar um Captive Portal no PfSense. Se preparando... O Captive Portal é uma pagina web que é exibida de permissão ao usuário antes de navegar na web. Isso geralmente é visto em ambientes comerciais como Wi-Fi Hotspot onde você deve pagar pelo serviço antes de navegar na web. Em outros cenários o Captive Portal é usado para autenticação do usuário. Nessa explicação vamos configurar o PfSense para mostrar um Captive Portal de autenticação antes que o usuário navegue na web pela DMZ. Como fazê-lo Vá a Services Captive Portal 2. Na aba Captive Portal, clique em Enable Captive Portal. 3. Em Interface escolha a interface que deseja usar o serviço, no nosso exemplo vamos usar o DMZ. 4. Em Idle timeout, nós selecionamos 10 minutos, clientes que passarem mais tempo que isso sem atividade no computador, assim que ele acessar de novo vai pedir o usuário e senha. 5. Em Hard timeout, nós usamos 60 minutos, clientes que estão navegando ou não no computador depois de 60 minutos vai aparecer uma tela de usuário e senha para ser digitado, você pode deixar em branco para desabilitar essa opção. 6. Clique em Enable logout popup window, para q os usuários possam deslogar quando terminar. 7. Em Redirection URL, você pode fazer com que o cliente assim que se logar seja direcionado a uma pagina que você escolher, no exemplo nos usamos 110
116 8. Em Authentication, escolha Local User Manager. 9. Clique em Save. 10. Vá até System User Manager 11. Clique na aba User 12. Clique na aba + para adicionar um novo usuário 13. Em Username digite o nome de usuário 14. Em Password digite uma senha desejada duas vezes. 15. Em Full Name ponha o nome completo do usuário 111
117 16. Clique em Save Como ele funciona... Através de uma criação do Captive Portal na DMZ, todo usuário que tentar navegar na web terá que primeiro se autenticar como na imagem abaixo. Uma vez autenticado, ele será direcionado para pagina do Google, onde pode navegar na web obedecendo as regras de tempo predefinidas, onde terão que se autenticar novamente. 112
118 Há mais... Todas as três paginas do Captive Portal (login, logout e erro) podem ser personalizadas para atender o padrão da organização onde foi implementado o sistema. A maneira mais fácil de ser feito isso é salvando cada pagina como um arquivo edita-lo a sua maneira (sem mudar onde o usuário vai colocar suas credenciais), e depois envia-lo usando as opções na parte inferior da pagina do serviço Captive Portal. 113
119 6 Redundância, Balanceamento de carga, e Failover Nesse capitulo, iremos abordar: Configurando múltiplas interfaces WAN Configurando o balanceamento de carga em uma multi-wan Configurando o Failover em uma multi-wan Configurando um servidor de web com balanceamento de carga Configurando um servidor web com Failover Configurando um firewall CARP com Failover Introdução Redundância, balanceamento de carga e Failover são alguns dos mais avançados recursos de rede usados no momento. Alguns desses serviços são necessários em empresas de grande porte, alguns firewalls e roteadores não são capazes de fazer isso. E é claro que o PfSense suporta todos eles. Redundância de varias interfaces WAN (multi-wan) fornece um firewall único para varias conexões de internet. O PfSense pode ser configurado para equilíbrio de carga ou Failover de interface multi-wan. Balanceamento de carga vai dividir o tráfego entre as interfaces de internet, quanto o Failover faz com que se uma interface caia a outra assume 100% do tráfego, não fazendo a internet da rede parar. O balanceamento de carga do PfSense permite tipos de tráfego específicos (como tráfego na web) serem distribuídos entre os servidores. A capacidade de criar sua própria webfarm é feito direto no PfSense! Redundância de firewall permite que o sistema sobreviva se a maquina do firewall PfSense venha a ser desligada. Para isso usamos uma configuração CARP, o PfSense pode configurar um Failover para passar o acesso automaticamente para um firewall de backup. Configurando múltiplas interfaces WAN 114
120 Aqui vamos descrever como configurar múltiplas interfaces WAN no PfSense. Se preparando... Um sistema de PfSense com uma única interface WAN é quase plug-and-play desde um gateway até um DNS padrão. No entanto algumas descrições nesse capitulo requer múltiplas conexões de WANs e os gateways devem ser configurados manualmente. As descrições a seguir vão ver como configurar duas interfaces WAN que podem ser usadas mais tarde como balanceamento de carga redundante e Failover. As seguintes interfaces vão se configuradas com endereços de IPs privados para fins de exemplo, mas uma configuração real exigiria que cada interface WAN fosse configurada corretamente de acordo com as informações fornecidas por cada provedor. Como fazê-lo Vá a System Routing 2. Selecione a aba Gateways 3. Tome nota que o gateway da nossa interface padrão WAN existente foi criada automaticamente, por isso ela esta definida como default, que geralmente é definida como dynamics. 4. Clique no botão + para adicionar um novo gateway 5. Em Interface escolha a conexão já existente WAN 6. Em Name digite um nome para o gateway 7. Em Gateway digite o gateway da interface 8. Marque Default Gateway 9. Em Description digite uma descrição para seu gateway, no exemplo nós usamos WAN Gateway. 115
121 10. Clique em Save. 11. Clique no botão + para adicionar um novo Gateway 12. Na opção Interface escolha a nova interface WAN. 13. Em Name digite um nome para o gateway 14. Em Gateway digite o gateway da interface 15. Em Description digite uma descrição para seu gateway, no exemplo nós usamos WAN2 Gateway. 116
122 16. Clique em Save 17. Clique em Apply Changes 18. Vá a Interfaces WAN 19. Em Type escolha Static 20. Em IP Address digite o IP da WAN 21. Em Gateway selecione o gateway que você criou referente à WAN 22. Marque Block private networks 23. Marque Block bogon networks 117
123 24. Clique em Save 25. Vá á Interfaces WAN2 26. Em Type escolha Static 27. Em IP address digite o IP da WAN2 28. Em Gateway, selecione o gateway criado referente a WAN2 29. Marque Block private networks 30. Marque Block bogon networks 118
124 31. Clique em Save 32. Clique em Apply Changes Como ele funciona... Apenas a primeira interface WAN que é criada pelo PfSense, vai ter seu gateway padrão gerado automaticamente. Ao criar um gateway manualmente para interface WAN, como acabamos de fazer, então agora podemos continuar com o capitulo fazendo para configurar os recursos de redundância. Há mais... Lembre-se sempre de marcar as opções de Block private networks e Block bogon networks nas redes de internet. Veja também... Configurando a Interface, capitulo 1 Configuração Inicial. Criando gateway, capitulo 5 Configurações avançadas. Configurando multi-wan com balanceamento de carga Configurando multi-wan com Failover Configurando multi-wan com balanceamento de carga Aqui vamos descrever como configurar o balanceamento de carga em um único sistema PfSense. Se preparando... Ao longo dessas instruções, vamos configurar o balanceamento de carga de duas interfaces WAN separadas. Então terá que se certificar primeiro se as duas interfaces estão corretamente configuradas se guiando pela instrução mais a cima. Toda vez que um balanceamento de carga entra em vigor, o Failover automaticamente também entra. Mas se quiséssemos ativar somente o Failover, na próxima etapa vamos descrever como fazer. Como fazê-lo Vá a System Routing 2. Selecione a aba Groups 3. Em Group name digite um nome (esse nome vai ser o nome do seu gateway, e não pode ter espaço) no exemplo usamos LoadBalancedGroup 4. Em Gateway Priority em ambos os gateways selecione Tier1 5. Em Trigger Level, selecione Member Down 6. Em Description digite uma descrição para seu balanceamento. 119
125 7. Clique em Save 8. Clique em Apply Changes 9. Vá até System Routing 10. Edite o WAN gateway 11. Em Monitor IP você pode especificar um endereço de IP externo. Eu particularmente coloco o endereço mas você pode especificar o endereço a sua escolha, pode ser um mais perto do seu firewall (algum ip dentro da rede do seu provedor por exemplo). 12. Clique em Save. 13. Edite o Wan2 gateway 14. Em Monitor IP você pode especificar um endereço de IP externo. Eu particularmente coloco o endereço mas você pode especificar o endereço a sua escolha, pode ser um mais perto do seu firewall (algum ip dentro da rede do seu provedor por exemplo). 15. Clique em Save. 16. Clique em Apply Changes. 120
126 17. Vá até Firewall Rules 18. Clique no botão + para adicionar uma nova regra de firewall na aba LAN 19. Em ação selecione Pass 20. Em Interface selecione LAN 21. Em Protocol selecione any 22. Em Source selecione Lan Subnet 23. Em Destination selecione any 24. Em Description digite uma descrição 25. Em Advanced Features, na opção Gateway clique em Advanced e irá aparecer um menu com a lista de gateways criados 26. Em gateway selecione o gateway que criamos logo a cima com o nome LoadBalancedGroup 27. Clique em Save 28. Clique em Apply Changes 121
127 Como ele funciona... Todo o tráfego de internet que passar pela LAN vai passar pelo nosso gateway. As duas WANs configuradas vão ter o mesmo nível de prioridade vai alternar entre si simultaneamente. Além disso, nós também configuramos o IP Monitor, com isso o PfSense saberá quando um gateway perde a conexão com a internet, então o balanceamento de carga exclui esse link deixando o outro ou os outros funcionando, quem faz isso é o Failover, que entra em vigor automaticamente. Há mais... Nós definimos o Trigger Level, como Member Down, mas há varias outras opções: Member Down: É acionado quando o endereço que colocamos em IP monitor deixa de responder aos pings. Packet Loss: É acionado quando os pacotes que viajam entre um dos gateways são perdidos. High Latency: É ativado quando os pacotes que viajam entre um dos gateways ficam com uma instabilidade muito alta. Packet Loss or High Latency: É acionado quando os pacotes que viajam entre um dos gateways ficam com perda ou instável. Veja também... Configurando múltiplas interfaces WAN Configurando o Failover em uma multi-wan Aqui vamos descrever como configurar o Failover em uma multi-wan usando somente um sistema PfSense. Se preparando... Ao longo dessa descrição, vamos configurar o Failover para nossas duas interfaces WAN separadas. Então terá que se certificar primeiro se as duas interfaces estão corretamente configuradas se guiando pela instrução anteriormente dita. Como fazê-lo Vá a System Routing 2. Selecione a aba Groups 3. Em Group name digite um nome (esse nome vai ser o nome do seu gateway, e não pode ter espaço) no exemplo usamos FailoverGroup 4. Em Gateway Priority selecione seu WAN Gateway como Tier Em Gateway Priority selecione seu WAN2 Gateway como Tier Em Trigger Level selecione Member Down 7. Em Description digite uma descrição para seu Failover. 122
128 8. Clique em Save 9. Clique em Save Changes 10. Vá até System Routing 11. Edite o WAN gateway 12. Em Monitor IP você pode especificar um endereço de IP externo. Eu particularmente coloco o endereço mas você pode especificar o endereço a sua escolha, pode ser um mais perto do seu firewall (algum ip dentro da rede do seu provedor, por exemplo). 13. Clique em Save. 14. Edite o Wan2 gateway 15. Em Monitor IP você pode especificar um endereço de IP externo. Eu particularmente coloco o endereço mas você pode especificar o endereço a sua escolha, pode ser um mais perto do seu firewall (algum ip dentro da rede do seu provedor, por exemplo). 16. Clique em Save. 17. Clique em Apply Changes. 123
129 18. Vá até Firewall Rules 19. Clique no botão + para adicionar uma nova regra de firewall na aba LAN 20. Em ação selecione Pass 21. Em Interface selecione LAN 22. Em Protocol selecione any 23. Em Source selecione Lan Subnet 24. Em Destination selecione any 25. Em Description digite uma descrição 26. Em Advanced Features, na opção Gateway clique em Advanced e irá aparecer um menu com a lista de gateways criados 27. Em gateway selecione o gateway que criamos logo a cima com o nome FailoverGroup 28. Clique em Save 29. Clique em Apply Changes 124
130 Como ele funciona... Todo o tráfego da nossa LAN vai passar pelo gateway que acabamos de criar. Consiste em um gateway de dois níveis de prioridades separadas, a rede funcionara pelo gateway Tier 1, quando esse gateway por algum motivo ficar off, então o gateway Tier 2 assume o lugar do gateway principal, e quando Tier 1 voltar ao normal, os dois gateways voltam para a posição inicial. Há mais... Nós definimos o Trigger Level, como Member Down, mas há varias outras opções: Member Down: É acionado quando o endereço que colocamos em IP monitor deixa de responder aos pings. Packet Loss: É acionado quando os pacotes que viajam entre um dos gateways são perdidos. High Latency: É ativado quando os pacotes que viajam entre um dos gateways ficam com uma instabilidade muito alta. Packet Loss or High Latency: É acionado quando os pacotes que viajam entre um dos gateways ficam com perda ou instável. Veja também... Configurando múltiplas interfaces WAN Configurando o balanceamento de carga em uma multi-wan Configurando um servidor web com balanceamento de carga Aqui vamos descrever um pequeno serviço de web com balanceador de carga no PfSense. Se preparando... O balanceador de carga permite que o PfSense distribua certos tipos de tráfego para varias maquinas na rede. Um uso comum desse recurso é para distribuir solicitações HTTP de entrada para vários servidores web, a seguir vamos descrever como configurar o balanceador de carga para criar um serviço de web priorizado. Como fazê-lo Vá á Services Load Balancer 2. Na aba Monitor 3. Clique no botão + para adicionar um novo Monitor. 4. Em Name digite um nome para seu monitor 5. Em Description digite uma descrição para identificar seu monitor 6. Em Type selecione HTTP. 7. na opção Host, aqui vamos digitar um endereço de IP que não é usado na rede, para ser o IP do servidor virtual. O servidor virtual vai ser configurado para passar os pedidos para os servidores reais de web, esse IP é o que vãi ser monitorado 125
131 8. Em HTTP Code selecione 200 OK. 9. Clique em Save 10. Clique em Apply Changes. 11. Clique na aba Pools. 12. Clique no botão + para adicionar um novo pool 13. Selecione um nome em Name 14. Em Mode selecione Load Balance 15. Em Description digite uma descrição pro pool que você acabou de criar 16. Em Port selecione 80 (pois estamos criando um balanceador de carga de um servidor web) 17. Em Monitor selecione o monitor que você acabou de criar com o nome WebfarmMonitor. 18. Em Server IP Address digite cada ip dos servidores web e clique em Add to pool. 126
132 19. Clique em Save 20. Clique em Apply Changes 21. Clique na aba Virtual Servers 22. Clique no botão + para adicionar um novo servidor virtual 23. Em Name digite um nome para o seu servidor virtual 24. Em Description digite uma descrição para o seu servidor 25. Em IP address digite o IP que você cadastrou em Monitor. 26. Em Port digite a porta que você quer usar no caso é 80 já que é um servidor de web 127
133 27. Em Virtual Server Pool selecione o pool que você criou, WebfarmPool 28. Clique em Submit 29. Clique em Apply Changes Como ele funciona... Nessas descrições, temos configurado o PfSense para dividir o tráfego de entradas de HTTP (porta 80) entre os dois servidores web separados. O pool define a localização do servidor web e o modo que o balanceamento de carga é feito (ao contrario do Failover). Nosso servidor virtual define o endereço de IP, vamos utilizar o nosso NAT e regras de firewall para ouvir os pedido HTTP, e o servidor virtual vai saber dividir corretamente as requisições atribuídas pelo Pool. O monitor irá verificar o estado o pool periodicamente fazendo um pedido de web. Uma vez que o pedido é direcionado ao endereço de IP do servidor virtual, vai ser desligado o pool, se qualquer um dos dois servidores não responder com o status 200 OK. Uma vez que isso acontecer o pool vai definir o Failover também. 128
134 Há mais... Sticky connections podem ser usados para garantir que o cliente sempre vai fazer pedidos para o mesmo servidor durante um período de tempo. Se o próximo pedido for feito após o time out do Sticky connections, ele vai ser manuseado por qualquer um dos dois servidores. Os desenvolvedores geralmente precisam desse recurso para garantir a integridade dos dados específicos do servidor (cache InMemory), mas não é tão confiável do que usar a sessão de armazenamento compartilhado. Veja também... Criando regras de NAT port Forward, capitulo 3 Configuração Geral Criando regras de Firewall, capitulo 3 Configuração Geral Configurando servidor web com Failover Configurando um servidor web com Failover Aqui vamos descrever como fazer um pequeno servidor web com a função de Failover. Se preparando... O balanceador de carga também permite que o PfSense envie o tráfego para um servidor Failover quando cair a conexão. Como fazê-lo Vá a Services Load Balancer 2. Clique na aba Monitor 3. Clique no botão + para adicionar um novo monitor 4. Em name digite um nome para o seu monitor 5. Em Description digite uma descrição que você possa reconhecer seu monitor 6. Na opção type selecione HTTP 7. Em host digite o IP do seu servidor primário de web 8. Na opção HTTP code selecione 200 OK 129
135 9. Clique em Save 10. Clique em Apply Change 11. Clique na aba Pools. 12. Clique no botão + para adicionar um novo pool 13. Em name digite um nome para o pool 14. Em mode selecione Manual Failover. 15. Digite uma descrição para o seu pool em Description 16. Em port selecione 80 (já que estamos criando um Failover para servidor web) 17. Em Monitor selecione o monitor que você acabou de criar com o nome WebFailoverMonitor. 18. Em Server IP Address digite o ip do seu servidor web primário, e clique em Add pool, se você reparar o ip vai para lista de Enable (default) 19. Depois digite novamente em Server IP Address, só que agora você vai digitar o IP do servidor web de backup, e clique em Add pool, se você reparar o IP vai para lista de Pool Disabled. 130
136 20. Clique em Save 21. Clique em Apply Changes 22. Clique na aba Virtual Server. 23. Clique no botão + para adicionar um novo servidor virtual 24. Em Name digite um nome para o seu servidor virtual 25. Digite em Description uma descrição para o seu servidor virtual 26. Em IP address digite um IP que não tiver uso na sua rede 27. Em port selecione 80 (já que estamos criando um Failover para servidor web) 28. Em Virtual Server Pool selecione o Pool que você acabou de criar, no exemplo é o WebFailoverPool. 29. Clique em Submit 30. Clique em Apply Changes 131
137 Como ele funciona... Ao longo dessas descrições, explicamos como configurar o PfSense para redirecionar o tráfego automaticamente do servidor web primário para o servidor web de backup se o primário ficar off por algum motivo. O pool define a localização dos servidores web e o modo Failover (que é o contrario de balanceamento de carga). E o servidor virtual define o endereço de IP, e vamos utilizar o NAT e regras de firewall para ouvir os pedidos HTTP, o servidor virtual para o pool que definimos. O monitor verifica o status do servidor principal periodicamente fazendo pedidos web. Se a resposta voltar 200 OK, o pool vai usar o tráfego do servidor primário, caso contrario ele vai direcionar o tráfego para o servidor de backup. Veja também... Criando NAT de port forward, capitulo 3, Configuração Geral Criando regras de firewall, capitulo 3, Configuração Geral Configurando servidor web com balanceamento de carga Configurando um firewall CARP com Failover Aqui vamos aprender como configurar dois firewalls PfSense para Failover Se preparando... Redundância de hardware precisa de um hardware adicional claro. Para configurar um Failover de firewall, vamos precisar de duas maquinas PfSense. Cada máquina também precisa de uma interface adicional dedicado ao processo de sincronização (vamos chamar de pfsync). Agora vamos demonstrar como usar duas maquinas separadas com PfSense, cada uma com três interfaces (WAN, LAN e pfsync) As seguintes interfaces serão configuradas com endereços de IPs privados para o exemplo, mas em uma configuração real exigiria para cada interface WAN ser configurada corretamente de acordo com as informações fornecidas pelo provedor. 132
138 Como fazê-lo Configure a interface da nossa primeira maquina, o PfSense primário com as seguintes informações: o WAN: o SYNC: o LAN: Configure a interface da nossa segunda maquina, o PfSense secundário com as seguintes informações: o WAN: o SYNC: o LAN: Em ambas as maquinas, adicione no firewall a regra de tráfego livre na interface SYNC: 1. Vá a Firewall Rules 2. Clique na aba Interface SYNC 3. Clique no botão + adicionando uma nova regra de firewall 4. Em Protocol selecione any e digite uma descrição em Description 5. Clique em Save 6. Cique em Apply Changes 133
139 7. Na maquina PfSense secundário precisamos habilitar a sincronização CARP, e configura-lo apenas como backup: 1. Vá a Firewall Virutal IPs 2. Clique na aba CARP Settings 3. Marque Synchronize Enabled. 4. Em Synchronize Interface selecione SYNC 8. Clique em Save 9. Nós acabamos de configurar o firewall de backup 10. Na maquina PfSense primário precisamos habilitar a sincronização CARP, e configura-lo para atuar como firewall principal: 1. Vá em Firewall Virtual IPs 2. Clique na aba CARP Settings 3. Marque Synchronize Enabled 134
140 4. Na opção Synchronize Interface selecione SYNC 11. Marque a opção Synchronize rules 12. Marque a opção Synchronize nat 13. Marque a opção Synchronize Virtual IPs 14. Em Synchronize to IP digite o IP do servidor secundário 15. Em Remote System Password digite a senha do pfsense secundário 16. Clique em Save 17. Vamos agora configurar um VIP para interface WAN no PfSense primário 1. Vá a Firewall Virtual IPs 2. Clique na aba Virtual IPs 3. Clique no botão + para adicionar um novo VIP 4. Em type selecione CARP. 5. Em Interface selecione WAN 135
141 6. Em IP address digite um endereço de IP único da WAN que será usado durante todo o sistema, independente do sistema primário ou secundário estar funcionando. 7. Em Virtual IP Password digite uma senha 8. Em VHID Group deixe a opção 1 9. Em Advertising Frequency deixe a opção Em Description digite uma descrição qualquer 11. Clique em Save 12. Clique em Apply Changes 18. Vamos agora configurar um VIP para interface LAN no PfSense primário 01. Vá a Firewall Virtual IPs 02. Clique na aba Virtual IPs 03. Clique no botão + para adicionar um novo VIP 136
142 04. Em type selecione CARP. 05. Em Interface selecione LAN 06. Em IP address digite um endereço de IP único da LAN que será usado como gateway nós clientes da rede, independente do sistema primário ou secundário estar funcionando. 07. Em Virtual IP Password digite uma senha 08. Em VHID Group deixe a opção Em Advertising Frequency deixe a opção Em Description digite uma descrição qualquer 11. Clique em Save 12. Clique em Apply Changes 137
143 Como ele funciona... Aqui foi descrito como criar um PfSense Failover usando CARP. Os dois firewalls se sincronizam constantemente as regras, NAT e configurações de IPs, de modo que se o servidor principal pare ou por algum motivo fique off, o outro assume seu lugar automaticamente. O truque para a sincronização é a configuração do Advertising Frequency entre o IP virtual de cada interface. O servidor principal tem um Advertising Frequency definido como 0, então quando as configurações se sincronizam, a Advertising Frequency é incrementado para o servidor de backup (ou seja, o Advertising Frequency é 1). E é assim que o PfSense consegue distinguir as maquinas e as configurações de sincronização. Veja também... Criando NAT de port forward, capitulo 3, Configuração Geral Criando regras de firewall, capitulo 3, Configuração Geral Criando VIP, capitulo 5, Configurações Avançadas 138
144 7 Serviços e Manutenção Nesse capitulo, iremos abordar: Habilitando OLSR Habilitando PPPoE Habilitando RIP Habilitando SNMP Habilitando UPnP e NAT-PMP Habilitando OpenNTPD Habilitando Wake On Lan (WOL) Habilitando o log externo (syslog server) Usando o PING Usando o tracerout Fazer backup do arquivo de configuração Restaurando o arquivo de configuração Configurando o backup automático do arquivo de configuração Atualização do firmware do PfSense Introdução O PfSense oferece uma infinidade de serviços modernos e funcionais. Nesse capitulo vamos descrever os serviços mais usados em relação à manutenção, descrevendo a funcionalidade e como usar cada um deles. Na primeira metade desse capitulo vamos descrever como usar os serviços de rede mais populares, desde SNMP, até como usar o ping e o tracerout, descrevendo como usar essas ferramentas indispensáveis, que já vem embutidas na interface WEB do PfSense. Na outra metade do capitulo vamos descrever um serviço essencial que é o sistema de backup, restauração e atualização do PfSense. Habilitando o OLSR O OLSR (Optimized Link State Routing), é um protocolo de roteamento de IP, otimizando a rede sem fio. É quando uma rede é constituída por dois ou mais nós, mas o que torna esse sistema único é a maneira 139
145 que esses nós se comunicam uns com os outros. Os nós têm múltiplas rotas em toda a rede, aumentando a confiabilidade focando em falhas individuais em cada nó. Aqui vamos descrever como habilitar o serviço de OLSR (Optimized Link State Routing). Como fazê-lo Vá a Services OLSR 2. Marque Enable OLSR. 3. Escola a interface ( você pode selecionar varias interfaces com o botão Ctrl pressionado) 4. Clique em Save Como ele funciona... O OLSR pode ser configurado na WebGUI do PfSense. O OLSR é muito usado para aumentar a confiabilidade em serviços portáteis como acesso wireless, em serviços ad-hoc. Há mais... Habilitando o HTTPInfo nós permite visualizar e controlar o estado da nossa rede OLSR: 1. Vá a Services OLSR 2. Marque Enable HTTPInfo Plugin. 3. Digite em HTTPInfo Port a porta que você vai ter acesso ao HTTPInfo 4. Em Allowed Host(s). digite o ip que você vai querer ter acesso ao HTTPInfo 5. Em Allowed Host(s) Subnet digite a mascara de subrede desse ip 6. Clique em Save. 7. Abra qualquer navegador para ter acesso ao HTTPInfo: 140
146 Habilitando o PPPoE PPPoE significa Point-to-Point Protocol over Ethernet, eh um protocol de rede que permite encapsular Protocolo Point-to-Point (PPP) dentro dos frames da interface. PPPoE permite que dois clientes remotos possam ligar-se e passar dados entre si. Aqui vamos descrever como habilitar o PPPoE no PfSense. Como fazê-lo Vá a Services PPPoE Server 2. Clique no botão + para adicionar uma nova estancia de PPPoE. 3. Marque Enable PPPoE Server 4. Em Interface selecione a interface que você deseja configurar 5. Em Subnet Mask selecione a mascara de subrede 141
147 6. Em No. PPPoE Users selecione o numero máximo de clientes que irão se conectar 7. Em Server Address digite um IP não usado que o PfSense vai servir para os clientes se conectarem. 8. Em Remote Address Range definir de que faixa de IP vai ser usado para ter acesso ao PPPoE, levando em consideração o numero de clientes que você definiu na etapa Em Description digite uma descrição para seu serviço de PPPoE 10. Em DNS Servers digite um conjunto de DNS ou deixe em branco para aceitar o padrão 11. Em User(s), clique no botão + para adicionar um novo usuário. Digite o nome de usuário em username, a senha em password e o IP 12. Clique em Save. 13. Clique em Apply Changes 142
148 Como ele funciona... O serviço PPPoE é usado geralmente para preencher lacunas entre conexões PPP(dial-up) e conexões Ethernet (banda-larga). Muitos provedores de internet que usam sistema de dial-up e querem usar esse tipo de autenticação para serviço de banda larga (PPPoE) e esse sistema faz exatamente isso. Habilitando RIP RIP significa Routing Information Protocol, protocolo de roteamento dinânimo para redes locais e largas áreas de rede. Aqui vamos mostrar como habilitar o serviço de RIP no PfSense Como fazê-lo Vá á Services RIP 2. Marque Enable RIP 3. Selecione a interface ( você pode selecionar mais de uma interface clicando nelas com o ctrl pressionado) 4. Selecione a versão do RIP em RIP Version 5. Se você selecionou o a versão 2 então digite uma senha em RIPv2 password 6. Clique em Save Como ele funciona... O protocolo RIP foi o primeiro protocolo de roteamento dinâmico que foi criado tem o objetivo de compartilhar informações de roteamento entre hosts Unix. O protocolo RIP transmite uma tabela de roteamento completo em todas as interfaces ativas em um período de geralmente 30 segundos. 143
149 Habilitando o SNMP O SNMP significa (Simple Network Management Protocol), um protocolo padrão de SNMP permite que os clientes consultem informações de status de maquinas que também suportam SNMP. Aqui vamos descrever como habilitar o serviço de SNMP. Como fazê-lo Vá á Services SNMP 2. Marque Enable SNMP Daemon 3. Em Polling Port você pode selecionar uma porta, mas a padrão é UDP Em System Location digite o local que você está configurando 5. Em System Contact digite o nome de um contato, pode ser o seu mesmo. 6. Em Read Community String é uma senha comunitária que os clientes autorizados a consultar informações SNMP têm que digitar a partir de suas maquinas. 7. Em SNMP Modules selecione os módulos que você deseja consultar 8. Clique em Save Como ele funciona... Ao habilitar o SNMP no PfSense os administradores podem consultar informações sobre o sistema vital do cliente SNMP de sua escolha. 144
150 Há mais... SNMP traps, são enviados pelo SNMP (como o PfSense) para os servidores especificados quando ocorre um evento significativo, Servidores de SNMP trap, decidem como processa e manipular tal evento, como s de uma rede de administrador. SNMP Trap é útil para administradores de rede que precisam receber alertas rapidamente, ao invés de esperar pelo ciclo de pooling que tem um potencial muito longo então pode demorar muito. Especificando um SNMP trap no servidor PfSense: 1. Vá á Services SNMP 2. Marque Enable SNMP Traps 3. Digite o nome do seu SNMP trap em Trap Server Name 4. Digite a porta em Trap Server Port 5. Digite uma string em SNMP Trap String 6. Clique em Save Veja também... Documentação sobre SNMP Habilitando UPnP e NAT-PMP UPnP e NAT-PMP são implementações totalmente diferentes dos já vistos, ela automatiza o mapeamento de portas NAT. Esses protocolos são projetados para permitir que clientes possam configurar automaticamente as regras de port Forward de um roteador ou firewall. Um exemplo comum de permissão UPnP, quando um Xbox 360 possa se conectar ao Xbox Live. Geralmente os protocolos UPnP são usados em sistemas da Microsoft, enquanto o NAT-PMP são usados em sistemas da Apple. Aqui vamos descrever como habilitar o UPnP e NAT-PMP no PfSense. Como fazê-lo Vá á Services UPnP e NAT-PMP 145
151 2. Marque Enable UPnP & NAT-PMP 3. Marque ou Allow UPnP Port Mapping, ou Allow NAT-PMP Port Mapping ou os dois. 4. Em Interfaces selecione a interface (se quiser selecionar mais de uma selecione a outra pressionando o botão Ctrl) 5. Clique em Save Como ele funciona... Ativando o UPnP e NAT-PMP permite que dispositivos compatíveis possam funcionar corretamente em uma determinada rede sem a necessidade de definir alguma regra ou port Forwarding. Há mais... Há mais recursos opcionais disponíveis em serviços UPnP e NAT-PMP no PfSense: Em Maximum Download Speed você pode definir que velocidade de download seus dispositivos usando o serviço UPnP e NAT-PMP pode usar Em Maximum Upload Speed você pode definir que velocidade de upload seus dispositivos usando o serviço UPnP e NAT-PMP pode usar Em Override the WAN Address você pode especificar qual IP pode substituir a WAN Em Traffic Shaping Queue você pode colocar um shaping já configurado Marque Enable Log Packets para habilitar os logs usados por clientes UPnP e NAT-PMP Marcando o System Uptime você vai estar substituindo o uptime do serviço de UPnP e NAT-PMP pelo uptime do próprio sistema Marcando o Default Deny Access você vai estar negando todo o acesso vindo do UPnP e NAT-PMP 146
152 Em User specified permissions você pode especificar até quatro usuários com permissões. Aviso de Segurança Permitindo que dispositivos possam modificar suas regras de firewall, isso contem uma serie de implicações de segurança. O firewall da Microsoft o sistema ISA (TMG é o mais recente) não apoia esses protocolos. Se você precisar habilitar esses serviços esteja ciente dos riscos. Você teria que dedicar uma interface separada para esse serviço (o tráfego é arriscado de mais). Você pode ver nas imagens que eu só habilito o UPnP na interface publica. Essa interface se trata como insegura mas é útil para jogos e que clientes naveguem na web livremente. Documentação sobre UPnP no PfSense Artigo sobre UPnP no Wikipedia Artigo sobre NAT-PMP no Wikipédia Habilitando o OpenNTPD O serviço vai atender as solicitações OpenNTPD, data e hora para os clientes solicitarem. Aqui vamos descrever como ativar o serviço OpenNTPD no PfSense. Como fazê-lo Vá á Services OpenNTPD 2. Marque Enable para habilitar o serviço NTPD 3. Em Interface selecione a interface para usar o serviço NTPD (você pode marcar mais de uma interface) 147
153 4. Clique em Save Como ele funciona... O OpenNTPD é uma implementação open-source do serviço Network Time Protocol. Dispositivos dentro de sua rede podem agora consultar o firewall PfSense com NTP e receber dados no tempo exato partir dele. O cliente pode levar algumas horas para se tornar totalmente sincronizada com o serviço OpenNTPD, terá que ser paciente. Veja também... Documentação sobre o PfSense NTPD OpenNTPD.org Wikipedia OpenNTPD Article Habilitando o Wake-On-Lan (WOL) O PfSense pode enviar um pacote Wake-On-lan (também conhecido como pacote mágico) para que um dispositivo compatível possa ser acordado. Aqui vamos aprender como usar esse recurso no PfSense. Como fazê-lo Vá a Services Wake on LAN 2. Em Interface, selecione a interface onde estão os dispositivos que você deseja acordar. 3. Em MAC address digite o endereço MAC do dispositivo 148
154 4. Clique em Send Como ele funciona... O serviço Wake-on-LAN vai enviar pacotes mágicos para qualquer dispositivo ligado a rede que suportem esse recurso configurados para Wake-on-LAN. Quando um dispositivo configurado corretamente recebe um pacote magico, o computador vai ligar. Vale ressaltar que em computadores mais antigos, tem que ser configurado corretamente essa opção na bios e conectar um cabo especial na placa mãe. Há mais... Você pode armazenar o endereço MAC de todas as maquinas de sua rede: 1. Vá á Services Wake on LAN 2. Clique no botão + para adicionar um endereço de MAC para usar o serviço WOL. 3. Em Interface selecione a interface onde está ligado o dispositivo 4. Em MAC address digite o endereço MAC do computador ou dispositivo 5. Em Description digite uma descrição para o dispositivo 149
155 6. Clique em Save 7. Clique no MAC address do dispositivo que você quer mandar o pacote magico Enviar pacote magico a todos 150
156 Em vez de acordar cada cliente um por um, você pode acordar todos de uma só vez, basta clicar no botão Wake all clients Veja também... Documentação do PfSense Wake-on-LAN Artigo no Wikipedia Wake-on-LAN Habilitando log externo (syslog server) O syslog é um sistema padronizado para registrar todo o tipo de informação. Cliente syslog e implementações de servidores existem para todos os principais sistemas operacionais A maioria das distribuições Linux já executa o serviço syslog, de modo que configurar um servidor centralizado é só questão de decidir qual maquina usar, configurar uma maquina para executar dados do syslog na rede, e depois configurar todas as maquinas direcionando mensagens de syslog para o servidor. rede. Aqui vamos descrever como configurar o PfSense para escrever os logs para um servidor syslog na 151
157 Se preparando... Para ligar uma maquina Windows em um servidor de syslog centralizado, dê uma olhada no Servidor de Kiwi Syslog e log viewer Como fazê-lo Vá á Status System Logs 2. Clique na aba Settings. 3. Marque Enable syslog'ing to remote syslog server 4. Em remote syslog servers você pode digitar até três servidores de log remoto 5. Marque Everything para gravar todas as mensagens, ou marque apenas o que lhe interessar. 6. Clique em Save Como ele funciona... Ao escrever os logs para um servidor externo syslog, isso pode ter um efeito muito positivo sobre o PfSense já que não consome muita memoria e espaço em disco. Há mais... Se você não configurar um servidor de log externo, você tem as seguintes opções de registro interno disponíveis no PfSense: Mostrar logs de entrada em ordem inversa ( as mais recentes ficam no topo) Numero de entrada de logs Log de pacotes bloqueados na regra padrão Mostra logs de filtros Desabilita a gravação de arquivos de log do disco para memoria RAM 152
158 Veja também... Documentação de Configuração de Log no PfSense Artigo no Wikipédia sobre Syslog Kiwi Syslog Server and Log Viewer Usando o ping O PfSense habilita o serviço de ping que esta incluso em quase todos os sistemas operacionais. Isso pode ser útil para os administradores fazerem teste de ping do PfSense para outra maquina qualquer a partir de qualquer interface especificada. Aqui vamos descrever como configurar o serviço de ping do PfSense. Como fazê-lo Vá em Diagnostics Ping 2. Em Host digite o endereço de IP ou o host do qual você quer fazer o teste 3. Em Interface selecione a interface da qual o host ou o endereço de IP esta ligado 4. Em count selecione a quantidade de pacotes que você quer fazer o teste 153
159 5. Clique no botão Ping Como ele funciona... O utilitário ping permite aos administradores fazer teste de ping de qualquer interface, para qualquer interface. O ping é uma ferramenta indispensável e ter ela na interface web do PfSense é uma ótima função. Veja também... Documentação do PfSense sobre Ping e Host Artigo no Wikipédia sobre Ping Usando traceroute O PfSense usa o serviço de traceroute incluso em quase todos os sistemas operacionais. Isso pode ser útil para administradores que queiram realizar um traceroute ad-hoc 154
160 Vamos descrever agora como usar o utilitário traceroute do PfSense Como fazê-lo Vá á Diagnostics Traceroute 2. Em host digite o IP ou o host que você deseja traçar a rota 3. Em Maximum number of hops você pode especificar a quantidade de saltos que o traceroute pode fazer 4. Você pode marcar o Use ICMP se quiser 5. Clique no botão traceroute 155
161 Como ele funciona... O utilitário traceroute permite aos administradores realizar um rastreamento de rotas diretamente pela interface web. O traceroute pode levar um tempo longo para ser concluído. Você pode clicar em cancelar a qualquer momento. Veja também... Documentação do PfSense sobre Traceroute Artigo no Wikipédia sobre o Traceroute Fazer backup do arquivo de configuração Fazer backup dos arquivos de configuração é uma parte essencial de qualquer administrador. Aqui vamos descrever como fazer o backup do arquivo de configuração no PfSense. 156
162 Se preparando... Os arquivos de configuração do PfSense são armazenados em um formato de texto simples XML por padrão. Mas também tem a opção de ser criptografado. Como fazê-lo Vá á Diagnostics Backup/Restore 2. Clique na aba Backup/Restore 3. Em Backup área selecione All. Para obter o backup de toda a lista de opções, se você quiser fazer backup de algumas opções somente, confira a baixo a lista de Áreas de backup. 4. Deixe Do not backup package information desmarcado, se você marcar não será salvo a lista de pacotes instalados no seu PfSense. 5. Deixe Do not backup RRD data marcado, se você deixar desmarcado vai ser salvo todo o histórico de tráfego feito pelo PfSense, e com isso o arquivo vai ficar muito grande, e não é o caso. 6. Clique em Download configuration. 7. Selecione o local que você vai querer salvar. 157
163 Como ele funciona... O PfSense permite que um administrador possa transferir configurações feitas no PfSense inteiro em um arquivo único no formato XML, para qualquer lugar do teu computador ou rede. Há mais... Algumas senhas configuradas no PfSense vão aparecer no arquivo em texto puro! Se isso pode ser uma preocupação então na hora que você for fazer o backup, deixe marcada a opção Encrypt this configuration file, e então digite uma senha em Password. Áreas de backup Na versão atual do PfSense 2.0 que o livro foi lançado, as seguintes áreas para backup estão disponíveis: ALL Aliases DNS Forwarder DHCP Server Firewall Rules Interface IPSec NAT Package Manager PPTP Server Scheduled Tasks Syslog System System Tunables 158
164 SNMP Server Veja também... Documentação sobre configuração no PfSense sobre Backup/Restore re Restaurando o backup do arquivo de configuração Aqui vamos descrever como restaurar o arquivo de backup das configurações salvas. Se preparando... Restauração de arquivos de configuração é uma parte essencial na administração de um PfSense. Os arquivos de configuração são armazenados em um formato de texto simples XML padrão, mas também pode ser criptografado se for marcado no instante que for feito do backup. Como fazê-lo Vá a Diagnostics Backup/Restore 2. Clique na aba Backup/Restore 3. Em Restore área selecione All. Para obter a restauração de toda a lista de opções, se você quiser fazer a restauração de algumas opções somente, confira a baixo a lista de Áreas de restauração. 4. Clique em Restore configuration e espere o PfSense reiniciar. 159
165 Como ele funciona... O PfSense permite que um administrador possa restaurar as configurações feitas no PfSense a partir de um arquivo XML. Há mais... Se o arquivo de configuração foi criptografado na hora do backup, não esqueça de deixar marcada a opção Configuration file is encrypted, e digite a senha que foi digitada na hora do backup em Password Áreas de restauração Na versão atual do PfSense 2.0 que o livro foi lançado, as seguintes áreas para restauração estão disponíveis: ALL Aliases Captive Portal Captive Portal Vouchers DNS Forwarder DHCP Server Firewall Rules Interface IPSec NAT OpenVPN Package Manager PPTP Server Scheduled Tasks Static Routes Syslog System System Tunables 160
166 SNMP Server Traffic Shaper VLANs Wake on LAN Veja também... Documentação sobre configuração no PfSense sobre Backup/Restore re Configurando o backup automático do arquivo de configuração Aqui vamos descrever como configurar o backup automático do arquivo de configuração do PfSense Se preparando... Os usuários com uma assinatura de suporte PfSense pode configurar um backup automatizado para servidores PfSense externo usando suas credenciais de login no portal.pfsense.org. Atualmente somente assinantes pagos podem ter suporte a esse recurso. Como fazê-lo Vá a Diagnostics AutoConfigBackup 2. Clique na aba Settings 3. Digite seu nome de usuário em Subscription Username 4. Digite sua senha em Subscription Password 5. Confirme sua senha em Subscription Password 6. Digite sua senha criptografada em Encryption Password 7. Confirme sua senha criptografada Encryption Password 161
167 8. Clique em Save Como ele funciona... Backups automatizados podem agora ser armazenados de forma segura em um conjunto de servidores externos. Isso é conveniente quando que o administrador tenha um local externo para backup das configurações. Veja também... Documentação do PfSense sobre automatização de Configuração de Backup PfSense Portal Premium Atualização do firmware do PfSense Aqui vamos descrever como atualizar o firmware do PfSense. Se preparando... Temos que fazer o backup do PfSense antes de começar a atualização. Como fazê-lo Vá a System Firmware 2. Clique na aba Auto Update 162
168 3. Clique em Invoke Auto Upgrade 4. Observe o Status do download 5. Quando o download estiver completo, o PfSense ira atualizar e reiniciar 6. No primeiro login após o sistema ter reiniciado, vamos ser redirecionado para a página Package Manager. 163
169 Como ele funciona... O PfSense entrará em contato com um serviço web pra fazer a verificação do firmware mais recente, e baixar se necessário. Há mais... O PfSense também permite a atualização do firmware manual, que vamos descrever mais a baixo: 1. Fazer o download da versão mais recente em 164
170 2. Vá á System Firmware 3. Clique na aba Manual Update 4. Clique no botão Enable firmware upload 5. Clique em Browse para selecionar o local onde se encontra o arquivo baixado 165
171 6. Clique em Upgrade firmware Atualização em andamento Qualquer tentativa de acessar qualquer opção na hora que o sistema está sendo atualizado você será redirecionado para uma pagina igual que vamos mostrar logo a baixo: Atalho para atualização do sistema 166
172 Quando uma nova versão do PfSense fica disponível, uma notificação chamada Update available vai aparecer na tela Status Dashboard na pagina inicial do PfSense. Veja também... Fazer backup do arquivo de configuração Documentação do PfSense sobre atualização do Firmware 167
173 A Monitoramento e Registros Nesse capitulo, iremos abordar: Personalizar a tela de Status Dashboard Monitoramento de tráfego em tempo real Configurando SMTP de de notificação Vendo os logs do sistema Configurando um servidor de syslog externo Visualizações de gráficos RRD Visualizações de mapeamentos DHCP Monitoramento de filtro de pacotes com PfInfo Monitoramento de tráfego com PfTop Monitoramento da atividade do sistema Introdução Uma vez que o PfSense esta instalado e funcionando, é importante compreender a maneira correta de monitoramento do sistema. Aprender a usar o monitor de Status e ferramentas de medição construídas pelo próprio PfSense vai tornar a vida de um administrador muito mais fácil. Vamos descrever a seguir como monitorar e visualizar a maioria dos recursos disponíveis dentro do PfSense. Personalizar a tela de Status Dashboard Aqui vamos descrever como personalizar e configurar a tela de Status Dashboard Como fazê-lo Vá á Status Dashboard 2. Clique no botão + para adicionar um novo widget 168
174 3. Clique no botão chave para fazer configurações especiais do widget 4. Clique no botão minimizar para recolher o wiget, ou clique no botão fechar para remover o widget da tela. 5. Você pode clicar no titulo do widget e arrastar para mudar sua posição na tela 169
175 6. Clique em Save Settings 7. Clique em Apply Changes Como ele funciona... O painel de status entre muitos outros novos recursos são adicionados no PfSense 2.0. Personalizando o painel para mostrar as informações que somente lhe interessa, a administração fica muito mais fácil. Se configurado corretamente, o painel de status fica sendo a única pagina que você precisa acessar para realizar muitas tarefas comuns. Há mais... Muito dos widgets disponíveis no painel de status tem um item correspondente a ele no menu Status Monitoramento de tráfego em tempo real Vamos configurar o monitoramento de entrada e saída de tráfego em tempo real no PfSense. Como fazê-lo Vá a Status Traffic Graph 2. Em Interface selecione a interface que você deseja monitorar 170
176 Como ele funciona... O Traffic graph mostra o tráfego de informações em tempo real do que passa da interface para interface. E a tabela a direito do tráfego mostra as informações de tráfego de cada dispositivo conectado que esteja usando na rede. Seu navegador deve suportar gráficos SVG, eu recomendo o Mozilla Firefox que já vem instalado de padrão no navegador, mas se você preferir usar outro navegador você deve instalar o Adobe SVG Viewer. Veja também... Documentação sobre Traffic Graph no PfSense Adobe SVG Viewer Configurando SMTP de de notificação Aqui vamos descrever como configurar o SMTP para envio de s de notificação Se preparando... Enviar s do PfSense requer acesso a um servidor SMTP Como fazê-lo Vá á System Advanced 2. Clique na aba Notifications 3. Digite o IP ou o host do servidor de SMTP em IP Address of the server 171
177 4. Digite a porta que o servidor de SMTP usa em SMTP Port of the server 5. Digite o que você esta usando como remetente em From address 6. Digite o que você quer mandar as notificações em Notification address 7. Digite o nome de usuário que você usa para logar no de remetente em Notification auth username 8. Digite a senha que você usa para logar no usuário digita a cima em Notification auth password 9. Clique em Save 10. Clique em Apply Changes Como ele funciona... O PfSense enviará uma notificação por utilizando as informações fornecidas para notificar os administradores de eventos significativos do sistema Há mais... Uma vez que nossas configurações são salvas, um teste de é enviado automaticamente. Se você não receber o teste de , verifique os logs do sistema para maiores informações. Vá á Status System Logs na aba System procure por algo relacionado a s. 172
178 Vendo os logs do sistema Aqui vamos descrever como visualizar os logs de evento do PfSense Como fazê-lo Vá á Status System logs 2. Clique na aba Settings 3. Deixe marcado Show log entries in reverse order (newest entries on top). 4. Clique em Save 5. Clique na aba DHCP por exemplo para visualizar eventos mais recentes do DHCP Como ele funciona... O PfSense registra eventos significativos e registra-los internamente. O menu System logs permite ver os logs gerados para ajudar a solucionar uma variedade de questões administrativas. Nas seguintes seções descrevem como configurar os pontos de vista alternativos fornecidos pelo log de eventos do firewall. Há mais... As informações de log são coletadas e exibidas para os seguintes serviços: System Firewall DHCP 173
179 Portal Auth IPSec PPP VPN Load Balancer OpenVPN OpenNTPD Se o registro dos logs é feito em um servidor de log externo, não haverá nenhum dado nessa página. Exibição normal de log do Firewall Essa é a tela normal de visualização de log do Firewall Exibição dinâmica de log do Firewall Essa é a tela dinâmica de visualização de log do Firewall 174
180 Exibição em resumo de log do Firewall Essa é a tela de resumo de visualização de log do Firewall Veja também... Configurando um servidor de syslog externo Configurando um servidor de syslog externo 175
181 Configurando um servidor de syslog externo Aqui vamos descrever como configurar o PfSense para usar um servidor de registro de log externo Se preparando... Para configurar o PfSense pra usar um servidor de registro de log externo, nós vamos precisar de um servidor separado para fazer o registro dos logs. Aqui vamos descrever como configurar um syslog em cada um dos principais sistemas operacionais. Como fazê-lo Vá á Status System Logs 2. Clique na aba Settings 3. marque a opção Enable syslog'ing to remote syslog server 4. Digite o IP do seu servidor externo 5. Marque os tipos de eventos que devem ser gerados no servidor externo 6. Clique em Save 7. Clique em Apply Changes Como ele funciona... Uma vez configurado o PfSense enviará os logs dos eventos a um servidor externo, em vez de registralos localmente. Essa é uma ótima opção se você quiser salvar mais recursos de logs em uma maquina com capacidade de HD maior. Executando um serviço de syslog em um Linux/Mac OS Quase todas as distribuições Linux e MAC já incluem um serviço syslogd. Visite a pagina seguinte para mais informações 176
182 Executando um serviço de syslog em um Windows Fazendo download e instalando um Servidor Kiwi Syslog para Windows em Visualizações de gráficos RRD Aqui vamos descrever como exibir gráficos RRD no PfSense. Como fazê-lo Vá á Status RRD Graphs 2. Clique na aba System 3. Você pode selecionar o Grafs, Style e Period de acordo com o tipo de dados que você quer exibir Como ele funciona... O PfSense registra os dados do sistema usando o conjunto de ferramentas open-source RRD para apresentar os dados graficamente na tela. Analisar os dados do sistema usando os gráficos RRD e uma ótima maneira de monitorar e solucionar problemas administrativos. O PfSense pode analisar e exibir as seguinte informações no formato RRD 177
183 System Na aba System exibe informações de hardware como: Throughput States Process Memory All Traffic Na aba Traffic exibe informações sobre a rede de transferência para cada uma das interfaces do sistema. Outbound WAN LAN Optional Interface(s) OpenVPN IPSec 178
184 All Packets Na aba Packets exibe informações de pacotes de transferência para cada umas das interfaces Outbound WAN LAN Optional Interface(s) OpenVPN IPSec All 179
185 Quality Na aba Quality reúne e exibe informações de perda de pacotes para cada uma das interfaces do sistema Outbound WAN Gateway(s) All 180
186 VPN Na aba VPN vai exibir as informações de transferência VPN OpenVPN IPSec PPTP All 181
187 Personalizado Escolha qualquer gráfico anterior para editar cada etapa 182
188 Visualizações de mapeamentos DHCP Aqui vamos descrever como visualizar os mapeamentos DHCP do servidor Como fazê-lo Vá á Status DHCP Leases 2. Por padrão só aparecem mapeamentos, ativos e estáticos, para ver os mapeamentos expirados, clique no botão Show all configured leases 183
189 Como ele funciona... Quando for configurado com um servidor DHCP, o PfSense libera IP para qualquer dispositivo que fizer a requisição. Essa pagina é a primeira pagina que tem que ser vista quando não se consegue aderir um IP. Adicionando um mapeamento de DHCP estático Se você ver um IP na lista de IPs e quer cadastra-lo para sempre esse dispositivo pegar o mesmo IP, então temos que adicionar um mapeamento estático, para fazer isso tem que clicar no botão +. Envio de Wake on LAN no mapeamento Se vermos um dispositivo e queremos enviar um pacote mágico, podemos adicionar no mapeamento clicando no botão w. Gerenciando os serviços Aqui vamos descrever como gerenciar os serviços em execução no PfSense. 184
190 1. Vá á Status Services 2. Se quiser reiniciar um serviço clique no botão Restart 3. Se quiser parar o serviço clique no botão Stop 4. Se quiser startar um serviço clique no botão Start 185
191 Como ele funciona... O PfSense gerencia os pacotes de serviços, podendo ser interrompidos e iniciados de forma independente, é útil quando um administrador quiser reiniciar um serviço ou derrubar todo o sistema. Monitoramento de filtro de pacotes com PfInfo Aqui vamos descrever como exibir informações de filtro de pacotes no PfSense Como fazê-lo Vá á Diagnostics PfInfo 186
192 Como ele funciona... Você encontrará as seguintes informações apresentadas sobre filtro de pacotes Estatísticas sobre as interfaces Tabela de estatísticas do estado Configurações de limites de velocidade Estado das regras Contadores de bytes Monitoramento de tráfego com pftop Aqui vamos descrever como exibir o fluxo de tráfego em tempo real com o utilitário pftop Como fazê-lo... Administradores de sistema podem usar o utilitário PfTop para monitorar o tráfego em tempo real da banda em uso. Os dados apresentados por esse utilitário podem ser apresentados por qualquer um dos seguintes critérios: Bytes Age Destination Destination Port Expiration None 187
193 Peak Packets Rate Size Source Port Source Veja também... Documentação sobre Monitoramento de banda usage%3f#pftop Monitoramento da atividade do sistema Aqui vamos descrever como monitorar atividades do sistema PfSense Como fazê-lo Vá á Diagnostics System Activity Como ele funciona... Os administradores podem monitorar o sistema central do PfSense, incluindo os seguintes recursos: O ID do ultimo processo (PID) 188