Membuat SMS Gateway dengan Gammu Menggunakan GSM Modem ZTE MF190

wammu-logo
Pada percobaan ini saya membuat sms gateway dengan gammu. Modem yang saya gunakan adalah ZTE MF190. Operating System yang saya gunakan adalah Ubuntu Gnome 14.04 LTS. Pembahasan pada tahap pertama ini adalah bagaimana mengkonfirgurasi modem ZTE MF190 untuk bisa bekerja dengan system gammu sms-gateway. Modem ZTE MF190 tidak langsung bisa sebagai modem untuk sms. Modem tersebut harus dilakukan switching mode untuk bisa bekerja sebagai modem sms. Saya menggunakan lsusb untuk mengetahui apakah modem usb tersebut sudah tertedeksi dengan benar atau belum.

juang@trial:~$ lsusb
Bus 004 Device 004: ID 0bda:5603 Realtek Semiconductor Corp.
Bus 004 Device 003: ID 0458:0152 KYE Systems Corp. (Mouse Systems)
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 19d2:2000 ZTE WCDMA Technologies MSM MF627/MF628/MF628+/MF636+ HSDPA/HSUPA
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


Ada yang aneh dari hasil lsusb. Dimana tidak terdapat modem MF190 sesuai product yang saya colok ke port USB, dan yang ada malah MF seri 6xx. Pada kondisi ini, modem manager GUI juga tidak mendeksi adanya modem MF190 ataupun MF seri 6xxx.

Langkah lebih lanjut adalah dengan melakukan configurasi dengan usb_modeswitch. Namum terlebih dahulu kita harus tau target product yang ada pada device modem tersebut. Dan untuk melihat list product pada modem ini saya menggunakan perintah berikut:

juang@trial:~$ cd Documents/
juang@trial:~/Documents$ tar -xzvf /usr/share/usb
usb-creator/    usb_modeswitch/
juang@trial:~/Documents$ tar -xzvf /usr/share/usb_modeswitch//configPack.tar.gz 19d2\:2000


dari hasil perintah tersebut adalah sebuah file 19d2\:2000 di folder Documents yang isinya adalah sebagai berikut:

# ZTE devices
TargetVendor= 0x19d2
TargetProductList="0001,0002,0015,0016,0017,0019,0031,0033,0037,0052,0055,0061,0063,0064,0066,0091,0108,0117,0128,0157,0177,1402,2002,2003"
StandardEject=1
MessageContent="55534243123456702000000080000c85010101180101010101000000000000"


Pada target product list saya memilih code product 0117. Terkadang code product 0117 bisa terlihat saat modem sudah tercolok di USB port saat komputer/laptop startup. Namun itu jika saya sedang beruntung akan mendapatkannya, malah yang sering terjadi jarang berhasil mendapat code product 0117 dan sering sekali masuk ke code product 2000 walaupun sudah coba restart berulang kali. Hingga akhirnya saya menyimpulkan secara default code product 2000 tidak bisa digunakan sebagai modem usb pada MF190.

Setelah mendapatkan target product list tersebut, saya langsung mengedit /etc/usb_modeswitch.conf, menambahkan configurasi pada bagian bawah file sebagai berikut:


DefaultVendor=0x19d2
DefaultProduct=0x2000

TargetVendor=0x19d2
TargetProduct=0x0117

TargetProductList="0001,0002,0015,0016,0017,0019,0031,0033,0037,0052,0055,0061,0063,0064,0066,0091,0108,0117,0128,0157,0177,1402,2002,2003"
StandardEject=1
MessageContent="55534243123456702000000080000c85010101180101010101000000000000"


Setalah save, untuk menjalankan konfigurasi tersebut saya menggunakan perintah: sudo usb_modeswitch -c /etc/usb_modeswitch.conf. Dan hasilnya adalah sebagai berikut:

Warning: TargetProductList overrides TargetProduct!
Look for target devices ...
 No devices in target mode or class found
Look for default devices ...
   product ID matched
 Found devices in default mode (1)
Access device 005 on bus 001
Current configuration number is 1
Use interface number 0
Use endpoints 0x01 (out) and 0x81 (in)

USB description data (for identification)
-------------------------
Manufacturer: ZTE,Incorporated
     Product: ZTE WCDMA Technologies MSM
  Serial No.: MF1900ZTED010000
-------------------------
Sending standard EJECT sequence
Looking for active driver ...
 No active driver found. Detached before or never attached
