shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Lendo uma lista de possível senhas para uma lista


From: George Robinson
Subject: Re: [shell-script] Re: Lendo uma lista de possível senhas para uma lista d e hosts
Date: Thu, 6 Jul 2017 20:15:02 -0300

Pessoal,

Eu consegui evoluir no script, porém estou achando que ele está muito lento para executar os procedimentos. Testei apenas com 3 hosts e o tempo está muito elevado. Então resolvi mudar para um modelo mais simples, onde eu valido dois arquivos, linha a linha (sem testar possíveis correlações).

No momento está assim:

hosts.txt:
host1
host2
host3

sehas.txt
senhahost1
senhahost2
senhahost3

arquivo de validação:

#Variaveis
HOSTS=$(cat /root/temp/hosts.txt)
PWDS=$(cat /root/temp/pws.txt)
DATA="" -lct /etc | tail -1 | awk '{print $6, $7, $8}'`

# Comando a ser executado
####### Contador para ler o arquivo de senhas linha a linha #######
i=0
for pd in $PWDS; do
 pws[$i]=$pd;
 i=`expr $i + 1`
done

####### Contador para ler o arquivo de hosts linha a linha e testar a senha usando o script expect #######
### Eh passado como parametro o servidor ($j) e a senha do mesmo ($pws)
i=0
for j in $HOSTS; do
 /root/temp/pwtest.exp $j ${pws[$i]} ${DATA}
 i=`expr $i + 1`
done

Arquivo do expect para receber as variaveis pwtest.exp:

######### Variaveis #########
set timeout 5
set HOST [lindex $argv 0]
set PASS [lindex $argv 1]
set DATA [lindex $argv 2]
log_user 1

## Inicializa a conexao SSH
spawn -noecho ssh -q -o StrictHostKeyChecking=no root@$HOST
send "$PASS\r"
expect " \n"
send_user "$DATA\r"
#expect -re "\n(\[^\r]*)\r" ;
expect " \n"
send "exit\r"

O que acontece é que na hora de tratar a variável data, só vem pra mim a primeira parte da data:

[root@br001vs0246 temp]# ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'
Mar 1 2016

Porém, dentro do script, só vem "Mar" como valor. Alguém saberia dizer como eu concateno esses valores formando uma string?

Muito obrigado!

Em 6 de julho de 2017 10:02, George Robinson <address@hidden> escreveu:
Olá Itamar,

Essa correlação ficou perfeita. Com isso já tenho a correlação entre hosts e possíveis senhas. O que vou evoluir agora é a execução de comandos a partir de um login.

Conseguindo, vou postar aqui a construção do script a fim de compartilhar com todos, caso venha ser útil

Em 6 de julho de 2017 08:30, address@hidden [shell-script] <address@hidden.br> escreveu:
 

George,

Não vou entrar no mérito do código sobre as conexões ou da tarefa do script.
Vou me concentrar na repetição de dois arquivo onde é preciso fazer a combinação:

Tendo o arquivo lista1.txt
$ cat lista1.txt
linha1
linha2
linha3
linha4

E o arquivo lista2.txt
$ cat lista2.txt
item1
item2
item3
item4
item5

Para combiná-los eu faço:
$ while read linha;do (while read item;do echo $linha $item;done < lista2.txt) ;done < lista1.txt
linha1 item1
linha1 item2
linha1 item3
linha1 item4
linha1 item5
linha2 item1
linha2 item2
linha2 item3
linha2 item4
linha2 item5
linha3 item1
linha3 item2
linha3 item3
linha3 item4
linha3 item5
linha4 item1
linha4 item2
linha4 item3
linha4 item4
linha4 item5

Essa construção resolveria o problema da distribuição entre 2 arquivos?

[]'s
Itamar




--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138



--
George Robinson
Analista de Suporte
Tel: +55 (21) 97449-8138

reply via email to

[Prev in Thread] Current Thread [Next in Thread]