Aew galera,

Olha só devido as necessidades da empresa que trabalho tenho que está abrindo,liberando bloqueando portas pelo iptables constantemente, o script está muito grande e fica dificil de acompanhar e ter algo facil e rapido de administrar, então pensei em criar um script que facilite minha vida
e talvez dos outros e que funcione da seguinte forma:
-Primeiro crio uma pasta /etc/firewall na qual coloco todos os "serviços de firewall"(regras divididas por arquivos), e uma pasta dentro do /etc/init.d/firewall na qual conterá os links para os serviços startados no boot. deixe-me explicar melhor , vamos supor que tenho um serviço web rodando na porta 80, então crio um script dentro da pasta /etc/firewall chamado, webserver , este script conterá o codigo referente a ativação do serviço web no iptables, e aceitará os comandos:
start, stop, desc, boot,  noboot e time
start - inicia o serviço.
stop - Para o mesmo
status - Mostra o status do mesmo.
desc - Mostra uma breve descrição.
boot - ativa o mesmo para rodar no boot(cria um link na pasta /etc/init.d/firewall) noboot -desativa o mesmo para rodar no boot(deleta um link se houver na pasta /etc/init.d/firewall) time - este vai aceitar parametros também, e ativa o serviço por um tempo determinado, ou cria um periodo no qual o mesmo deva ser ativado e desativado (para parar o serviço depois de um tempo pensei, em passar o serviço com o parametro stop para o comando AT) se for para ativar e desativar, em periodos determinados, utilizamos o conhecido crontab =) .
Dai se eu quero ativar o acesso a web um periodo de 2 horas daria o comando
# rc.firewall webserver start time 120
Penso em fazer algo do tipo, se o serviço estiver startado, e quiser parar daqui a duas horas passar o comando com o parametro stop assim.
# rc.firewall webserver stop time 120
Se o mesmo não estiver ativo no boot, e eu quiser ativar o mesmo, digitaria
# rc.firewall webserver boot

Bom é isso, mas o motivo de escrever isto é que não tenho conhecimentos profundos de shell script, então gostaria se possivel da ajuda de alguém, alguém se disporia a me ajudar?

Sds,

Anderson


Responder a