Monitorar o login do SSH via slack, mas trava no SCP

1

Eu estou brincando com alguma integração de folga para que cada tentativa de SSH seja enviada para um canal de folga

O script abaixo funciona perfeitamente para as tentativas de SSH, mas o problema é que quando eu pré-forma um SCP para o servidor a sessão de terminal trava.

Existe uma maneira de permitir isso no script ou na configuração SSH? E existe uma maneira de determinar entre o SSH ou o SCP?

O SSH muda para /etc/ssh/sshd_config

ForceCommand /home/ubuntu/ssh-wrapper  

Suspensão da sessão

% Total % Received % Xferd Average Speed Time Time Time

Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    97  100     2  100    95      4    192 --:--:-- --:--:-- --:--:--   231

Script

#! /bin/bash

# Find the session's remote IP address
ip='echo $SSH_CONNECTION | cut -d " " -f 1'

# Tell Slack we logged in!
curl -XPOST 'webhook goes here' -d '  
 {"text":"We have contact - Server '"$HOSTNAME"' via ssh from '"$ip"'", 
  "username":"SSH Monitor"}'

# Allow the session to run:
${SSH_ORIGINAL_COMMAND:-bash}

# Tell Slack we're logging out!
curl -XPOST 'webhook goes here' -d '  
 {"text":"Somebody disconnected on '"$HOSTNAME"' from '"$ip"'",
  "username":"SSH Monitor"}'
    
por Grimlockz 16.06.2015 / 11:49

1 resposta

0

Adicionado no abaixo, que parece ter funcionado: -)

if echo $SSH_ORIGINAL_COMMAND|egrep -e "^scp " > /dev/null 2>&1; then
$SSH_ORIGINAL_COMMAND
fi
    
por 16.06.2015 / 13:18