Bloquear tudo e liberado ip especifico por iptables

1. Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 31/08/2017 - 12:57h

Bom dia, sou iniciante e estou com dificuldade para bloquear um site geral e liberar apenas para ips especificos por iptables, ja tentei usar proxy porém muito lento.
alguem pode me ajudar
segue as minhas configurações

##BLoquear tudo##
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j REJECT
##liberar ip específico##
iptables -A FORWARD -d 192.168.1.230 -m string –algo


  


2. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 31/08/2017 - 13:44h

tiagoeariane escreveu:

Bom dia, sou iniciante e estou com dificuldade para bloquear um site geral e liberar apenas para ips especificos por iptables, ja tentei usar proxy porém muito lento.
alguem pode me ajudar
segue as minhas configurações

##BLoquear tudo##
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j REJECT
##liberar ip específico##
iptables -A FORWARD -d 192.168.1.230 -m string –algo


Dependendo da política do seu firewall, há duas formas de fazer:
-> Accept:
# Libera para ip especifico
iptables -A FORWARD -s "ip que quero liberar" -m string --algo bm --string "facebook.com" -j ACCEPT
# Bloqueia restante
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j DROP
-> Drop:
iptables -A FORWARD -s "ip que quero liberar" -m string --algo bm --string "facebook.com" -j ACCEPT

Sua política deve estar em Accept, se não tiver alterado.

Do modo que estava fazendo, ele estava bloqueando tudo e não liberava pros hosts depois. Tem a ver com o modo que ele lê as regras no seu script.


3. Re: Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 31/08/2017 - 14:57h

tentei mais não está indo

1 ª Tentativa
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j DROP

2ª Tentativa
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j DROP

3ª Tentativa
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j REJECT
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT

O unico Jeito que bloqueia é esse embaixo.
iptables -t mangle -I PREROUTING -s 192.168.1.230 -p tcp -m string --algo kmp --string "facebook.com" -j DROP

mais vou ter que bloquear por ip então vai ser muitos.
queria bloquear tudo e liberar por ip.
meu BFW é versão 3.0.260
consegue me ajudar?



4. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 31/08/2017 - 15:24h

tiagoeariane escreveu:

tentei mais não está indo

1 ª Tentativa
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j DROP

2ª Tentativa
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j DROP

3ª Tentativa
iptables -A FORWARD -m string --algo bm --string "facebook.com" -j REJECT
iptables -A FORWARD -s "192.168.1.230" -m string --algo bm --string "facebook.com" -j ACCEPT

O unico Jeito que bloqueia é esse embaixo.
iptables -t mangle -I PREROUTING -s 192.168.1.230 -p tcp -m string --algo kmp --string "facebook.com" -j DROP

mais vou ter que bloquear por ip então vai ser muitos.
queria bloquear tudo e liberar por ip.
meu BFW é versão 3.0.260
consegue me ajudar?


Desculpe meu amigo, você não tinha dito que havia um proxy transparente.
Vai ter que fazer:
# Liberar hosts
iptables -t mangle -I PREROUTING 1 -s "ip para liberar" -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
# Bloquear restante
iptables -t mangle -I PREROUTING 2 -p tcp -m string --algo bm --string "facebook.com" -j DROP

Se tiver que liberar outros hosts, tem que adequar o número da regra se utilizar o parâmetro I (insert).
Exemplo com 3 hosts:

# Liberar hosts
iptables -t mangle -I PREROUTING 1 -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 2 -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 3 -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT

# Bloquear restante
iptables -t mangle -I PREROUTING 4 -p tcp -m string --algo bm --string "facebook.com" -j DROP

Pode ser que dê certo, porém não acredito que seja a solução mais elegante.


5. Re: Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 31/08/2017 - 15:46h

Bloqueia tudo e só libera o primeiro host, os demais fica bloqueado mesmo que eu coloque para liberar

O ip só que liberou foi o 192.168.1.230

# Ips Liberados
iptables -t mangle -I PREROUTING -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT - Liberado
iptables -t mangle -I PREROUTING -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT

# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING -p tcp -m string --algo bm --string "facebook.com" -j DROP


6. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 31/08/2017 - 16:31h

tiagoeariane escreveu:

Bloqueia tudo e só libera o primeiro host, os demais fica bloqueado mesmo que eu coloque para liberar

O ip só que liberou foi o 192.168.1.230

# Ips Liberados
iptables -t mangle -I PREROUTING -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT - Liberado
iptables -t mangle -I PREROUTING -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT


# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING -p tcp -m string --algo bm --string "facebook.com" -j DROP


Não pode ignorar o número das regras.

Limpe sua mangle e coloque corretamente:
iptables -t mangle -X
iptables -t mangle -F

# Ips Liberados
iptables -t mangle -I PREROUTING 1 -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT - Liberado
iptables -t mangle -I PREROUTING 2 -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 3 -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT


# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING 4 -p tcp -m string --algo bm --string "facebook.com" -j DROP

Consegue visualizar os números após o PREROUTING?




7. Re: Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 31/08/2017 - 17:27h

FIZ COM AS NUMERAÇÕES, PORÉM SÓ ESTÁ LIBERANDO O PRIMEIRO IP 192.168.1.230