Set up interface 0
Use endpoint 0x01 for message sending ...
Trying to send message 1 to endpoint 0x01 ...
 OK, message successfully sent
Read the response to message 1 (CSW) ...
 Response successfully read (13 bytes).
Trying to send message 2 to endpoint 0x01 ...
 OK, message successfully sent
Read the response to message 2 (CSW) ...
 Response successfully read (13 bytes).
Trying to send message 3 to endpoint 0x01 ...
 OK, message successfully sent
Read the response to message 3 (CSW) ...
 Response reading failed (error -9)
 Device is gone, skip any further commands
-> Run lsusb to note any changes. Bye!


Akhirnya seri MF190 muncul juga dan disini saya merasa senang. 🙂
Dan ketika di check dengan lsusb terlihat hasil berbeda dengan sebelumnya:

Bus 004 Device 004: ID 0bda:5603 Realtek Semiconductor Corp.
Bus 004 Device 003: ID 0458:0152 KYE Systems Corp. (Mouse Systems)
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 19d2:0117 ZTE WCDMA Technologies MSM
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub



Begitu juga pada modem manager yang tadinya tidak muncul mobile broadband sekarang muncul mobile broadband network manager.

modem-manager

Langkah berikutnya adalah dengan menginstall gammu dengan perintah sudo apt-get install gammu. Setelah terinstall tahap berikutnya saya melakukan check apakah modem terdeteksi oleh gammu dengan perintah sudo gammu-detect.

 

juang@trial:~$ sudo gammu-detect
[sudo] password for juang:
; Configuration file generated by gammu-detect.
; Please check The Gammu Manual for more information.

[gammu]
device = /dev/ttyUSB0
name = Phone on USB serial port ZTE_Incorporated ZTE_WCDMA_Technologies_MSM
connection = at

[gammu1]
device = /dev/ttyUSB1
name = Phone on USB serial port ZTE_Incorporated ZTE_WCDMA_Technologies_MSM
connection = at

[gammu2]
device = /dev/ttyUSB2
name = Phone on USB serial port ZTE_Incorporated ZTE_WCDMA_Technologies_MSM
connection = at

...


Dari hasil gammu-detect memperlihatkan model terkoneksi pada beberapa port yaitu di ttyUSB0 hingga ttyUSB2. Pada tahap ini saya tidak bisa menentukan port nama yang sedang digunakan oleh gammu untuk terhubung dengan modem. Pada tahap ini saya tidak punya cara lain selain mencoba ttyUSB0 hingga ttyUSB2.

Tahap berikutnya adalah konfigurasi sudo gammu-config untuk melakukan test sms pertama kali.

gammu-config-r1
Untuk port bisa di coba dari ttyUSB0 jika tidak berhasi maka pindah portnya ke ttyUSB1 dst.

Untuk test sms saya melakukan perintah sudo gammu sendsms TEXT 08xxxxxxxxx -text "Halooo from ttyUSB1 ..". Jika salah port maka gammu akan merespon:

No response in specified timeout. Probably phone not connected.



Dan jika berhasil gammu akan merespon:

If you want break, press Ctrl+C...
Sending SMS 1/1....waiting for network answer..OK, message reference=41



berikut hasilnya di handphone saya:

sms-hasil-r1

Tethering Raspberry Pi dengan Android

Linux adalah operating system yang tidak bisa terlepas dari kebutuhan terhadap internet. Untuk mendapatkan update system dan install software, Linux harus terhubung dengan repositorynya. Walapun sudah ada yang mengimplementasikan methode offline installer seperti apt-web atau alldeb yang digarap oleh teman-teman di Ubuntu-Indonesia, tetap saja untuk mendapatkan pertama kali dependency atau package tersebut membutuhkan internet.

Raspbian termasuk operating system berbasis Linux yang tentunya membutuhkan koneksi internet. Ada beberapa cara untuk Raspi mendapatkan koneksi internet, salah satunya adalah dengan tethering dengan ponsel Android. Mungkin di rumah mendapatkan koneksi internet dari router, namun ada saatnya kita tidak berada di rumah dan memerlukan Raspi untuk tersambung ke internet. Menurut saya, ini adalah cara paling mudah.

Pada artikel ringan ini, saya melakukan percobaan menggunakan wifi tethering Android dengan tujuan update dan install software untuk Raspberry Pi. Dalam percobaan ini saya menggunakan Android pada Oppo R831K dan Raspberry Pi model B tanpa bantuan monitor pada port HDMI.

  1. Langkah pertama adalah melakukan setup enable wifi hotspot pada wireless setting sebagai berikut:
    portable-wifi-hotspot
  2. Kemudian melakukan setting SSID seperti berikut ini pada setup wifi hotspot:
    ssid-pass
  3. Setelah semua setting selesai, saya meng-install aplikasi Network Scanner untuk mencari IP address dari Raspi dan juga laptop yang nantinya akan remote connection dengan SSH. Aplikasi Network Scanner bisa didownload disini.
  4. Berikutnya adalah melepas SD card pada raspi dan memasangnya di card reader. Seperti yang saya lakukan pada percobaan sebelumnya, SD card akan dimounting di /media/[user]/ dan akan diedit network interfacenya sesuai dengan SSID pada Android tadi. Pada console lebih lengkapnya perintah tersebut adalah sebagai berikut:

    jxvn@X452C:~ > sudo kate /media/jxvn/f24a4949-f4b2-4cad-a780-a138695079ec
    /etc/network/interfaces
    



    Pada file network interfaces di bawah, saya sesuaikan (highlighted) dengan setting pada android tadi:

    auto lo
    iface lo inet loopback
    
    auto wlan0
    iface wlan0 inet dhcp
            wpa-ssid "androidku"
            wpa-psk 12345678
    iface eth0 inet dhcp
    



    Saya lepas SD card dan pasang pada Raspberry Pi dan langsung saya hubungkan dengan power adaptor. LED pada USB wifi adaptor menyala menandakan initialize daemon pada Raspi berhasil login ke SSID tadi. 🙂

  5. Tahap selanjutnya adalah melakukan scan jaringan untuk mendapatkan IP address dari Raspberry Pi dan juga laptop yang nanti akan melakukan remote connection. Berikut hasil scan dari aplikasi Network Scanner setelah saya koneksikan Raspi dan laptop ke SSID “androidku”.
    network-scan
    Masing-masing device dapat dikenali dari dari mac-address dan juga vendor dari adapter yang digunakan. Tampak pada hasil scan, IP address Raspi berada di 192.168.43.209. Dan device diatasnya adalah laptop yang nanti akan remote connection. Berikut hasil remote connection dengan SSH:
    tethering-update

Demikian percobaan saya untuk tethering Raspi dengan Android.

Salam,
Juang Nakarani

Remote Desktop Raspi dengan XRDP

Pada kesempatan sebelumnya, saya melakukan percobaan remote SSH pada Raspi. Dan kali ini saya melanjutkan percobaan remote dekstop dengan XRDP.

XRDP adalah sebuah project open source remote dekstop protokol (RDP) server dimana XRDP ini menggunakan Xvnc dan X11rdp untuk memanage X-session.

Pada percobaan ini saya menggunakan Linux dengan Dekstop cantik KDE. Melalui remote SSH, berikut perintah untuk menginstall XRDP:

pi@raspberrypi ~ $ sudo apt-get install xrdp
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  tightvncserver xfonts-base
Suggested packages:
  tightvnc-java
The following NEW packages will be installed:
  tightvncserver xfonts-base xrdp
0 upgraded, 3 newly installed, 0 to remove and 22 not upgraded.
Need to get 7219 kB of archives.
After this operation, 11.5 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
...
done (done).

Setelah berhasil Install XRDP, saya check statusnya di initialize daemon untuk memastikan apakah XRDP berjalan dengan baik. Perintahnya adalah sebagai berikut:

pi@raspberrypi ~ $ sudo /etc/init.d/xrdp status
[ ok ] Checking status of Remote Desktop Protocol server: xrdp running.
[ ok ] Checking status of RDP Session Manager: sesman running.


OK tag menunjukkan XRDP running well dan siap untuk diremote. Exit dari SSH remote dan saya beralih ke desktop.

Berikutnya adalah menginstall aplikasi Remmina di komputer desktop. Perintah yang saya gunakan adalah sebagai berikut:

jxvn@X452C:~ > sudo apt-get install remmina
[sudo] password for jxvn: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  remmina-common
Recommended packages:
  remmina-plugin-rdp remmina-plugin-vnc
The following NEW packages will be installed:
  remmina remmina-common
0 upgraded, 2 newly installed, 0 to remove and 47 not upgraded.
Need to get 176 kB of archives.
After this operation, 686 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
...

