Mostrar qual arquivo remoto está escrevendo meu arquivo

5

Eu sei que parece 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 criando continuamente 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 000tornar o diretório un-writable na esperança de travar os scripts. Nenhum deles funciona.

YankeeWhiskey
fonte

Respostas:

2

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

Nykakin
fonte
Finalmente consegui matar todos os scripts em execução em todas as máquinas. Obrigado.
YankeeWhiskey
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á qualquer porta 22 em um arquivo originado da caixa, que ficará muito grande rapidamente, 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
Paulo
fonte
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 whowatch no entanto, você será capaz de ver facilmente quem está conectado a quem e usando o que.

u8sand
fonte