Mostrar qual arquivo remoto está escrevendo meu arquivo

5

Eu sei que soa engraçado. Eu escrevi um shell script e executei em uma máquina remota para o ssh de volta à minha máquina local para gravar alguns arquivos. Eu executei o script em várias máquinas remotas e não me lembro onde elas estão. Agora eu não posso matar um ou mais deles porque eu esqueci qual (is) máquina (s) estão ativados e eles estão continuamente criando novos arquivos em minha máquina local. Então, há alguma maneira de ver qual máquina remota está acessando meu arquivo local? Estou executando um sistema operacional Debian e não tenho acesso root.

EDIT: eu tentei remover os arquivos afetados, mas assim que eu removê-los novos arquivos são criados pelo script em execução na (s) máquina (s) remota (s). Eu também tentei chmod 000 para tornar o diretório un-writable na esperança de travar os scripts. Nenhum deles funciona.

    
por YankeeWhiskey 05.02.2013 / 03:17

3 respostas

2

Todas as tentativas de login do ssh devem ser registradas em /var/log/auth.log, e o exame desse arquivo pode ajudá-lo a encontrar essas máquinas remotas.

    
por 05.02.2013 / 04:51
0

Você poderia fazer

$ while true; do netstat -an | grep \:22 |  cut -b45-90 | grep -v \:22 | grep ESTABLISHED >> watch22.txt; sleep 5; done 

Portanto, isso colocará as conexões da porta 22 em um arquivo originado da caixa, o que será bastante rápido, pois continuará adicionando as mesmas conexões quando nada estiver acontecendo. Mas se você executá-lo por um período suficientemente longo, você pegará os culpados:

$ cat watch22.txt

146.148.41.2:44996      ESTABLISHED
10.2.1.25:52414         ESTABLISHED
146.148.41.2:44996      ESTABLISHED
10.1.1.25:52414         ESTABLISHED
146.148.41.2:44996      ESTABLISHED

E você pode filtrar isso facilmente para uma lista de IPs exclusivos:

$ cat watch22.txt | cut -d\: -f1 | sort -u
10.1.1.25
146.178.41.2
    
por 05.02.2013 / 04:14
0

Eu gostaria de recomendar o utilitário simples whowatch. Ele mostrará a você os usuários logados no sistema (no qual ele é executado). De lá você pode selecionar o usuário (dirá "sshd" se estiver usando ssh) e matar / interromper o processo principal na árvore (desconectando a sessão) - mas isso requer raiz.

Com o whowatch, você poderá ver facilmente quem está conectado a quem e usando o que.

    
por 05.02.2013 / 05:31

Tags