Como ser notificado (executar script) em cada conexão SSH?

1

Eu posso executar um script automaticamente toda vez que eu fizer login na minha máquina via SSH, colocando um comando no arquivo /etc/ssh/sshrc . Isso funciona perfeitamente, no entanto, só é acionado quando eu faço login via terminal ou por um navegador de arquivos SFTP, como Transmitir .

Ele não executa meu script quando eu me conecto a uma instância do MySQL ou do MongoDB por SSH (onde o host do banco de dados é localhost através de um túnel SSH, veja abaixo).

Como posso garantir que este script seja executado em cada conexão SSH com o servidor?

    
por Matt Reyer 30.03.2015 / 04:44

1 resposta

0

Existem diferentes maneiras:

  • use um script ~/.ssh/rc ;
  • use a palavra-chave ForceCommand em sshd.conf dizendo sshd para executar um comando em cada login (mas isso também fará sshd ignorar qualquer comando fornecido pelo cliente e ~/.ssh/rc se presente).
  • monitore /var/log/auth usando uma ferramenta como logwatch .

Assumo que usar um script rc é a solução mais fácil.

    
por tohuwawohu 30.03.2015 / 19:10