Firehol: iptables para seres humanos (Arch)

Em primeiro lugar, todos os créditos vão para @YukiteruAmano, porque esta postagem é baseada no tutorial você postou no fórum. A diferença é que vou me concentrar em arco, embora provavelmente funcione para outras distros baseadas em sistema.

O que é Firehol?

fogueira, é um pequeno aplicativo que nos ajuda a gerenciar o firewall integrado ao kernel e sua ferramenta iptables. Firehol, carece de interface gráfica, toda configuração deve ser feita através de arquivos de texto, mas apesar disso, a configuração ainda é simples para usuários novatos, ou poderosa para quem busca opções avançadas. Tudo o que Firehol faz é simplificar a criação de regras de iptables tanto quanto possível e habilitar um bom firewall para nosso sistema.

Instalação e configuração

Firehol não está nos repositórios oficiais do Arch, então vamos nos referir a AUR.

yaourt -S firehol
Em seguida, vamos para o arquivo de configuração.

sudo nano /etc/firehol/firehol.conf

E nós adicionamos as regras lá, você pode usar estas.

Continue ativando Firehol para cada inicialização. Muito simples com o systemd.

sudo systemctl enable firehol

Começamos Firehol.

sudo systemctl start firehol

Finalmente, verificamos se as regras do iptables foram criadas e carregadas corretamente.

sudo iptables -L

Desativar IPv6

Como o firehol não controla tabelas ip6 e uma vez que a maioria de nossas conexões não tem suporte para IPv6, minha recomendação é desativá-lo.

En arco nós adicionamos ipv6.disable = 1 para a linha do kernel no arquivo / etc / default / grub


...
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="rw ipv6.disable=1"
GRUB_CMDLINE_LINUX=""
...

Agora nós regeneramos o grub.cfg:

sudo grub-mkconfig -o /boot/grub/grub.cfg

En Debian basta com:

sudo echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Philip dito

    Não entendo. Você segue o tutorial e já tem o Firewall rodando e bloqueou todas as conexões? Outra coisa Um tutorial para Arch é complexo, por exemplo, eu nunca usei sudo ou yaourt Firewall. No entanto, é compreendido. Ou talvez alguém novo escreva yaourt e obterá um erro. Para Manjaro, é mais correto.

    1.    yukiteru dito

      Como você diz @felipe, seguindo o tutorial e colocando no arquivo /etc/firehol/firehol.conf as regras fornecidas por @cookie na pasta, você já terá um firewall simples para proteger o sistema em um nível básico. Esta configuração funciona para cada distro onde você pode colocar Firehol, com a peculiaridade de cada distro ele lida com seus serviços de maneiras diferentes (Debian através do sysvinit, Arch com systemd) e quanto à instalação, todos sabem o que eles têm, no Arch você deve use os repositórios AUR e yaourt, no Debian os oficiais são suficientes para você, e em muitos outros, basta pesquisar um pouco nos repositórios e adaptar o comando de instalação.

  2.   ci dito

    Obrigado, eu anoto.

  3.   Configuração dito

    Tudo isso é muito bom ... mas falta o mais importante; Você tem que explicar como as regras são criadas !!, o que significam, como criar novas ... Se isso não for explicado, o que você coloca é de pouca utilidade:

    1.    yukiteru dito

      Criar novas regras é simples, a documentação do firehol é clara e muito precisa em termos de criação de regras personalizadas, portanto, ler um pouco tornará mais fácil para você personalizá-lo e adaptá-lo às suas necessidades.

      Acho que a razão inicial para a postagem do @cookie como a minha no fórum foi dar aos usuários e leitores uma ferramenta que lhes permite dar aos seus computadores um pouco mais de segurança, tudo em um nível básico. O resto fica à deriva para você se adaptar às suas necessidades.

    2.    biscoito dito

      Se você ler o link do tutorial do Yukiteru, vai perceber que a intenção é divulgar o aplicativo e a configuração de um firewall básico. Esclareço que meu post era apenas uma cópia focada no Arch.

  4.   Maacu dito

    E isso é 'para humanos'? o_O
    Experimente Gufw no Arch: https://aur.archlinux.org/packages/gufw/ >> Clique em Status. Ou ufw se preferir o terminal: sudo ufw enable

    Você já está protegido se for um usuário normal. Isso é 'para humanos' 🙂

    1.    elav. dito

      Firehol é realmente um front-end para IPTables e se o compararmos com o último, é bastante humano 😀

    2.    yukiteru dito

      Eu considero ufw (Gufw é apenas uma interface dele) uma opção ruim em termos de segurança. Motivo: por mais regras de segurança que escrevi no ufw, não pude evitar que nos testes do meu firewall, tanto via web quanto aqueles realizados com nmap, serviços como avahi-daemon e exim4 aparecessem abertos, e apenas um O ataque "stealth" foi o suficiente para conhecer as menores características do meu sistema, kernel e serviços que ele rodava, algo que não aconteceu comigo usando o firewall de Firehol ou Arno.

      1.    moela dito

        Bom, não sei de vocês, mas como escrevi acima, eu uso Xubuntu e meu firewall vai com GUFW e passei em TODOS os testes do link que o autor colocou sem problemas. Tudo furtivo. Nada aberto. Então, na minha experiência ufw (e portanto gufw) eles são ótimos para mim. Não critico o uso de outros modos de controle de firewall, mas o gufw funciona perfeitamente e oferece ótimos resultados de segurança.

        Se você tiver qualquer teste que possa gerar vulnerabilidades em meu sistema, diga-me quais são e terei o prazer de executá-los aqui e informar os resultados.

        1.    yukiteru dito

          Abaixo comento algo sobre o assunto ufw, onde digo que o erro que vi em 2008, usando Ubuntu 8.04 Hardy Heron. O que eles já corrigiram? O mais provável é que seja esse o caso, então não há motivo para se preocupar, mas mesmo assim, isso não significa que o bug estava lá e eu pudesse mostrar, embora não fosse uma coisa ruim morrer, eu só parou os demônios avahi-daemon e exim4, e o problema já foi resolvido. O mais estranho de tudo é que apenas esses dois processos tiveram o problema.

          Mencionei o fato como uma anedota pessoal, e pensei da mesma forma quando disse: «Eu considero ...»

          Saudações 🙂

    3.    moela dito

      +1

  5.   costales dito

    @Yukiteru: Você tentou no seu próprio computador? Se você estiver olhando do seu PC, é normal que você consiga acessar a porta de serviço X, pois o tráfego que está bloqueado é o da rede, não o localhost:
    http://www.ubuntu-es.org/node/140650#.UgJZ3cUyYZg
    https://answers.launchpad.net/gui-ufw/+question/194272

    Caso contrário, relate um bug 🙂
    Uma saudação

    1.    yukiteru dito

      De outro computador usando uma rede Lan no caso do nmap, e via Web usando esta página https://www.grc.com/x/ne.dll?bh0bkyd2Usando a opção de portas personalizadas, ambos concordaram que o avahi e o exim4 estavam ouvindo da rede, embora o ufw estivesse com o bloqueio configurado.

      Aquele pequeno detalhe do avahi-daemon e exim4 resolvi simplesmente desabilitando os serviços e pronto ... Não relatei um bug naquele momento, e acho que não faz sentido fazê-lo agora, porque isso estava em 2008, usando Hardy.

      1.    moela dito

        2008 foi 5 anos atrás; de Hardy Heron a Raring Ringtail, existem 10 * buntus. Aquele mesmo teste no meu Xubuntu, feito ontem e repetido hoje (agosto 2013) dá perfeito em tudo. E eu só uso UFW.

        Repito: você tem algum teste adicional para fazer? Com prazer faço isso e relato o que sai deste lado.

        1.    yukiteru dito

          Faça uma varredura SYN e IDLE em seu PC usando o nmap, que lhe dará uma idéia de quão seguro é seu sistema.

          1.    moela dito

            O nmap man tem mais de 3000 linhas. Se você me der os comandos para executar com prazer, farei isso e relatarei o resultado.

          2.    yukiteru dito

            Hmm, eu não sabia sobre as 3000 páginas de manual do nmap. mas zenmap é uma ajuda para fazer o que eu digo, é um front-end gráfico para nmap, mas ainda a opção para varredura SYN com nmap é -sS, enquanto a opção para varredura ociosa é -sI, mas o comando exato I será.

            Faça o scan de outra máquina apontando para o ip da sua máquina com ubuntu, não faça do seu próprio pc, porque não é assim que funciona.

          3.    yukiteru dito

            RI MUITO!! Meu erro é de cerca de 3000 páginas, quando eram linhas 😛

  6.   Jesus Israel Perales Martínez dito

    Não sei mas acho que uma GUI para que no GNU / Linux gerencie o firewall seria um tanto prudente e não deixar tudo descoberto como no ubuntu ou tudo coberto como no fedora, você deve ser um bom xD, ou algo para configurar o malditas alternativas assassinas xD hjahjahjaja Tem pouco para lutar comigo com eles e o jdk aberto, mas de qualquer maneira você também tem que manter o princípio do beijo

  7.   Maurício dito

    Graças a todos os obstáculos que aconteceram no passado com o iptables, hoje consigo entender o niverl raw, ou seja, falar diretamente com ele conforme sai da fábrica.

    E não é algo tão complicado, é muito fácil de aprender.

    Se o autor da postagem permitir, postarei um trecho do script de firewall que uso atualmente.

    ## Limpeza de regras
    iptables-F
    iptables-X
    tabelas de ip -Z
    iptables -t nat -F

    ## Definir política padrão: DROP
    iptables -P ENTRADA QUEDA
    iptables -P SAÍDA DROP
    iptables -P FORWARD DROP

    # Operar em localhost sem limitações
    iptables -A INPUT -i lo -j ACEITAR
    iptables -A SAÍDA -o lo -j ACEITAR

    # Permitir que a máquina vá para a web
    iptables -A INPUT -p tcp -m tcp –sport 80 -m conntrack –ctstate RELACIONADO, ESTABELECIDO -j ACEITAR
    iptables -A SAÍDA -p tcp -m tcp –dport 80 -j ACEITAR

    # Já também para proteger sites
    iptables -A INPUT -p tcp -m tcp –sport 443 -m conntrack –ctstate RELACIONADO, ESTABELECIDO -j ACEITAR
    iptables -A SAÍDA -p tcp -m tcp –dport 443 -j ACEITAR

    # Permitir ping de dentro para fora
    iptables -A SAÍDA -p icmp -icmp-type echo-request -j ACEITAR
    iptables -A INPUT -p icmp -icmp-type echo-reply -j ACEITAR

    # Proteção para SSH

    #iptables -I INPUT -p tcp –dport 22 -m conntrack –ctstate NOVO -m limite –limit 30 / minuto –limit-burst 5 -m comentário –comment "SSH-kick" -j ACEITAR
    #iptables -A INPUT -p tcp -m tcp –dport 22 -j LOG –log-prefixo "TENTATIVA DE ACESSO SSH:" –log-level 4
    #iptables -A INPUT -p tcp -m tcp –dport 22 -j DROP

    # Regras para amule permitir conexões de saída e entrada na porta
    iptables -A INPUT -p tcp -m tcp –dport 16420 -m conntrack –ctstate NOVO -m comentário –comentar "aMule" -j ACEITAR
    iptables -A SAÍDA -p tcp -m tcp –sport 16420 -m conntrack –ctstate RELACIONADO, ESTABELECIDO -m comentário –comentário "aMule" -j ACEITAR
    iptables -A INPUT -p udp –dport 9995 -m comentário –comentar "aMule" -j ACEITAR
    iptables -A SAÍDA -p udp –sport 9995 -j ACEITAR
    iptables -A INPUT -p udp –dport 16423 -j ACEITAR
    iptables -A SAÍDA -p udp –sport 16423 -j ACEITAR

    Agora, uma pequena explicação. Como você pode ver, existem as regras com a política DROP padrão, nada sai e entra no time sem você avisar.

    Em seguida, são passados ​​os fundamentos, o localhost e a navegação para a rede de redes.

    Você pode ver que também existem regras para ssh e amule. Se eles considerarem bem como são feitos, eles podem fazer as outras regras que quiserem.

    O truque é ver a estrutura das regras e aplicá-las a um tipo específico de porta ou protocolo, seja udp ou tcp.

    Espero que você possa entender isso que acabei de postar aqui.

    1.    biscoito dito

      Você deveria fazer um post explicando isso 😉 seria ótimo.

  8.   @Jlcmux dito

    Tenho uma pergunta. Caso você queira rejeitar conexões http e https eu coloco:

    servidor "http https" cair?

    E assim por diante com qualquer serviço?

    obrigado