segunda-feira, 7 de dezembro de 2015

Script para execução do Antivirus Clamav no Debian Jessie

Olá faz um tempo que não posto nada. Os motivos são os de sempre.
Bom sem mais delongas...

Fiz este script para executar o antivírus clamav em meu desktop linux que tem Debian  Jessie instalado.
Em outra ocasião poderíamos debater o por que de se executar um antivírus em um desktop Linux mas vamos deixar para outra ocasião.

Presumindo que você já instalou seu antivírus em seu desktop Linux,  seguindo as orientações em:
http://www.clamav.net/documents/installing-clamav  você pode com as devidas adaptações executar
este script em seu desktop linux:


######################## Inicio script ##############################################
#!/bin/bash

# Nome: antivirus.sh 
# objetivo: executar anti-virus com regularidade na partição de arquivos 
# de segunda a  sexta as  14:30 
# autor: Ricardo Ribeiro
# email: ricardoribeirosilva@gmail.com
# exportando display de vídeo modo gráfico
# versão: 0.1

# exportando saída gráfica para modo gráfico

export DISPLAY"=:0"

/usr/bin/touch /arquivos/temporarios_antivirus/log_antivirus`date +%d-%m-%Y`.txt > /dev/tty1

/usr/bin/zenity --title="Antivirus " --info --timeout 60 --text="Execução diaria do Anti-virús inicio...\n do anti-virus  por gentilesa não desligar até o proximo alerta !!! "

/usr/bin/clamscan  -r /arquivos -i --tempdir /arquivos/temporarios_antivirus --move /arquivos/temporarios_antivirus  -l /arquivos/temporarios_antivirus/log_antivirus`date +%d-%m-%Y`.txt

/usr/bin/zenity --title="Antivirus " --info --timeout 60 --text="Execução diaria do Antivirús terminada..."


########################## Final script    ###########################################


Exemplo: de entrada na crontab para a execução diária:

30 14 * * 1-5 /opt/scripts/antivirus.sh  2>&1

Neste exemplo  executamos o script de segunda a sexta as 14:30







sábado, 4 de abril de 2015

Cópia rápida de dispositivos usando o comando cat


Olá a todos estou aqui  para postar uma dica rápida de como clonar HDs de maneira simples.
Para isso usamos o comando cat.    Ele está presente em todas as distribuições linux.
Em nosso exemplo vou clonar o disco /dev/sda com todo o seu conteúdo partições e etc...
Para o disco /dev/sdb  Para isso usamos o comando abaixo:


# cat /dev/sda > /dev/sdb


Feito isso é só aguardar o terminal ficar disponível novamente.
Dependendo do tamanho do disco isso pode demorar um pouco.
Pode ficar tranquilo esse comando ira recriar todas as partições sistemas de arquivos e tudo.
Por hoje é só pessoal até a próxima.




sábado, 7 de março de 2015

Clonando discos e partições com o comando DD enviando a imagem via rede com SSH com barra de progresso




Olá !  Estou aqui para postar mais uma dica rápida.  Esta semana acabei precisando criar uma imagem 
do disco rígido  de um servidor porém  não seria  muito viável  paralisar   o equipamento e também não dispunha  de muito espaço para a imagem.

Analisando com cuidado eu tinha três necessidades principais. 


1ª Gerar a imagem com o equipamento trabalhando "a quente !"


2ª Criar uma imagem que ocupasse pouco espaço. 


3ª Enviar a imagem  pela rede de forma simples de preferencia via SSH. 

Então depois de analisar a situação  cheguei a  seguinte conclusão "Vou usar o comando DD  estou salvo !!!"  Mas ai eu lembrei,  e o espaço ? ai eu pensei   será que dá para compactar a imagem ? pesquisei um pouco e descobri da sim eba !!! Então resolvi  fazer teste em outro equipamento  para ver se daria certo ?

Tudo correu muito bem com  os comandos abaixo: 
 criar a imagem

dd if=/dev/sda | gzip -9f | ssh root@192.168.2.7 'dd of=/mnt/imagem.iso'


Restaurar imagem 

dd if=imagem.iso | zcat | ssh root@192.168.2.12 'dd of=/dev/sdb'


Tudo funcionou bem, gerou uma imagem 20 vezes menor que o meu HD até ai tudo beleza.
Porém, tive um pequeno problema durante o processo. O comando não deu nenhuma saída de quanto tinha copiado. No caso de um HD enorme com uma rede saturada isso gera uma certa expectativa então achei que seria interessante criar uma barra de progresso para poder monitorar o processo então resolvi 
usar o  comando pv para  monitorar a quantidade de dados copiados.  

para criar imagem com barra de progresso usamos o comando abaixo:


dd if=/dev/sda | pv | gzip -9f | ssh root@192.168.2.7 'dd of=/mnt/imagem.iso'


Para restaurar imagem com barra de progresso

dd if=imagem.iso | pv | zcat | ssh root@192.168.2.12 'dd of=/dev/sdb'



Bom gente espero que seja l essa dica seja tão útil para vocês quanto foi para mim até a próxima !!!








quinta-feira, 26 de fevereiro de 2015

Shell Script para backup de VMs no Virtualbox no Debian wheezy


Shell Script  para backup  de VMs  no Virtualbox no Debian Wheezy.


Saudações  a todos Senhoras e Senhores  membros do conselho.
Estou aqui para postar um script curtinho e bem simples que esporta em formato ova  de uma vez todas as minhas maquinas virtuais para meu HD externo. Espero que seja útil.
Você pode mudar para o formato que você preferir.



#!/bin/bash

