11-27-2015, 12:37 AM
Berawal iseng iseng di google pengen nyari tau gimana bisa tau user yang login ke SSH akhirnya ane menemukan postingan tentang Notifikasi Login SSH Menggunakan Telegram Bot..
Sudah tau apa itu Telegram dan Apa itu Bot??
Silahkan buka google :p
oke disini ane cuma menjelaskan cara membuat notifikasinya saja..
Bagaimana cara membuat Bot Telegram
Silahkan browsing di google :p
Untuk membuat Bot notif ini kita harus punya Bot token yang saat membuat bot sudah dikasih tau Token-nya
yang kedua kita harus tau ID akun telegram yang menerima notif tersebut
dan yang ketiga di server sudah terinstall jq.
Karena saya menggunakan Centos jadi cara install jq cukup dengan
sudo yum install jq
Kemudian untuk mendapatkan ID silahkan kirim pesan ke bot kemudian buka link https://api.telegram.org/bot{BotToken}/getUpdates
maka akan muncul beberapa tulisan atau apalah itu namanya wkwkkwkwkwkkw
disana akan terlihat ID dari user yang mengirim pesan ke bot
dari gambar diatas terlihat kalo id saya ada 133700 << Bukan ID Sebenarnya
Setelah ID dan Token kita dapatkan maka selanjutnya adalah membuat file di /etc/profile.d/ssh-telegram.sh
yang isinya adalah sebagai berikut
Kemudian jangan lupa rubah permission filenya biar bisa di eksekusi dengan cara
chmod +x /etc/profile.d/ssh-telegram.sh
Setelah itu coba login deh ke SSH nya, nanti om Bot bakalan kirim message yang isinya seperti ini :
{USER} logged in to {HOSTNAME (IP SERVER)} From {IP ANDA} - {ISP} - {KOTA} - {Regional} - {Negara} On PORT {SSH_PORT}
Ex
OrangGanteng logged in to server.ganteng.id (127.0.0.1) From 8.8.8.8 - Google - Mountain View - CA - US On PORT 12345
CMIWW... Bot berjalan dengan lancar dan bijaksana
Demi Privacy beberapa tulisan di screenshot terpaksa saya remove
Source : Matriphe
Sudah tau apa itu Telegram dan Apa itu Bot??
Silahkan buka google :p
oke disini ane cuma menjelaskan cara membuat notifikasinya saja..
Bagaimana cara membuat Bot Telegram
Silahkan browsing di google :p
Untuk membuat Bot notif ini kita harus punya Bot token yang saat membuat bot sudah dikasih tau Token-nya
yang kedua kita harus tau ID akun telegram yang menerima notif tersebut
dan yang ketiga di server sudah terinstall jq.
Karena saya menggunakan Centos jadi cara install jq cukup dengan
sudo yum install jq
Kemudian untuk mendapatkan ID silahkan kirim pesan ke bot kemudian buka link https://api.telegram.org/bot{BotToken}/getUpdates
maka akan muncul beberapa tulisan atau apalah itu namanya wkwkkwkwkwkkw
disana akan terlihat ID dari user yang mengirim pesan ke bot
dari gambar diatas terlihat kalo id saya ada 133700 << Bukan ID Sebenarnya
Setelah ID dan Token kita dapatkan maka selanjutnya adalah membuat file di /etc/profile.d/ssh-telegram.sh
yang isinya adalah sebagai berikut
Code:
# save it as /etc/profile.d/ssh-telegram.sh
# use jq to parse JSON from ip-api.com
# get jq from here http://stedolan.github.io/jq/
USERID="ISI_DENGAN_USER_ID_ANDA"
KEY="ISI_DENGAN_BOT_TOKEN"
TIMEOUT="10"
URL="https://api.telegram.org/bot$KEY/sendMessage"
DATE_EXEC="$(date "+%d %b %Y %H:%M")"
TMPFILE='/tmp/ipinfo-$DATE_EXEC.txt'
if [ -n "$SSH_CLIENT" ]; then
IP=$(echo $SSH_CLIENT | awk '{print $1}')
PORT=$(echo $SSH_CLIENT | awk '{print $3}')
HOSTNAME=$(hostname)
IPADDR=$(hostname -I | awk '{print $1}')
curl http://ip-api.com/json/$IP -s -o $TMPFILE
CITY=$(cat $TMPFILE | jq '.city' | sed 's/"//g')
REGION=$(cat $TMPFILE | jq '.region' | sed 's/"//g')
COUNTRY=$(cat $TMPFILE | jq '.country' | sed 's/"//g')
ORG=$(cat $TMPFILE | jq '.org' | sed 's/"//g')
TEXT="$DATE_EXEC: ${USER} logged in to $HOSTNAME ($IPADDR) from $IP - $ORG - $CITY, $REGION, $COUNTRY on port $PORT"
curl -s --max-time $TIMEOUT -d "chat_id=$USERID&disable_web_page_preview=1&text=$TEXT" $URL > /dev/null
rm -rf $TMPFILE
fi
Kemudian jangan lupa rubah permission filenya biar bisa di eksekusi dengan cara
chmod +x /etc/profile.d/ssh-telegram.sh
Setelah itu coba login deh ke SSH nya, nanti om Bot bakalan kirim message yang isinya seperti ini :
{USER} logged in to {HOSTNAME (IP SERVER)} From {IP ANDA} - {ISP} - {KOTA} - {Regional} - {Negara} On PORT {SSH_PORT}
Ex
OrangGanteng logged in to server.ganteng.id (127.0.0.1) From 8.8.8.8 - Google - Mountain View - CA - US On PORT 12345
CMIWW... Bot berjalan dengan lancar dan bijaksana
Demi Privacy beberapa tulisan di screenshot terpaksa saya remove
Source : Matriphe