Telegram: verstuur een bericht (Linux)

Zorg dat je een Telegram bot hebt gemaakt, om te zien hoe je dat moet doen kijk je hier !

Wij maken een simple scriptje die een bericht stuurt op het moment dat iemand inlogt op de shell.
De bestanden kun je zelf maken of hier downloaden:

Hier kun je de nieuwste versie vinden:
https://github.com/bertman80/telegram-send
https://github.com/bertman80/telegram

nano /usr/bin/telegram-send

GROUP = groepid of je eigen gebrukersid. Deze kun je opvragen door deze toe te voegen https://t.me/idbot en type dan in /getid
BOT_TOKEN = is de unieke bot code die je gekregen hebt bij het aanmaken van de bot.

#!/bin/bash
# telegram basic send module
# this script just send 
# location file: 
#     sudo cp telegram_send /usr/bin/telegram-send
#     sudo chmod +x /usr/bin/telegram-send
# Group_id is number from the reveived user or group
# Bot_token is number you get when telegramuser is created

GROUP_ID=<GROUP_ID> 
BOT_TOKEN=<BOT_TOKEN>

# this 3 checks (if) are not necessary but should be convenient
if [ "$1" == "-h" ]; then
  # Help
  echo ""
  echo "Help `basename $0`"
  echo "Usage: `basename $0` \"text message\""
  echo ""
  exit 0
fi

if [ -z "$1" ]
  then
    # Missing text
    echo ""
    echo "Error: Missing argument"
    echo "Usage: `basename $0` \"text message\""
    echo ""
    exit 0
fi

if [ "$#" -ne 1 ]; then
    # Multiple arguments
    echo ""
    echo "Error: One argument allowed."
    echo "Usage: `basename $0` \"text message\""
    echo ""
    exit 0
fi

curl -s --data "text=$1" --data "chat_id=$GROUP_ID" 'https://api.telegram.org/bot'$BOT_TOKEN'/sendMessage' > /dev/null
chmod +x /usr/bin/telegram-send

Even testen:

telegram-send "Test message"

Als je een bericht hebt ontvangen, dan kun je verder gaan.

Function send message when logon

Wij gaan nu een script maken die op wordt gestart op het moment dat je inlogt,

nano /etc/profile.d/login-notify.sh
#!/bin/bash
    
# prepare any message you want
login_ip="$(echo $SSH_CONNECTION | cut -d " " -f 1)"
login_date="$(date +"%e %b %Y, %a %r")"
login_name="$(whoami)"

# For new line I use $'\n' here
message="New login to server"$'\n'"$login_name"$'\n'"$login_ip"$'\n'"$login_date"

#send it to telegram
telegram-send "$message"

Log nu opnieuw in op de Shell en kijken of het werk !

bron: https://bogomolov.tech/Telegram-notification-on-SSH-login

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.