LSBInitScripts no Debian: missing LSB tags and overrides

Publicado por edps em 29/02/2012

[ Hits: 46.057 ]

Blog: https://edpsblog.wordpress.com/

 


LSBInitScripts no Debian: missing LSB tags and overrides



Aqueles que tinham o costume de utilizar seus próprios scripts no Debian, com o lançamento do Squeeze passaram a receber a seguinte mensagem quando os mesmos eram executados...
"
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'nome-do-script' missing LSB tags and overrides
"

Para exemplificar utilizarei um excelente script de firewall disponibilizado pelo usuário SMarcell do VOL em seu blog pessoal blog pessoal:
Linux: LSBInitScripts no Debian: missing LSB tags and overrides

Como quase tudo nessa vida tem solução, a mesma foi encontrada na própria Debian Wiki, bastará adicionar o seguinte conteúdo logo abaixo da linha /bin/sh:

### BEGIN INIT INFO # Provides: firewall.sh # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start firewall.sh at boot time # Description: Enable service provided by firewall.sh. ### END INIT INFO

Linux: LSBInitScripts no Debian: missing LSB tags and overrides

O script original encontra-se neste link, http://my.opera.com/smarcell/blog/show.dml/32589512, como exemplo criei o arquivo firewall.sh em /etc/init.d/, após salvá-lo, dê-lhe permissão de execução:

# nano /etc/init.d/firewall.sh
# chmod +x /etc/init.d/firewall.sh


A seguir limpamos as regras de firewall porventura existentes:

# iptables -F
# iptables -X
# iptables -L -nv


Adicionamos e iniciamos o serviço:

# update-rc.d firewall.sh defaults
# /etc/init.d/firewall.sh start


Ou:

# service firewall.sh start
# iptables -L -nv


Linux: LSBInitScripts no Debian: missing LSB tags and overrides

Pronto estaria, mas ficaria sem as funções de stop|start|restart, para tal podemos utilizar o seguinte conteúdo no script:

#!/bin/sh

### BEGIN INIT INFO
# Provides:          firewall.sh
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start firewall.sh at boot time
# Description:       Enable service provided by firewall.sh.
### END INIT INFO

PATH="/bin:/sbin:/usr/bin:/usr/sbin"

firewall_start(){

IPT="/sbin/iptables"

# Bloqueio de ICMP.
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

# Desabilitando qualquer tipo de redirecionamento.
for i in /proc/sys/net/ipv4/conf/*
do
    echo 0 > ${i}/accept_redirects
        echo 0 > ${i}/accept_source_route
        echo 0 > ${i}/secure_redirects
done

# Limpando configuraçoes residuais.
$IPT -F
$IPT -X

# Descartar tudo! Politica padrao.
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP

# Liberando loopback.
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT

# Descartando pacotes de entrada invalidos.
$IPT -A INPUT -m state --state INVALID -j DROP

# INPUT/OUTPUT liberado somente para as requisicoes feitas pela propria maquina.
$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

# Fechando para todo o restante.
$IPT -A INPUT -p tcp --syn -j DROP

echo "Regras do Firewall aplicadas!"
sleep 1
}
firewall_stop(){
iptables -F
iptables -X
iptables -P INPUT   ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT  ACCEPT
}
 
case "$1" in
 "start")
firewall_start
        ;;
 "stop")
        firewall_stop
echo "Firewall desativado!"
        ;;
  "restart")
echo "Firewall reiniciando..."
        firewall_stop; firewall_start
        ;;
      *)
        iptables -L -nv
esac

Para finalizar vejam o mesmo sendo iniciado, parado e reinicializado...
Linux: LSBInitScripts no Debian: missing LSB tags and overrides

Linux: LSBInitScripts no Debian: missing LSB tags and overrides

E o conteúdo dos script executados na inicialização e desligamento do sistema...
Linux: LSBInitScripts no Debian: missing LSB tags and overrides

Linux: LSBInitScripts no Debian: missing LSB tags and overrides

Os créditos das regras de firewall aqui aplicadas são do usuário SMarcell, o script tomado como modelo teve sua publicação original no seguinte endereço:

Referências


Dica publicada em meu Blog:

Outras dicas deste autor

Instalação do Google Chrome no Debian Squeeze

Menu do FluxBox com ícones

Painel Tint2 com lançadores de aplicativos

MOC (Music On Console)

Excluindo pacotes da lista de atualizações em distros Debian-like

Leitura recomendada

Problema de Tearing no Chip Gráfico do Intel Skylake [Resolvido]

Menu do LXDE não mostra todos as aplicações instaladas [Resolvido]

Substituindo o calendário do LXDE pelo Orage

Como trocar o fundo da tela de login do LTSP do Ubuntu

LaTeX: Cabeçalho com numeração de páginas

  

Comentários
[1] Comentário enviado por removido em 21/03/2012 - 18:30h

Um outro exemplo para isso:

http://www.thegeekstuff.com/2012/03/lsbinit-script/

[2] Comentário enviado por civanlobo em 07/06/2012 - 17:11h

Muito obrigado, velho, resolveu.

[3] Comentário enviado por removido em 11/06/2012 - 18:16h

Beleza rapaz!

[4] Comentário enviado por thifuda em 11/03/2014 - 19:49h

Show de bola. Ajudou muito.
Precisei criar um script para inicializar o firewall automaticamente e este "### BEGIN INIT INFO" solucionou.

Só uma sugestão, hoje você pode alterar o:

update-rc.d firewall.sh defaults
para:
insserv -d firewall.sh

[5] Comentário enviado por adsuporte em 02/02/2015 - 15:06h

Boa tarde, apesar de o post ser antigo ele me ajudou muito!!!

meu firewall estava funcionando bem, porem eu não conseguia instalar algumas aplicações que acessam o script de firewall !!!

muito obrigado!

Abs

[6] Comentário enviado por fantonios em 10/02/2015 - 12:28h

Boa Tarde,

Obrigado pela explicação. Me ajudou muito.

Valeu!!!

[7] Comentário enviado por rodrigoamd em 07/09/2016 - 10:27h

Esses caras são feras mesmo....



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts