Apache boqueado!!

1. Apache boqueado!!

Luciano Marcos Paes
lmpaes

(usa Debian)

Enviado em 26/04/2018 - 19:52h

Pessoal, não trabalho na área de TI mas há muito tempo sou simpatizante do mundo linux e decidi que chegou o momento de montar um servidor aqui em casa. (Debian 9 seco, só linha de comando)
Configurei um firewall a partir das várias pesquisas que fiz aqui no fórum.
Configurei a internet e coloquei samba no ar, inclusive compartilhando videos pelo KODI, muito show.
Acabo de instalar o apache, squid e sarg.
Peço a gentileza de verificarem meu firewall.sh pois não estou conseguindo acessar a página que indica que o apache esta funcionando certinho.
A partir de uma máquina windows na rede interna, abro o navegadorr e digito o ip 127.0.0.1 ou 192.168.0.1 que é o gateway porém da a mensagem de conecção recusada. Acredito que o problema esteja no meu firewall, o que vocês acham?
#!/bin/bash
# /usr/local/bin/firewall.sh
# Regra do Firewall
# Por Luciano Marcos Paes em 23-01-2018

#---------------------------------------------------------
# limpar todas as regras existentes
iptables -F
iptables -t nat -F
iptables -t mangle -F
#---------------------------------------------------------
# copartilhar/recebe a internet
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o enp1s0 -j MASQUERADE
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
#----------------------------------------------------------
# bloqueia ataques spoofing, DoS e buffer overflow
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
#----------------------------------------------------------
# autoriza pacotes da interface loopback
iptables -A INPUT -i lo -j ACCEPT
#----------------------------------------------------------
# autoriza pacotes da rede local enp2s0
iptables -A INPUT -i enp2s0 -j ACCEPT
#----------------------------------------------------------
# abre a porta 22 utilizada pelo SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#----------------------------------------------------------
# abre a porta 80 utilizada pelo http
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#----------------------------------------------------------
# abre a porta 443 utilizada pelo https
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
#----------------------------------------------------------
# abre a porta 3306 utilizada pelo mysql
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#----------------------------------------------------------
#redirecionamento de portas para acesso externo ssh
iptables -A PREROUTING -t nat -i enp1s0 -p tcp --dport 2222 -j DNAT --to 192.168.1.100:22
iptables -A FORWARD -p tcp -d 192.168.1.100 --dport 2222 -j ACCEPT
#----------------------------------------------------------
#Squid recebe coneccoes apenas da rede local
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to 3128
#----------------------------------------------------------
# bloqueia tentativas de conecção nas demais portas
# inclusive as coneccaos provenientes da internet
iptables -A INPUT -p tcp --syn -j DROP
#----------------------------------------------------------




  


2. Re: Apache boqueado!!

Rodrigo Albuquerque Serafim
raserafim

(usa Slackware)

Enviado em 26/04/2018 - 21:01h

lmpaes escreveu:

Peço a gentileza de verificarem meu firewall.sh pois não estou conseguindo acessar a página que indica que o apache esta funcionando certinho.
A partir de uma máquina windows na rede interna, abro o navegadorr e digito o ip 127.0.0.1 ou 192.168.0.1 que é o gateway porém da a mensagem de conecção recusada. Acredito que o problema esteja no meu firewall, o que vocês acham?


- para verificar se o problema realmente está no firewall, desative-o.

- se o problema da recusa não for alguma porta em específico do apache que deveria ser liberado, é bem provável que o problema seja com o protocolo icmp.
  iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT  #type 0
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT #type 8
iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT #type 3

a primeira linha costuma ser o suficiente para as operações mais corriqueiras. (se funcionar, não precisa utilizar as outras duas)




3. Re: Apache boqueado!!

Rodrigo Albuquerque Serafim
raserafim

(usa Slackware)

Enviado em 26/04/2018 - 21:09h

lmpaes escreveu:

#----------------------------------------------------------
# bloqueia tentativas de conecção nas demais portas
# inclusive as coneccaos provenientes da internet
iptables -A INPUT -p tcp --syn -j DROP
#----------------------------------------------------------

isso não bloqueia conexões.

apenas o protege de um ataque específico.

faça um teste: deixe apenas esta linha. verás que a navegação na internet ocorre normalmente.

o modo mais eficiente de bloquear as conexões que não são explicitamente permitidas é por meio da utilização de Política Padrão:
iptables -t filter -P INPUT DROP 


independentemente disso, o seu script não explicita as políticas padrão -- o que, por si só, é uma má prática.

sugiro que faça uma pesquisa acerca do tema.





4. Re: Apache boqueado!!

Rodrigo Albuquerque Serafim
raserafim

(usa Slackware)

Enviado em 26/04/2018 - 21:18h

lmpaes escreveu:

#---------------------------------------------------------
# limpar todas as regras existentes
iptables -F
iptables -t nat -F
iptables -t mangle -F
#---------------------------------------------------------

-X também pode ser importante

utilize os dois:
iptables -t filter -F  #limpa todas as regras dos chain internos
iptables -t filter -X #limpa todas as regras dos chain criadas pelo usuário

-Z também é interessante
iptables -t filter -Z # zera os contadores 









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts