Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Tpax

#1
Shell Script / Meu IDS by Tpax
18 de May , 2008, 07:31:21 PM
Bom gente eu fiz um mini IDS baseado no lsof, ele ao ser iniciado, o script lembra da configuração de portas atual. A cada 10 segundos ele chama o lsof para obter a lista de portas abertas comparando com o último status, caso ocorra alguma alteração o script avisa o administrador pelo e-mail.

#!/bin/bash
MAILTO="root"
HOSTNAME='hostname'
getports() {
lsof -i -n -p | awk "/LISTEN/{print $1"/"$3/"$8} | sort -u
}

VELHO="$(getports)"
echo -e "Comece com o seguinte arranjo de portas:\n$VELHO"
while sleep 10 ; do
 NOVO="$(getports)"
 if test "$VELHO" != "$NOVO" ; then
  echo "Arranjo de portas alterado. Notificando o administrador por e-mail"
  mail -s "Atencao: Status de escuta de $HOSTNAME foi alterado" $MAILTO << EQF
Status Antes da Alteracao:
$VELHO
Status apos a alteracao:
$NOVO
EPF
  fi
VELHO="$NOVO"
done
#2
Shell Script / Automação de algumas tarefas by Tpax
17 de May , 2008, 05:54:51 PM
Olá galera do Darkers, sou novo aqui, e agora vou postar uma contribuição minha. Eu fiz um script que automatiza algumas tarefas como:

Trasformar nomes de arquivos
Adicionar um usuário no sistema
Deletar um usuário no sistema
Fazer backup dos arquivos do /etc

Espero que desfrutem.

#!/bin/bash
  Principal() {
   echo "Automatizar algumas tarefas"
   echo "------------------------------------------"
   echo "Opções:"
   echo
   echo "1. Trasformar nomes de arquivos"
   echo "2. Adicionar um usuário no sistema"
   echo "3. Deletar um usuário no sistema"
   echo "4. Fazer backup dos arquivos do /etc"
   echo "5. Sair do script"
   echo
   echo -n "Qual a opção desejada? "
   read opcao
   case $opcao in
      1) Transformar ;;
      2) Adicionar ;;
      3) Deletar ;;
      4) Backup ;;
      5) exit ;;
      *) "Opção desconhecida." ; echo ; Principal ;;
   esac
}
Transformar() {
   echo -n "Para Maiúsculo ou minúsculo? [M/m] "
   read var
   if [ $var = "M" ]; then
      echo -n "Que diretório? "
      read dir
      for x in `/bin/ls` $dir; do
         y=`echo $x | tr '[:lower:]' '[:upper:]'`
         if [ ! -e $y ]; then
            mv $x $y
         fi
      done
   elif [ $var = "m" ]; then
      echo -n "Que diretório? "
      read dir
      for x in `/bin/ls` $dir; do
         y=`echo $x | tr '[:upper:]' '[:lower:]'`
         if [ ! -e $y ]; then
            mv $x $y
         fi
      done
   fi
}
Adicionar() {
   clear
   echo -n "Qual o nome do usuário a se adicionar? "
   read nome
   adduser nome
   Principal
}
Deletar() {
   clear
   echo -n "Qual o nome do usuário a deletar? "
   read nome
   userdel nome
   Principal
}
Backup() {
   for x in `/bin/ls` /etc; do
      cp -R /etc/$x /etc/$x.bck
      mv /etc/$x.bck /usr/backup
   done
}