lostyazilim
tr.link

Twitter Üzerinden Server Kontrolü

7 Mesajlar 1.856 Okunma
lstbozum
tr.link

digitall digitall www.halitalptekin.com Kullanıcı
  • Üyelik 05.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek Security Consultant
  • Konum
  • Ad Soyad ** **
  • Mesajlar 223
  • Beğeniler 0 / 35
  • Ticaret 18, (%100)
Twitter'ın sms ile iletim özelliğini kullanarak serverımla ilgili bilgileri almak uzun süredir düşündüğüm birşeydi.Onu bugün gerçekleştirdim.Artık serverımda olup bitenleri belirli aralıklarla cep telefonuma alıyorum.Bu gelen mesajlarda serverdaki toplam bağlantı,syn paketleri,ram ve cpu kullanımı gibi bilgiler içeriyor.Böylelikle herhangi bir olağandışı durumda hemen müdahale etme şansım oldu.Bu sistemi biraz daha geliştirip Twitter üzerinden sistemde komut çalıştırma hatta SmsBlog uygulaması yapacağım.Bunlarla ilgili çalışmalara da çok yakında başlamayı düşünüyorum.

Bu sistem için tweepy kullandım.Bunu kurmak için öncelikle aşağıdaki komutu girmeniz lazım.

easy_install tweepy
Veya

pip install tweepy
Daha sonra buradaki linkle girip gerekli yerleri dolduruyoruz.Daha sonra Create Your Twitter App dedikten sonra uygulamamız karşımıza gelecek.Burada Settings sekmesinden Access bölümüne geçip Read, Write and Access direct messages'ı seçiyoruz.OAuth tool sekmesinden bulunan Consumer key: ile Consumer secret: lerimizi bir kenara kaydediyoruz.

ACCESS_KEY ve ACCESS_SECRET imizi öğrenmek için bir ufak bir kod yazmamız lazım.

#!/usr/bin/env python
import tweepy
CONSUMER_KEY = 'consumer_key buraya yazin'
CONSUMER_SECRET = 'consumer_secret buraya yazin'
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth_url = auth.get_authorization_url()
print 'Onaylama: ' + auth_url
verifier = raw_input('PIN: ').strip()
auth.get_access_token(verifier)
print "ACCESS_KEY = '%s'" % auth.access_token.key
print "ACCESS_SECRET = '%s'" % auth.access_token.secret
Yukarıdaki kodumuzu python ile çalıştırdıktan sonra önümüze bir link çıkacak.O linke giriş yaptığımızda pin kodu ekrana gelecek.O pin kodunu konsolda bekleyen satıra yazıyoruz.Böylelikle bize ACCESS_KEY ile ACCESS_SECRET kodumuzu geri döndürecek.


Şimdi de deneme tweetimizi atalım.Aşağıdaki kod ile serverınızla ilgili bazı bilgileri alabilirsiniz.

#!/usr/bin/env python
import tweepy
import os
import commands
consumer_anahtari = 'consumer_key yaziniz'
consumer_gizli = 'consumer_secret yaziniz'
giris_anahtari = 'access_key yaziniz'
giris_gizli = 'access_secret yaziniz'
baglanti = commands.getoutput('echo `netstat -an|wc -l`')
load = commands.getoutput("""uptime | awk -F "load average: " '{ print $2 }' | cut -d, -f1 | cut -d. -f1""")
syn = commands.getoutput('netstat -n | grep SYN | wc -l')
memory = commands.getoutput("""free -t -m | grep "Total" | awk '{ print "Kullanilan : "$3" MB Bosta : "$4" MB";}'""")
auth = tweepy.OAuthHandler(consumer_anahtari, consumer_gizli)
auth.set_access_token(giris_anahtari, giris_gizli)
api = tweepy.API(auth)

api.update_status("Toplam " + baglanti + " baglanti var.Sistem load su anda " + load + " .Toplam " + syn + " syn paketi bulundu. " + memory + " ." )

Örnek twitter gönderisi aşağıdaki gibi oluyor.Sizde yukarıdaki kodda değişiklikler yapıp istediğiniz herhangi bir komutu çalıştırıp twittera bildirebilirsiniz.Yukarıda yer alan commands.getoutput(' ') içine istediğiniz bir komutu çalıştırabilirsiniz.Örneğin nginx'e restart attırabilir,cacheleri boşaltabilir,sql yedeğinizi alabilirsiniz.Bundan sonrası sizin hayal gücünüze kalıyor.



Ve cep telefonuma gelen sms örneği.



