Ir para conteúdo
  • Cadastre-se

[pedido] Plugin desbloqueio de IP CSF para WHMCS


Posts Recomendados

Boa tarde pessoal , tudo jóia? 

Atualmente estou utilizando o plugin da ServerPing UnBlockIp na versão 2.04, porém quando o cliente realiza o desbloqueio não é retornado o motivo que acarretou o bloqueio do IP no firewall, ficando uma mensagem "Desconhecido" como motivo. 

Alguém conhece algum outro plugin para essa função de desbloqueio ou alguma correção para o problema acima? 

 

Obrigado!!! 

 

 

Link para o comentário
Compartilhar em outros sites

Eu enfrentava muito esse problema principalmente devido a clientes que usavam uma versão do Outlook antiga e quando a senha era inválida este Outlook ficava tentando se conectar várias vezes -- o mesmo comportamento de alguém tentando fazer força bruta.

O meu CSF deixo configurado para bloquear o IP se o usuário usar dados inválidos ao se conectar usando o protocolo IMAP mais de 20 vezes.

Teve um dia que não aguentei mais e acabei dando um "jeitinho" porque não aguentava mais desbloquear IP de cliente. Tomava muito o meu tempo.

O comando para desbloquear um IP no CSF é o "csf -g IP", então procurei uma ferramenta que pudesse transformar o shell em uma API para poder fazer a integração com outros sistemas, como o WHMCS:

msoap/shell2http: Executing shell commands via HTTP server (github.com)

Achei essa ferramenta que funcionou muito bem.

Através dela eu poderia criar um endereço do tipo:

https://example.com/desbloquear_ip?ip=1.1.1.1

E quando a minha aplicação acessasse essa URL, um servidor web iria receber a solicitação e executar o comando no shell. Simples.

Implementei essa solução utilizando um bot do Telegram:

Screenshot_923.png.9f32763cb2e61786033ae08e6b22fe51.png

No entanto, se for utilizar esse método, algumas considerações de segurança:

1. Configure BASIC AUTH e crie uma URL randômica

Exemplo, em vez de criar uma URL assim:

https://example.com/desbloquear_ip?ip=1.1.1.1

Crie algo como:

https://example.com/desbloquear_ipGLFFKCLKDCLDKFCDLDK?ip=1.1.1.1

Vai da sua criatividade. O uso de uma hash, api key ou o que quer que seja, vai impedir que seja indexado pelo Google por exemplo.

Configure o basic auth também. Isso é básico sobre segurança.

2. SEMPRE valide a informação recebida pelo usuário

Se não for um endereço de IP legítimo o meu BOT já barra a solicitação. Nem envia a requisição pro servidor. Mais do que necessário.

3. Dica extra: Crie um shell script

Do lado do servidor, crie um script do tipo "unblock_ip.sh" e nele, verifique se o argumento passado é um endereço de IP legítimo e só depois desbloqueie o IP.

Acho importante essa verificação nas duas pontas. Tanto do lado do BOT do Telegram quanto do servidor.

O próprio shell2http vai te ajudar na segurança. Até onde eu sei, não é possível fazer um "&&" ou ";" e concatenar comandos. No entanto, usando o bom senso eu não vejo nenhuma possível vulnerabilidade neste método.

4. Recaptcha (Eu não implementei) - Avançado

Indo um pouco além, você pode criar uma página web para só para verificar o endereço IP do usuário. Não faz sentido alguém poder desbloquear um IP de terceiro, ok? Pode implementar o reCaptcha do Google também para evitar que bots acessem a página OU utiliza o Cloudflare e cria um page rule com a regra "I'm under attack" para a página em questão. O Cloudflare é bem efetivo também.

Não vi ainda a necessidade, mas se a sua hospedagem for bem 'famosinha', pois a maioria dos ataques que eu recebo, até onde eu sei não são direcionados, são apenas bots estúpidos tentando acessar o usuário "anonymous" ou "admin", você pode dá uma olhada no passo 4 com mais calma.

 

Bem te passei a ideia do que você pode fazer. Parece complicado mas é bem simples. Tem muita coisa pronta. O trabalho que você vai ter mesmo é só integrar tudo. Se quiser me contratar $$$ fico à disposição, ou você mesmo pode fazer. É bem fácil.

Link para o comentário
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Infelizmente, seu conteúdo contém termos que não são permitimos. Edite seu conteúdo para remover as palavras destacadas abaixo.
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?