rootsh: Keylogger para CLI do Linux

rootsh é um shell que loga tudo o que um usuário root vê no terminal. É útil se você tem vários administradores com acesso root num servidor e você quer gravar exatamente o que o usuário faz. Fazer o download do rootsh-1.5.3.tar.gz. wget http://www.virtualxp.org/downloads/rootsh-1.5.3.tar.gz Descompactar, configurar, compilar e instalar: tar zxvf rootsh-1.5.3.tar.gz -C /usr/src cd /usr/src/rootsh-1.5.3 ./configure --disable-syslog --disable-linenumbering make make install Depois de instalado os binários, o sistema está quase pronto. A única necessidade que...
read more

grep, sed, cut e cat: Script parser para log do Oracle Listener

O que o script faz? Faz um parse no arquivo de log do Oracle Listener e extrai o HOST do usuário, o USER e o HOST e PORTA que o usuário está conectando. #!/bin/bash # ############################################################################### # # Descrição: Fazer o parse do LOG e extrair apenas o HOST e USER, também # HOST e PORT # Autor: Daniel K Lima # Data : 10/03/2010 # Uso : ./parser.sh arquivo.log # ############################################################################### # Parâmetros LOG=${1} SED=$(which sed) CUT=$(which cut) GREP=$(which...
read more

CLI: Converter um PDF para uma imagem

Ter um PDF é bom, é prático e tudo o mais, mas é necessário ter um programa específico para poder abrir os arquivos .pdf como o Acrobat Reader, o evince e outros. As vezes não é necessário ou não é desejado ter um programa específico para poder abrir PDFs, sendo mais prático, no entanto, utilizar o próprio navegador que suporta abrir as imagens diretamente sem auxílio externo. Caso essa seja a sua necessidade, converter os PDFs que estejam num servidor ou o que seja, vou mostrar abaixo como converter PDF para imagem através da linha de comando do Linux...
read more

SED: adicionar 1 string a cada 2 caracteres

Estou colocando aqui um exemplo que pode ser adaptado para sua necessidade. No caso, essa linha adiciona o caracter “:” (sem as aspas) a cada 2 caracteres. Utilizei para formatar uma lista enorme de MAC address que me foi passado no formato 00106037614C O arquivo texto original continha várias linhas: Arquivo: mac1.txt 001060376173 001060376124 00106037614C 001060374840 001060376125 00106037612A 001060376176 001060375D9A 001060375D97 E executando sed, na linha abaixo sed -e :a -e 's/\(.*[0-9,A-Z]\)\([0-9,A-Z]\{2\}\)/\1:\2/;ta' mac1.txt > mac2.txt O resultado...
read more

Bash: Convertendo TABs para Espaço em arquivos

É possível utilizar várias ferramentas para essa finalidade, como por exemplo o sed e o awk. O comando expand coverte todos os TABs para espaços. Ele preserva os caracteres de backspace na saída; eles que fazem com os espaços sejam reduzidos na contagem para o cálculo dos TABs. expand arquivo.log > output.log expand dados.txt > output.txt expand -t 2 dados.txt > output.txt A opção -t pode ser usada para gerar uma lista separada por vírgula (arquivo CSV). Caso você queira fazer o contrário, ou seja, converter espaços para TABs, use o comando unexpand. Veja as man...
read more

Script shell com expect para atualização em massa para o horário de verão 2009/2010

Para quem trabalha com vários servidores Linux / FreeBSD atualizar todos os servidores para o horário e verão é uma tarefa cansativa e chata. Vou disponibilizar aqui um script para ser utilizado nessa tarefa, ou seja, um script que atualizará todos os servidores listados em um arquivo e os deixará prontos para a virada do horário. O funcionamento do script é bem simples, é composto por 3 arquivos daylight.sh daylight.exp servidores.txt Vou explicar rapidamente o que é cada um desses arquivos e o que fazem. Pré-requisitos expect openssh Posts...
read more

Find: mostrar apenas links simbólicos

Se você quer saber quais arquivos no seu servidor são apenas links simbólicos, aqui está como fazer: find / -type l No exemplo mostrado ele vai procurar por todo o sistema, caso queira restringir a apenas um diretório em específico, substitua o ‘/’ por ‘/diretorio’, sem os apóstrofos. Blogged with the Flock...
read more

Auto restart Apache quando o processo “morre”

Aqui está um shell script simples para ser usado no CentOS / Red Hat / Debian etc. Esse script funciona em outros sistemas operacionais com poucas modificações. Copie o código do script abaixo e cole num arquivo, podendo ser chamado /usr/local/bin/httpdcheck. Após isso, edite o crontab para rodar a cada 5 minutos */5 * * * * /usr/local/bin/httpdcheck >/dev/null 2>&1 Abaixo está o script, após editá-lo no arquivo, não esqueça de dar permissão de execução para o arquivo com chmod 755 /usr/local/bin/httpdcheck #!/bin/bash # Comente se está usando Debian RESTART="/sbin/service...
read more

Convertendo nomes de arquivos em letras MAIÚSCULAS para minúsculas

Script para converter nomes de arquivos de MAIÚSCULAS para minúsculas. #!/bin/bash file="$1" if [ $# -eq 0 ] then echo "$(basename $0)" exit 1 fi if [ ! $file ] then echo "$file não é um arquivo" exit 2 fi lowercase=$(echo $file | tr '[A-Z]' '[a-z]']) if [ -f $lowercase ] then echo "Erro - Arquivo já existe!" exit 3 fi # troca o nome do arquivo /bin/mv $file...
read more

Enviado email com anexo via linha de comando

As vezes é necessário enviar um email no Linux, FreeBSD ou Unices via linha de comando com um anexo. Esse procedimento também pode ser utilizado como parte de um Shell script que envia relatórios anexados para o email do administrador. ...
read more