Pada saat menginstall ini saya tidak memperhatikan hanya remmina-common package saja yang akan diinstall. Seharusnya saya sekalian menginstall remmina-plugin-rdp. Daftar plugin remmina dapat dilihat dengan melakukan perintah install remmina tersebut dan tekan tombol tab untuk munculkan beberapa pilihan. Berikut daftar plugin yang disediakan Remmina:

jxvn@X452C:~ > sudo apt-get install remmina
remmina                   remmina-plugin-nx         remmina-plugin-vnc
remmina-common            remmina-plugin-rdp        remmina-plugin-xdmcp
remmina-plugin-gnome      remmina-plugin-telepathy  


Lalu saya install plugin tersebut:

jxvn@X452C:~ > sudo apt-get install remmina-plugin-rdp

Masih dari console, saya buka Remmina dengan perintah:

jxvn@X452C:~ > sudo remmina

Dan muncul GUI dari Remmina sebagai berikut:
remmina-show

Click pada tombol create new remote file , dan saya isi field pada remote desktop preference sebagai berikut:
remmina-preference

Berhasil, dan muncul tampilan dekstop LXDE Raspi yang pada versi ini mirip dengan look and feel Clearlooks di distro Lubuntu.
remmina-highcolor

Note:
Pada percobaan ini sempat terjadi error serius ketika saya mencoba option depth RemoteFX 32 bpp. Saya belum menelusuri lebih lanjut error tersebut. Sebatas dugaan saya, option tersebut tidak support oleh Raspi, atau mungkin ketika remote XRDP berlangsung bersamaan dengan remote SSH.
Dan anehnya error tersebut mengacu pada partition /boot yang tidak bisa dimounting oleh Raspi.

Berikut tampilan error yang sempat saya ambil gambarnya:
error

Namun pada depth: highcolor 16 bpp remote desktop XRDP berjalan lancar tidak ada masalah. Dan tampilan 16 bpp sudah cukup jernih warna desktopnya.

Demikian percobaan remote dekstop Raspi dengan XRDP, semoga artikel ini bisa menambah pengetahuan tentang Raspberry Pi. Berikut referensi lebih lanjut:
http://www.xrdp.org/

Salam,
Juang Nakarani

Setup Raspberry Pi dengan OS Raspbian Tanpa Monitor

Raspberry Pi, sering juga disingkat dengan nama Raspi, adalah komputer papan tunggal (Single Board Circuit /SBC)yang memiliki ukuran sebesar kartu kredit. Raspberry Pi bisa digunakan untuk berbagai keperluan, seperti spreadsheet, game, bahkan bisa digunakan sebagai media player karena kemampuannya dalam memutar video high definition. Raspberry Pi dikembangkan oleh yayasan nirlaba, Rasberry Pi Foundation yang digawangi sejumlah developer dan ahli komputer dari Universitas Cambridge, Inggris. (id.wikipedia.org)

Layaknya sebuah komputer, Raspi memerlukan Operating System untuk bekerja. OS yang saat ini sudah support dengan Raspi salah satunya adalah Raspbian. Raspbian adalah OS berbasis linux dari Debian 7 (Wheezy). Bagi saya pemilihan dari penggunaan OS sendiri tergantung tujuan dan juga kebiasaan dari user. Saya memilih Raspbian karena kebiasaan saya menggunakan Ubuntu. Dimana Ubuntu adalah distro turunan dari Debian. Dan Debian yang begitu stabil cocok untuk keperluan server. Dan dengan raspbian ini saya akan menggunakan Raspberry Pi sebagai mini server dari sebuah system micro-controller dan mobile phone pada lingkup Local Area Network di rumah. Sangat seru sekali, 🙂 mari kita mulai.

  1. Langkah pertama adalah download image dari OS Raspbian disini, lalu extract file.zip pada sebuah directory. Disini saya akan membahas installasi dengan OS Linux. Bagi pengguna Windows dapat click referensi berikut untuk menginstall Raspbian dari OS Windows.
  2. Setelah download selesai, lakukan check SHA1SUM untuk memastikan bahwa image OS yang kita download apakah korup atau tidak.

    jxvn@X452C:~ > sha1sum /home/jxvn/Downloads/2015-02-16-raspbian-wheezy.zip 
    b71d7b61f44e9bd582df71c9be494c271c97650f  /home/jxvn/Downloads
    /2015-02-16-raspbian-wheezy.zip
    


    raspbiansha1sum-r1

    Jika hasil sha1sum sama dengan yang tercantum di official web-site Raspberry Pi maka image OS Raspbian yang didownload tidak ada masalah.

  3. SD card yang disarankan minimal berkapasitas 4Gb. Setelah SD card siap, masukkan ke dalam card reader lalu lakukan perintah df -h untuk check kapasitas dari partisi dari SD card.

    jxvn@X452C:~ > df -h
    Filesystem                 Size  Used Avail Use% Mounted on
    /dev/mapper/mint--vg-root  457G  236G  199G  55% /
    none                       4,0K     0  4,0K   0% /sys/fs/cgroup
    udev                       2,7G  4,0K  2,7G   1% /dev
    tmpfs                      542M  1,4M  541M   1% /run
    none                       5,0M     0  5,0M   0% /run/lock
    none                       2,7G   76K  2,7G   1% /run/shm
    none                       100M  8,0K  100M   1% /run/user
    /dev/sda1                  236M   45M  179M  21% /boot
    /dev/mmcblk0p1             3,8G  4,0K  3,8G   1% /media/jxvn/16FC-53B1
    


    terlihat mounting SD card pada /dev/mmcblk0p1. Adakalanya SD-card terlihat sebagai /dev/sdd1. Dan jika partisinya tunggal akan terlihat seperti contoh di atas, namun jika lebih dari satu akan terlihat beberapa partisi. Pada kasus lebih dari satu partisi saya akan delete semua dan format ulang sehingga semua SD card akan digunakan oleh Raspberry Pi.

  4. Langkah berikutnya adalah dengan melakukan umount pada SD card tersebut. Begitu juga apabila kita tidak ingin menghapus partisi lainnya semua juga tetap harus di umount. Dengan di umont maka system akan dapat menjalankan semua process copy image OS ke SD card.

    jxvn@X452C:~ > umount /dev/mmcblk0p1 
    

  5. Langkah terakhir adalah dengan melakukan perintah dd untuk menulis image ke dalam SD card. perintah dd ini memerlukan hak akses super user dengan menambahkan sudo. Dan perlu diketahui dalam proses dd ini tidak terlihat progress bar, sehingga kita tidak perlu mengira bahwa system sedang error atau tidak terjadi apa-apa. Namun kita tetap bisa melihat prosesnya melalui LED pada harddisk-process atau pada card reader yang berkedip saat process dd berlangsung. Lama proses writting to disk sekitar 7-10 menit tergantung pada kinerja processor yang dipakai. Berikut perintah dd secara lengkap (highlighted) dan line information dibawahnya akan muncul setelah proses complete.
  6. jxvn@X452C:~ > sudo dd bs=4M if=/home/jxvn/Downloads/
    2015-02-16-raspbian-wheezy.img of=/dev/mmcblk0
    [sudo] password for jxvn: 
    781+1 records in
    781+1 records out
    3276800000 bytes (3,3 GB) copied, 674,107 s, 4,9 MB/s
    

Langkah berikutnya adalah melakukan pengaturan pada network interface Raspi ke dalam satu jaringan dengan komputer desktop. Pengaturan network interface di Linux berbeda dengan Windows. Linux menggunakan konfigurasi berbasis text sedangkan Windows hanya berbasis GUI. (CMIIW)
Namun sebelum melakukan pengaturan network interface, saya menggunakan topologi jaringan sebagai berikut:
topologi
Router sebagai gateway ke internet dan juga sebagai switch-hub antar clientnya. Dengan demikian antara desktop dengan Raspi bisa terhubung dalam satu jaringan.
Pada percobaan ini saya menggunakan USB wifi adapter sehingga Raspi lebih portable terhadap tempat dan juga akan terlihat lebih rapi. 🙂
raspi-pic

Letak directory SD card pada linux akan di mount di directory: /media/hostname/. Pada contoh sebagai berikut:

jxvn@X452C:~ > ls /media/jxvn/
f24a4949-f4b2-4cad-a780-a138695079ec


Tentunya berbeda komputer nama directory SD card tidak sama. Pada contoh ini di komputer saya SD card di mounting di f24a4949-f4b2-4cad-a780-a138695079ec.Jika kita lihat isi dari directory tersebut adalah file system dari Raspbian. Ketik perintah ls untuk melihat isi directory tersebut.

jxvn@X452C:~ > ls /media/jxvn/f24a4949-f4b2-4cad-a780-a138695079ec/
bin   dev  home  lost+found  mnt  proc  run   selinux  sys  usr
boot  etc  lib   media       opt  root  sbin  srv      tmp  var

Letak file konfigurasi network interfaces berada pada /etc/network/interfaces, Lalu edit file network interface tersebut sebagai berikut:

pi@raspberrypi ~ $ sudo nano /media/jxvn/f24a4949-f4b2-4cad-a780-a138695079ec/etc/network/interfaces 


Interface disesuaikan dengan media yang digunakan. Pada percobaan ini saya menggunakan USB wifi adapter sehingga yang harus diedit adalah wlan0. Jika kita menggunakan ethernet, maka yang di edit adalah eth0. Pada konfigurasi ini saya membiarkan eth0 default DHCP. Konfigurasi saya lebih lengkapnya sebagai berikut

auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet dhcp
        wpa-ssid "nama_ssid"
        wpa-psk 12345678
iface eth0 inet dhcp

Tekan CTRL+X untuk exit dari text editor nano, lalu tekan “y” untuk konfirmasi save change. Lepas SD card dengan safely remove device dan pasang pada Raspi .

Dan ketika Raspi startup, network interfaces daemon akan melakukan login ke SSID dengan password tersebut. Jika berhasil LED pada wifi adapter akan menyala. Raspi sudah siap untuk diremote dengan komputer desktop.

Remote Raspi dengan console linux dengan mengetik perintah sebagai berikut:

jxvn@X452C:~ > ssh pi@192.168.2.100


Pada perintah ssh di atas akan menampilkan sebagai berikut:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
09:c5:47:68:b6:c1:4d:4c:ef:76:d3:b5:9b:47:4b:8a.
Please contact your system administrator.
Add correct host key in /home/jxvn/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/jxvn/.ssh/known_hosts:4
  remove with: ssh-keygen -f "/home/jxvn/.ssh/known_hosts" -R 192.168.2.100
ECDSA host key for 192.168.2.100 has changed and you have requested strict checking.
Host key verification failed.

Peringatan di atas disebabkan oleh key verification yang tidak diketahui oleh Raspbian. Dan untuk mengatasi hal tersebut digunakan option keygen secara rekursif pada IP Address Raspi. Berikut perintah tersebut:

jxvn@X452C:~ > ssh-keygen -R 192.168.2.100
# Host 192.168.2.100 found: line 4 type ECDSA
/home/jxvn/.ssh/known_hosts updated.
Original contents retained as /home/jxvn/.ssh/known_hosts.old


Lalu langsung kita lakukan perintah SSH sebagai berikut:

jxvn@X452C:~ > ssh pi@192.168.2.100
The authenticity of host '192.168.2.100 (192.168.2.100)' can't be established.
ECDSA key fingerprint is 09:c5:47:68:b6:c1:4d:4c:ef:76:d3:b5:9b:47:4b:8a.
Are you sure you want to continue connecting (yes/no)? 


Perubahan terjadi disini, yang tadinya muncul warning sudah tidak lagi muncul. ketik “yes” untuk melanjutkan remoting. Dan session console akan tertutup. Ulangi lagi perintah SSH tersebut maka akan muncul proses yang kita tunggu dari tadi:

jxvn@X452C:~ > ssh pi@192.168.2.100
pi@192.168.2.100's password: 
Linux raspberrypi 3.18.7+ #755 PREEMPT Thu Feb 12 17:14:31 GMT 2015 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

NOTICE: the software on this Raspberry Pi has not been fully configured. Please run 'sudo raspi-config'

pi@raspberrypi ~ $ 


Nah, dari sini Raspi sudah berhasil di remote walaupun belum terkonfigurasi secara penuh. Dan sekarang saatnya melakukan full configuration SSH melalui raspi-config

  1. Raspberry Configuration

    pi@raspberrypi ~ $ sudo raspi-config
    
    

  2. Maka akan muncul menu konfigurasi sebagai berikut. Pilih advanced options.
    raspi-config

  3. Tampilan pilihan advanced options sebagai berikut, lalu pilih SSH – enable/disable remote command line.
    raspi-config-enable-ssh
  4. Enter enable SSH. Dan Raspberry Pi siap untuk diremote via SSH melalui komputer desktop.
    raspi-config-enable-ssh-enable

Demikian proses setup Raspberry Pi dengan Raspbian, semoga artikel ini dapat membantu teman-teman yang sedang akan mencoba mini komputer Raspberry Pi.

Salam
Juang Nakarani