# Ips Liberados
iptables -t mangle -I PREROUTING 1 -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT #Liberado
iptables -t mangle -I PREROUTING 2 -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 3 -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT


# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING 4 -p tcp -m string --algo bm --string "facebook.com" -j DROP


8. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 31/08/2017 - 17:33h

tiagoeariane escreveu:

FIZ COM AS NUMERAÇÕES, PORÉM SÓ ESTÁ LIBERANDO O PRIMEIRO IP 192.168.1.230

# Ips Liberados
iptables -t mangle -I PREROUTING 1 -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT #Liberado
iptables -t mangle -I PREROUTING 2 -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 3 -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT


# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING 4 -p tcp -m string --algo bm --string "facebook.com" -j DROP


192.168.1.231 e 192.168.1.232 são IP's que criei como base de explicação. Os outros dois IP's quer liberar são esses mesmos?
São só dois?
Se não irá ter que mudar a regra. E toda vez que fizer isso irá ter que limpar a tabela mangle do iptables, como dito anteriormente. Vamos supor que quer liberar 5 IP's, então ficará da seguinte forma:
Os ip's são:
192.168.1.230
192.168.1.100
192.168.1.50
192.168.1.200
192.168.1.199

#Limpa
iptables -t mangle -F
iptables -t mangle -X
# Ips Liberados
iptables -t mangle -I PREROUTING 1 -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT #Liberado
iptables -t mangle -I PREROUTING 2 -s 192.168.1.100 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 3 -s 192.168.1.50 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 4 -s 192.168.1.200 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -I PREROUTING 5 -s 192.168.1.199 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
# Rede bloqueada (SITE)
iptables -t mangle -I PREROUTING 6 -p tcp -m string --algo bm --string "facebook.com" -j DROP

Isso se quiser usar o parâmetro "I", de insert. Se quiser usar o "A", de apend, fica muito mais fácil:
#Limpa
iptables -t mangle -F
iptables -t mangle -X
# Ips Liberados
iptables -t mangle -A PREROUTING -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT #Liberado
iptables -t mangle -A PREROUTING -s 192.168.1.100 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.50 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.200 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.199 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
# Rede bloqueada (SITE)
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "facebook.com" -j DROP

Pq aí você irá apenas adicionar as regras e não ficará quebrando a cabeça com a ordem delas.


9. Re: Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 31/08/2017 - 17:40h

Agora funcionou, ficou show obrigado pela força.


10. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 31/08/2017 - 17:45h

tiagoeariane escreveu:

Agora funcionou, ficou show obrigado pela força.


Beleza!


11. Re: Bloquear tudo e liberado ip especifico por iptables

Tiago
tiagoeariane

(usa CentOS)

Enviado em 01/09/2017 - 10:24h

Tive problemas, está travando tudo agora, mesmo eu liberando não vai.

como faço para limpar mangle?

segue as minhas configurações

#Limpa
iptables -t mangle -F
iptables -t mangle -X

#Ips Liberados
iptables -t mangle -A PREROUTING -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.233 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.234 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.235 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.236 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.237 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.238 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.239 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.240 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.241 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.242 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.243 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.244 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.245 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.246 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.247 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.248 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.249 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.250 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
#Rede bloqueada (SITE)
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m-facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m.facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "pt-br.facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "instagram.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m.instagram" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "twitter.com" -j DROP


Preciso de ajuda!


12. Re: Bloquear tudo e liberado ip especifico por iptables

Leandro Silva
LSSilva

(usa Outra)

Enviado em 01/09/2017 - 10:58h

tiagoeariane escreveu:

Tive problemas, está travando tudo agora, mesmo eu liberando não vai.

como faço para limpar mangle?

segue as minhas configurações

#Limpa
iptables -t mangle -F
iptables -t mangle -X

#Ips Liberados
iptables -t mangle -A PREROUTING -s 192.168.1.230 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.231 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.232 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.233 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.234 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.235 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.236 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.237 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.238 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.239 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.240 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.241 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.242 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.243 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.244 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.245 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.246 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.247 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.248 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.249 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
iptables -t mangle -A PREROUTING -s 192.168.1.250 -p tcp -m string --algo bm --string "facebook.com" -j ACCEPT
#Rede bloqueada (SITE)
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m-facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m.facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "pt-br.facebook.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "instagram.com" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "m.instagram" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "twitter.com" -j DROP


Preciso de ajuda!


Se besta!
kkkkkkkkkkk

Faça assim camarada:
#Limpa
iptables -t mangle -X
iptables -t mangle -F

#Libera os hosts
iptables -t mangle -A PREROUTING -p tcp -m iprange --src-range 192.168.1.230-192.168.1.250 -m string --algo bm --string "facebook" -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp -m iprange --src-range 192.168.1.230-192.168.1.250 -m string --algo bm --string "twitter" -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp -m iprange --src-range 192.168.1.230-192.168.1.250 -m string --algo bm --string "instagram" -j ACCEPT

#Bloqueia demais
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "facebook" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "twitter" -j DROP
iptables -t mangle -A PREROUTING -p tcp -m string --algo bm --string "instagram" -j DROP



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts