Friday, May 30, 2014

Laporkan Alamat IP: untuk mantan pengguna dyndns versi gratis

Gw memiliki sebuah wd-booklive (berbasis debian) yang terletak di suatu tempat yang dirahasiakan :) dan gw jadikan server torrent mempergunakan transmission dengan web-ui dan biasanya gw akses (via port-forward di router) via dyndns domain name (*.dyndns.com) dikarenakan ip yang didapatkan dari provider dynamic

Sebagai salah satu pengguna tetap dyndns versi gratis, dan dikarenakan router yang gw pergunakan mendukung (via web management) dyndns untuk dynamic dns gw merasakan kesulitan karena sejak negara api menyerang (:P) maka layanan ini sudah ditiadakan oleh dyndns :(. 

Dari dulu, gw pengen sekali ngebuatin script untuk kirim info ip saat mesin gw booting, dan baru bisa di wujudkan hari ini. Lewat googling, gw menemukan sebuah link di web ini http://elinux.org/RPi_Email_IP_On_Boot_Debian yang berisi bagaimana membuat mesin raspberry melaporkan ip-nya via email. Terdapat beberapa perbedaan, sampai akhirnya gw melakukan beberapa modifikasi sebagai berikut:
y3dips@AliBookLife:~$ cat email_ip.py
import subprocess
import smtplib
import socket
from email.mime.text import MIMEText
import datetime
to = '****a@gmail.com'
gmail_user = 'un****@gmail.com'
gmail_password = '************'
smtpserver = smtplib.SMTP('smtp.gmail.com', 587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(gmail_user, gmail_password)
today = datetime.date.today()
arg="curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'"
p=subprocess.Popen(arg,shell=True,stdout=subprocess.PIPE)
data = p.communicate()
ipaddr = data[0].strip()
my_ip = 'Your ip is %s' %  ipaddr
msg = MIMEText(my_ip)
msg['Subject'] = 'IP For exia on %s' % today.strftime('%b %d %Y')
msg['From'] = gmail_user
msg['To'] = to
smtpserver.sendmail(gmail_user, [to], msg.as_string())
smtpserver.quit()

Kemudian agar setiap reboot maka script tersebut dijalankan, maka cukup ditambahkan ke file /etc/rc.local atau bisa anda jadwal dengan crontab




Sehingga apabila server reboot, saat menyala akan terkirim email seperti berikut:



Apabila anda tidak mendapatkan hasil seperti berikut ini, pastikan dns server di set dengan baik, karena pada mesin wd yang saya miliki, dns akan otomatis di set ke ip mesin sendiri, jadi perlu di set dan ditambahkan info dns secara static pada file /etc/network/interfaces.

Sebenenarnya banyak yang menarik lainnya dari isi wd itu sendiri (eg: hardcoded password) :), tetapi kali ini baru bisa bahas ini. Semoga bermanfaat dan seperti biasa, enjoy \m/.

No comments:

Post a Comment