# Nome: backups vms
# objetivo: realizar backup das vms no meu notebook no HD externo
# versão: 0.2
# autor: Ricardo Ribeiro
# e-mail: ricardoribeirosilva@gmail.com
###############################################################################

# variáveis de escopo global

auxiliar="1"
prefixo="/media/SAMSUNG/backup_vms"
data=`date`

###############################################################################

# verificando se o dispositivo está montado
mount -l  | grep SAMSUNG | cut -d " " -f3
temporaria=$?
if [ $temporaria = $? ]
        then

        cd "$prefixo"
        VBoxManage list vms | cut -d "\"" -f2  > lista_vms.txt
        vmsexport=(`wc -l lista_vms.txt | cut -d " " -f1`)
        nomevm=`head -n$auxiliar lista_vms.txt |tail -n1`
        while [ $auxiliar -le $vmsexport  ]; do
                VBoxManage export "$nomevm" -o "$nomevm.ova";
                auxiliar=$((auxiliar+1));
                nomevm=`head -n$auxiliar lista_vms.txt |tail -n1`
        done;
        mv "$prefixo"/lista_vms.txt "$prefixo"/backup_vms.$data.txt
        echo "$data" >> backup_vms.$data.txt

else
        echo -ne "despositivo não montado\nAbortando a missão..."

fi;


################################ Fim do script ####################################




O script encontra-se disponível para download  aqui: backup_vms.sh

















sexta-feira, 20 de fevereiro de 2015

Instalação do Agent BAB 16, da CA no CentOS 7.0


        Estou aqui para mas uma dica rápida. Resolvi postar esta  porque não achei  uma documentação bacana sobre o assunto.

 Uma coisa que me deu muito trabalho para configurar foi o agente do arcserver 16 no CentOS 7.
Pois quando  fui instalar o agente tive de cara o seguinte erro:

" Cannot identify your Linux distribution or it is not yet supported "

Procurei no Oraculo  e não consegui  nenhum tutorial de como fazer isto.
então tibe a ideia de procura o suporte da CA e para minha surpresa a resposta foi:

"Senhor O nosso Produto não tem suporte ao Centos 7 e nem ao Red Hat 7.0"

Ai eu pensei que porcaria eu faço ? Antes que você responda instala o Bacula ou outra solução livre
já te respondo eu queria muito de coração. Mas, a empresa não autoriza! que #@!#!#!!!!!! Fazer oque ?  Sua empresa suas regras.  Então tive que partir para o ataque resolvi alterar o script de instalação
do arcserve.

Para isso basta seguirmos os passos abaixo:

Passo 1

Dentro do DVD de instalação do BAB 16  copiar diretório:


DataMoverandAgent\Linux Para dentro da maquina
Renomear o diretório

DataMoverandAgent\Linux\nls\c  para  E:\DataMoverandAgent\Linux\nls\C

# mv  DataMoverandAgent\Linux\nls\c E:\DataMoverandAgent\Linux\nls\C


Passo 2

 Se executarmos o programa teremos o erro:

# ./install

" Cannot identify your Linux distribution or it is not yet supported "

Alterar o arquivo abaixo de:

#  vi /etc/redhat-release

CentOS Linux release 7.0.1406 (Core)


Para:

#  vi /etc/redhat-release

CentOS Linux release 6.0 (Core)

####################################

Alterar o script de instalação:

DataMoverandAgent\Linux\install

Primeiro mudamos o atributo do arquivo de somente leitura para leitura e escrita.
com o comando:

# chattr  -i install

Editar a linha 671

# vim install


de: LINUX_VENDOR=$(${DEPOT}/${MISC}/$CAUNAME -s)

Para: LINUX_VENDOR='Red Hat';

criar diretório inoculan dentro do diretório linux

# mkdir inoculan

Dentro do diretório inoculan criar arquivo abaixo:

# touch avengine.rpm
# instalar com comando:

./install

 Preparar o sistema Operacional para isso devemos instalar  uma dependência do agente de backup.

# yum search compat-libstdc+
# yum install compat-libstdc++-296.i686

agora criamos  um link simbólico para a  Lib  baixada.


# cd /usr/lib
# sudo ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2

Passo 4

Alterar arquivo /opt/CA/ABcmagt/agent.cfg

De:
ENV       LD_ASSUME_KERNEL=2.4.18

Para:
ENV       NO_HOSTS_EQUIV=1

Passo 5

Adicionar Agente de backup na inicialização:

# chkconfig bab_agent on


Iniciar o agente de backup.

#  /etc/init.d/bab_agent start




quinta-feira, 19 de fevereiro de 2015

Gerando Um arquivo CSR para Certificado Digital SSL Apache + mod_ssl



Olá,  depois de muito tempo sem postar devido a correria.  Estou arqui para uma dica rápida .
que vai ajudar muito no dia a dia de quem esta aprendendo a administrar  servidores Apache.
Vou ensinar como gerar um arquivo  CSR  Certificate Signing Request, para mandar para a unidade certificadora CA. O melhor 
Neste caso vamos gerar um certificado SSL para Apache.
Para isto vamos gerar nossas chaves publicas e privada e nosso arquivo CSR.

Para isso usaremos o comando abaixo:

# openssl req -newkey rsa:2048 -nodes -keyout meuservidor.key -out servidor.csr

Agora vamos explicar as opções do comando acima

req cria um novo  arquivo CSR Certicate Signing  Request Management.

- newkey  rsa:2048  uma nova chave com criptografia RSA de 2048 Bits.
você pode usar outro tipos de criptografia.

-nodes A opção evita que o apache peça a senha do certificado cada vez que o Apache for reiniciado.

-keyout determina o arquivo  da sua chave privada.

-out Determina seu arquivo CSR  Certificate Signing Request.