Baixe o app para aproveitar ainda mais
Prévia do material em texto
001 - pfSense - Instalação e configuração padrão VERSÃO DOC DATA AUTOR OBS 1 03/05/2018 Felipe Melquíades Criação documento Objetivo: Documentar a instalação e configuração padrão do pfSense para a rede de internet para clientes. Topologia de rede padrão A rede não precisa ter, necessariamente, um switch. Pode ser um roteador Wi-Fi direto. A topologia acima é baseada no cenário atual, mas a distribuição da LAN pode se dar de qualquer forma, pois tudo irá passar pelo pfSense. 1. Instalação do sistema operacional Criar uma mídia de instalação do pfSense e dar boot na máquina que será instalado o sistema. Ao efetuar o boot, será apresentada a seguinte tela: Teclamos Enter para iniciar o setup. Aguarde até chegar na tela abaixo: As configurações padrões nos servem, portanto escolha a quarta opção. Vamos com a opção Quick/Easy Install, pois queremos a instalação padrão. Lembrete de que essa opção irá apagar tudo do HD! Aguardar a instalação. Vamos escolher o Standard Kernel, que nos dará um console quando conectado com monitor e teclado. Escolha Reboot para reiniciar. Aguarde ou dê Enter para bootar no pfSense Essa é a tela customizada do console do pfSense. Por aqui iremos configurar a rede, para então podermos usar o painel de administração web. Note que ele já lista as interfaces de rede e seus IPs. 2. Configuração da rede A dica é deixar o sinal de internet na porta primária do computador, ou seja, a onboard, no caso de um desktop. Como o sinal de internet está isolado e deixamos o modem com DHCP ativado, a placa WAN irá receber um IP. Estando no padrão, deverá ser 172.16.0.X na WAN e 192.168.1.1 na LAN. No exemplo acima está 10.0.2.15 pois esse é um DHCP criado internamente no VirtualBOX, onde instalei a VM. Escolha a opção 2 para configurar os IPs das placas de rede. Escolha 1 para configuramos a WAN. Serão solicitadas informações na ordem dos números amarelos acima. Preencha conforme abaixo: 1 - Pergunta se deve usar IP automático ou não. Digite n para dizer que não, pois queremos fixar. 2 - Pergunta qual IP queremos fixar. Escolha 172.16.0.254 3 - Pergunta a máscara de rede. Escolha 24 4 - Pergunta o IP do gateway, que é o IP que deixamos no modem: 172.16.0.1 5 - Pergunta se quer usar DHCP para o IPv6, digite n para dizer que não. 6 - Pergunta se quer setar um IPv6 fixo. Dê um Enter para deixar em branco. 7 - Pergunta se quer reverter o protocolo do painel web para HTTP. Digite n para dizer que não, pois queremos que permaneça como HTTPS. Por fim, ele irá alterar o IP e confirmar a mudança. Dê um enter para voltar ao menu principal. Entre novamente na opção 2 do menu, pois agora vamos alterar a LAN. 1 - Digite 2, pois agora vamos alterar a LAN 2 - Digite 192.168.7.1, que é nosso padrão para as redes internas de clientes. 3 - Digite 24, que é a máscara de rede. 4 - Deixe em branco pois já temos gateway definido na WAN. 5 - IPv6, também em branco. 6 - Pergunta se queremos ativar o servidor DHCP na LAN. Digite y para dizer que sim. 7 - Pede o IP inicial do pool DHCP: 192.168.7.20 8 - Pede o IP final do pool DHCP: 192.168.7.240 9 - Digite n para não reverter para HTTP. Pronto, LAN configurada. Confirme com Enter. Confira os novos IPs atribuídos na WAN e LAN. 3. Configurações de segurança Para fazer a personalização do sistema, utilizar o painel de administração web. Para tanto, deve-se conectar na rede LAN. Deverá receber um IP dentro do range definido em nosso DHCP anteriormente. Entrar no portal web. Pode acessá-lo pelo navegador utilizando o endereço LAN do servidor, https://192.168.7.1, e a tela abaixo será apresentada: Clique no logotipo do pfSense no topo para sair do wizard. Essa é a página principal da administração. Vamos começar alterando a senha do admin. Acesse o menu System > User Manager. https://192.168.7.1/ Agora vamos para as configurações avançadas. Entre no menu System > Advanced. Preencha conforme abaixo. DNS Rebind Check - Proteção contra-ataques de DNS Rebinding. Para usar essa opção, seria necessária configuração nos servidores DNS que encaminham para o site. Como não vamos usar acesso remoto por IP fixo, marcamos para desativar. Se ficar desmarcado, impedirá o acesso remoto por DDNS. Browser HTTP_REFERER enforcement - Marcamos essa opção para desativar essa verificação, que também impede acesso remoto por DDNS. Secure Shell Server - Marcamos para ativar o SSH, pois assim será possível acessar o console do servidor remotamente. SSH port - Definimos 50222 como porta SSH. Por fim, marque para proteger a console física com senha e salve. Agora vá no menu System > General Setup Definimos o Hostname e domínio no padrão acima. Altere o hostname conforme a loja, no padrão que temos usados (veja lista atual). Defina a Timezone acima. 4. Instalação e configuração do Squid Agora, vá no menu System > Package Manager > Available Packages Pesquise por squid e instale o respectivo pacote. Agora, vamos configurar o squid pelo menu Services > Squid Proxy Server. Marque para ativar o squid e deixe selecionada a interface LAN. Agora, marque para usar o modo transparente, e novamente selecione a LAN. Marque para habilitar o log de acesso. Embaixo, defina o caminho como no print. Por último, defina 185 dias para manter o log. 5. Liberar acesso externo Vamos, agora, liberar a entrada de conexões externas nas portas 443 e 50222, que são as portas de acesso ao portal e ao SSH. Acesse o menu Firewall > Rules. Clique no Add para adicionar uma regra. Deixe tudo no padrão, exceto os destaques acima. Em Destination port range coloque o range de portas a liberar. Como é somente uma, repita ou deixe em branco o segundo campo. Em Description, forneça breve descrição do que se trata. Faça uma regra para cada porta: 443 (HTTPS) e 50222 (SSH Externo) 6. Ativação do Captive Portal Vamos, agora, ativar e configurar o Captive Portal, que é a página que aparecerá pedindo cupom e CPF do usuário. Vá no menu Services > Captive Portal. Clique em Add para adicionarmos uma zona. OBS.: é possível criar diversos portais em um mesmo servidor. Cada portal pode ser linkado a uma interface de rede. Usuários provenientes de cada interface passarão pelo seu respectivo portal. Preencha conforme a necessidade; Acima, ao marcar para ativar o portal, será carregado o resto das configurações. Selecione a LAN como interface de rede desse portal. Mais abaixo, preencha conforme acima. No primeiro campo, definimos a página para a qual o usuário será redirecionado após autenticar no portal. No segundo, definimos o caminho da página à qual o usuário será redirecionado quando o seu MAC estiver bloqueado. Preencha conforme acima pois depois enviaremos a imagem para o servidor. No terceiro, marcamos para definir que somente o dispositivo do último login efetuado será aceito. Isso também valerá para os cupons e significa que, consequentemente, será possível utilizar apenas 1 dispositivo por cupom: aquele que você usou o cupom por último. Mais abaixo, marque a opção do meio em Authentication para indicar que desejamos usar cupons. Desmarque o checkbox embaixo, para permitir que qualquer usuário autentique no portal. Por fim, carregue as páginas. Portal page contents: página apresentada quando o usuário conecta na rede e tenta acessar a WAN por qualquer motivo. Por exemplo: acessar a internet. Carregue o arquivo portal_home.html Auth error page contents: apresentada quando erram o cupom, ou o mesmo está vencido. Carregue o arquivo portal_erro.html Feitoisso, salve as configurações. Vamos, agora, enviar arquivos personalizados para o servidor. Os arquivos abaixo referenciados se encontram na mesma pasta citada anteriormente. Utilize o WinSCP para fazer o acesso. Você deve acessar pela LAN através do IP 192.168.7.1. Lembre que a porta de acesso é a 50222. Envie todos para a pasta /etc/local/captiveportal ● Pasta css → pasta com arquivos de estilo ● arquivo mac.html → página de exibição de MAC bloqueado ● imagem logo-savar.png → logotipo da Savar ● arquivo index.php (aceite substituir) → modificado com verificação e log do CPF. Por fim, abra o servidor via SSH, com o PuTTY, também porta 50222. Rode o comando abaixo: touch /var/log/acesso.log 7. Configuração dos cupons Nas configurações do captive portal, acesse a aba Vouchers. Aqui vamos configurar os parâmetros para o algoritmo de geração de cupons (vouchers). Marque o checkbox para ativar. Para gerar cupons, o sistema utiliza uma chave RSA, um set de caracteres para usar, mais 3 parâmetros. Quanto maior o tamanho da chave, da quantidade de caracteres possíveis e quanto maior o tamanho dos parâmetros, maior será o código do cupom. A fim de simplificar a digitação, usaremos uma chave RSA de 31 bits, caracteres hexadecimais e os parâmetros do print a seguir. Isso resultará em cupons com, em média, 7 caracteres. Para gerar uma chave, acesse o servidor via SSH. Lembre que a porta é 50222. 1. Rode o comando openssl genrsa 31 > key.private para criar uma chave privada dentro do arquivo key.private. 2. Rode o comando openssl rsa -pubout < key.private > key.public para obter a chave pública da chave privada e salvar no arquivo key.public 3. Rode o comando cat key.public para imprimir na tela a chave pública. Cole ela no campo Voucher Public Key no pfSense. 4. Rode o comando cat key.private para imprimir na tela a chave pública. Cole ela no campo Voucher Private Key no pfSense. Coladas as chaves, defina o Character set e os outros campos conforme acima. O restante pode ficar com o padrão que estiver. Salve o portal. Se necessário siga a doc sobre criação de cupons, referenciada na introdução, para criar os mesmos. 8. Configuração do DDNS Como os links que utilizamos para a redes são com IP dinâmico, ou seja, o IP externo é alterado periodicamente, temos que utilizar um servidor de DDNS para acessar o portal de forma remota. Basicamente, é um servidor DNS com ferramentas para atualização automática do IP de certo domínio. No caso, criamos um domínio gratuito no DuckDNS e programamos o pfSense para atualizar o IP do mesmo sempre que ele muda. Acesse o www.duckdns.org, crie uma conta e um domínio no padrão atual. Depois, vá na página install do site, marque pfSense, escolha o domínio e copie o link que irá aparecer no fim da página. Esse link, quando acessado, atualiza o IP de nosso servidor para o domínio especificado no servidor do DuckDNS. O IP é passado pela variável %IP% que devolve o IP atual do pfSense. Acesse o menu Services > Dynamic DNS http://www.duckdns.org/ Selecione a opção Custom, cole o link em Update URL e digite OK em Result Match. O OK é o retorno do DuckDNS avisando que o update foi bem-sucedido.
Compartilhar