De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Bloquear servidor por falta de pagamento

Colaboração: Sérgio Abrantes

Data de Publicação: 10 de Abril de 2009

Essa dica é muito válida para aquele cliente que atrasa o pagamento ou diz que esqueceu de fazê-lo e fica enrolando.

Para não estressar, coloque uma script na cron do equipamento para fazer esse serviço para você conforme a data de pagamento. :D

Segue abaixo um script que eu coloco no /etc/cron.daily para um equipamento firewall.

Ele coloca o forward como drop para ele não conseguir acessar a internet, mas deixa o input liberado para eu entrar e liberar o equipamento remotamente.

  #!/bin/bash
  # Variáveis #
  data=`date +%d%m%y`
  
  if [ $data == "070708" ]; then
  iptables -X
  iptables -Z
  iptables -F INPUT
  iptables -F OUTPUT
  iptables -F FORWARD
  iptables -F -t nat
  iptables -F -t mangle
  iptables -t filter -P INPUT ACCEPT
  iptables -t filter -P OUTPUT ACCEPT
  iptables -t filter -P FORWARD DROP
  mv /etc/rc.d/rc.firewall /etc/rc.d/rc.firewall-bkp-travado
  echo "iptables -t filter -P INPUT ACCEPT" >> /etc/rc.d/rc.firewall
  echo "iptables -t filter -P OUTPUT ACCEPT" >> /etc/rc.d/rc.firewall
  echo "iptables -t filter -P FORWARD DROP" >> /etc/rc.d/rc.firewall
  chmod 700 /etc/rc.d/rc.firewall
  fi
  
  
  if [ $data == "070808" ]; then
  sleep 90
  iptables -X
  iptables -Z
  iptables -F INPUT
  iptables -F OUTPUT
  iptables -F FORWARD
  iptables -F -t nat
  iptables -F -t mangle
  iptables -t filter -P INPUT ACCEPT
  iptables -t filter -P OUTPUT ACCEPT
  iptables -t filter -P FORWARD DROP
  mv /etc/rc.d/rc.firewall /etc/rc.d/rc.firewall-bkp-travado
  echo "iptables -t filter -P INPUT ACCEPT" >> /etc/rc.d/rc.firewall
  echo "iptables -t filter -P OUTPUT ACCEPT" >> /etc/rc.d/rc.firewall
  echo "iptables -t filter -P FORWARD DROP" >> /etc/rc.d/rc.firewall
  chmod 700 /etc/rc.d/rc.firewall
  fi

E assim você pode colocar todas as datas que foram acertadas para pagamento no script.

Um detalhe importante: retirar a regra para o mês que o cliente pagar! Assim pode ser feito para vários serviços que você possui.

Tenho um cliente que possui um servidor de arquivos que o script é muito parecido.

  #!/bin/bash
  # Variáveis #
  data=`date +%d%m%y`
  
  if [ $data == "070708" ]; then
  /etc/rc.d/rc.samba stop
  chmod 000 /etc/rc.d/rc.samba
  fi

Em ambos é necessário pensar que o cliente pode reiniciar o equipamento para tentar voltar o serviço, mas nesse caso ele não voltará.

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Sérgio Abrantes