Yukarıdaki dosyayı python dosyası olarak kaydedip cronjob eklerseniz belirli aralıklarla twitter'a gönderebilirsiniz.Bunun için crontab -e komutu ile cron listenizi açın ve aşağıdaki satırı ekleyin.(Aşağıdaki satır ile dosyayı 4 saatte bir çalıştırabilirsiniz.Eğer başka zamanlarda çalıştırmak isterseniz google'da crontab kullanımı diye aratabilirsiniz.)

0 */4 * * * /usr/bin/python /root/hdblogstatus.py



Artık 4 saatte bir server durumunu tweet olarak atıyoruz.Sıra bu bilgileri telefonumuza almakta.Bunun için twitterımıza giriş yapıp buradaki bölüme geçiyoruz.Burada yer alan Cep telefonu bildirimlerini etkinleştirdiğin kişilerden gelen tweetler sekmesini işaretliyoruz.Daha sonrada bilgilerimizi paylaştığımız twitter hesabına girip mobil bildirimleri açıyoruz.

Bütün bunları yaptığınızda 4 saatte bir 2444'ten server bilgilerinizi içeren bir sms almanız lazım.Şimdilik bu kadarı benim işimi görüyor.Siz kodu geliştirip ihtiyaçlarınız doğrultusunda geliştirebilirsiniz.

Önemli Not: Bilgilerinizi paylaştığınız twitter hesabının tweetlerini koruma altına almaya unutmayınız.Ve tanımadığınız kişilerin bu bilgilere erişmemesini sağlayınız.

Yukarıdaki python kodunu buradanda indirebilirsiniz.

Kaynak: http://www.halitalptekin.com/makale/server/twitter-uzerinden-server-kontrolu/
TuFFy Cry Ghost

kişi bu mesajı beğendi.

wmaraci
reklam

Cry Cry http://www.kolbozuk.net Kullanıcı
  • Üyelik 07.02.2012
  • Yaş/Cinsiyet 27 / E
  • Meslek Öğrenci
  • Konum İstanbul Avrupa
  • Ad Soyad ** **
  • Mesajlar 870
  • Beğeniler 58 / 170
  • Ticaret 5, (%100)
Oooo 10 numaraymış. Eline sağlık. Benim sunucuya yükleyeyim hemen :D
 

 

digitall digitall www.halitalptekin.com Kullanıcı
  • Üyelik 05.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek Security Consultant
  • Konum
  • Ad Soyad ** **
  • Mesajlar 223
  • Beğeniler 0 / 35
  • Ticaret 18, (%100)

Cry adlı üyeden alıntı

Oooo 10 numaraymış. Eline sağlık. Benim sunucuya yükleyeyim hemen :D


kulananlar bilgi verirse sadece mutlu olurum :D
 

 

GsliKahraman GsliKahraman Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 15.07.2011
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci :)
  • Konum Uşak
  • Ad Soyad ** **
  • Mesajlar 1345
  • Beğeniler 761 / 199
  • Ticaret 2, (%100)
Twitterden gelen smsler ücretsiz dimi? :D
Deneyeceğim.. Haber veririm :)
 

 

wmaraci
wmaraci

digitall digitall www.halitalptekin.com Kullanıcı
  • Üyelik 05.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek Security Consultant
  • Konum
  • Ad Soyad ** **
  • Mesajlar 223
  • Beğeniler 0 / 35
  • Ticaret 18, (%100)

GsliKahraman adlı üyeden alıntı

Twitterden gelen smsler ücretsiz dimi? :D
Deneyeceğim.. Haber veririm :)


tabikide ücretsiz geçen gün büyük bir saldırıyı ufak yavaşlamalarla atlattım :D gece 4te gelen mesajda yüksek syn paketi vardı hemen girip trafiği cloudflare'e alıp ipleri banladım :D
GsliKahraman

kişi bu mesajı beğendi.

GsliKahraman GsliKahraman Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 15.07.2011
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci :)
  • Konum Uşak
  • Ad Soyad ** **
  • Mesajlar 1345
  • Beğeniler 761 / 199
  • Ticaret 2, (%100)
Şimdi yeni bir twitter hesabı mı açacağız bunun için?
 

 

digitall digitall www.halitalptekin.com Kullanıcı
  • Üyelik 05.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek Security Consultant
  • Konum
  • Ad Soyad ** **
  • Mesajlar 223
  • Beğeniler 0 / 35
  • Ticaret 18, (%100)

GsliKahraman adlı üyeden alıntı

Şimdi yeni bir twitter hesabı mı açacağız bunun için?


evet ve twitlerini korumaya almayı unutma

veya ben kendi twitterımda kullancağım dersen o senin bilceğin iş önemli bilgi paylaştırmadıktan sonra farketmez
GsliKahraman

kişi bu mesajı beğendi.

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al