Belajar Sejarah

Sejak memasuki grade 3, selain memakai CLE kami menambahkan pelajaran sejarah sebagai salah satu materi yang dipelajari oleh Jonathan. Setelah mencari rekomendasi dari group yang diikuti, akhirnya pilihan jatuh ke Story of The World. Sesuai namanya, pelajaran sejarah ini mempelajari sejarah dunia.

Sesuai namanya, Story of The World isinya dalam bentuk cerita

Kemarin, topik yang dipelajari adalah mengenai Shamsi Adad, seorang diktator di kerajaan Assyrian. Pelajaran sebelumnya mengenai Hammurabi yang memerintah di Babylonia. Kedua kerajaan tersebut berada di Mesopotamia. Perbedaan dari Hammurabi dan Shamsi Adad ini dari cara mereka menjadi raja. Pertanyaan yang menarik dari akhir pelajaran adalah: siapakah raja yang lebih baik Hammurabi atau Shamsi Adad?

Ilustrasi dari proyek Undraw

Sebelum bisa menjawab siapa yang lebih baik, saya harus mereview lagi pelajaran mengenai Hammurabi ke Jonathan. Waktu saya sekolah, mungkin pernah dengar nama Hammurabi, tapi saya belum pernah dengar nama Shamsi Adad. Kemungkinan lain, pernah belajar tapi udah lupa hahaha. Salah satu benefit menghomeschool adalah kembali membuka pelajaran supaya bisa mengajar anak, setidaknya kalau belum pernah belajar mengenai ini, saya jadi belajar.

Hammurabi dikenal sebagai raja yang memperkenalkan penggunaan peraturan yang tertulis dan dijadikan acuan dalam mengambil keputusan hukuman. Peraturan yang ditetapkan Hammurabi dituliskan dan dijadikan acuan kalau terjadi pelanggaran di kerajaan Babylonia. Beberapa peraturannya menurut saya agak terlalu kejam karena hukumannya bisa berupa potong lidah atau tangan selain bayar denda. Tapi ya mungkin begitulah cara yang berhasil dilakukan di masa itu.

Berbeda dengan Hammurabi, Shamsi Adad memerintah secara diktator dengan cara kekerasan. Cita-citanya menjadi penguasa alam semesta dengan cara menaklukan lewat perang. Cara perangnya juga kadang-kadang cukup licik, bukan cuma perang dengan pasukan yang banyak, tapi dengan strategi dan meracuni lawan supaya daerahnya bisa diakuisisi. Kalau ada yang tidak menaati perintahnya langsung saja dibunuh. Caranya ini bisa membuat kerajaan Assyrian menjadi cukup luas, tapi akhirnya ketika dia sudah tua, kerajaanya bisa diambil alih oleh Hammurabi dari kerajaan Babylonia.

Kesimpulannya mana yang lebih baik, punya aturan yang jelas (walaupun mungkin aturannya tidak selalu terasa fair tapi ya ada aturan) dibandingkan dengan pemerintahan yang tidak ada aturan yang tertulis dan semua tergantung pada 1 individu. Perintah dari individu ini sifatnya mutlak dan tak terbantahkan, kalau dia sudah bersabda dan tidak dituruti maka orang yang ga nurut ini dihukum mati, kalau orang Medan bilang “sukak-sukaknya aja”. Kalau orang yang memerintah hatinya baik sekalipun tetap saja pola pemerintahan di mana hanya 1 orang yang punya suara ini hasilnya pasti kurang baik.

Untuk menjelaskan kenapa yang satu lebih baik dari yang lain (walaupun tidak ideal), saya dan Joe gak langsung bilang si A lebih baik tapi kami tanya ke Jonathan mana yang menurut dia lebih baik dan apa alasannya.

Dulu bagi saya, pelajaran sejarah ini membosankan dan hapalan mati. Saya ingat ujiannya saya ngapalin isi buku catatan dan gurunya mempertanyakan hampir semua isi buku catatan. Jadi dalam 2 jam saya harus memindahkan isi catatan yang saya hapal mati hahaha. Bedanya dengan pelajaran sejarah yang kami pakai ini, Jonathan bisa belajar dengan mendengarkan audio book sambil membaca bukunya. Setelah mendengarkan ceritanya, selanjutnya ada kegiatan menjawab pertanyaan memastikan anaknya denger dan ngerti, lalu mencari lokasi yang disebutkan dalam peta. Sekarang ini kebanyakan masih sekitar ancient world Egypt, Mesopotamia dan sekitarnya.

Kurikulumnya ini sebenernya bisa untuk kelas 3 sampai high school, ada 4 volume dan kami baru mulai di volume 1. Beberapa homeschoolers bahkan menggunakan kurikulum ini berulang (jadi setelah selesai 4 volume mereka mulai lagi dari volume pertama). Kalau rajin, ada kegiatan craft nya dijelasin di bukunya, tapi untuk sekarang ini kami memilih ga mengerjakan craftnya dulu tapi sekarang cukup kegiatan mewarnainya saja heheh.

Mewarnai tokoh dalam buku SOTW

Rencananya kalau menemukan buku pelajaran sejarah Indonesia, kami juga akan kenalkan sejarah Indonesia ke Jonathan. Untuk sekarang kami cuma kasih tau sedikit mengenai kehidupan papa mamanya jaman dulu dan bedanya dengan dia sekarang sebagai cerita pengantar tidur. Atau juga dia ingat perang Diponegoro itu 1825 – 1830 karena pernah disampaikan sebagai joke. Jonathan juga tau kalau Indonesia mendapatkan kemerdekaannya setelah perang melawan Belanda dan Jepang sedangkan Thailand tidak pernah dijajah.

Jonathan senang mendengarkan cerita-cerita dan cukup bisa lama ingat akan fakta-fakta yang kami sampaikan. Dia juga kami ajarin siapa Presiden Indonesia sekarang ini. Pelajarannya kadang agak random, karena waktu kasih tau soal Indonesia dipimpin presiden, dia akan bertanya kenapa Thailand ada Raja dan Indonesia nggak ada? Nah jadilah penjelasannya soal jenis-jenis pemerintahan yang ada. Kalau ada yang punya rekomendasi pelajaran sejarah Indonesia silakan komen ya.

Menulis Surat

Siapa yang masih sering menulis surat? Baik itu surat di kertas maupun surat elektronik? Sepertinya kebiasaan menulis surat kepada teman dan keluarga ini sudah mulai jarang dilakukan. Waktu Jonathan baru lahir, beberapa bulan pertama dan beberapa ulang tahun pertama, Joe dan saya mencoba untuk mengirimkan e-mail ke account yang kami set-up untuk Jonathan sejak dia lahir. Tapi bebeberapa tahun belakangan ini sudah lama tidak dilakukan lagi. Tulisan ini sekaligus pengingat buat saya untuk kembali lagi menuliskan surat untuk Jonathan dan Joshua. Surat buat mereka baca ketika mereka sudah bisa membaca nantinya.

Mengajak Jonathan ke kantor pos di Thailand

Teringat jaman dulu, salah satu kolom di majalah Bobo itu adalah sahabat pena. Saya ga pernah sih punya sahabat pena, tapi Joe pernah cerita dia pernah punya beberapa sahabat pena. Saya juga tau beberapa teman saya yang rajin kirim-kiriman surat dan punya beberapa sahabat pena. Saya ga ikutan kirim-kirim surat sahabat pena karena saya orangnya pemalu dan ga tahu juga mau nanyain apa di surat, ketemu orang baru aja rasanya sulit untuk bertegur sapa. Beda dengan sekarang, kalau sepertinya lawan bicaranya ga aneh-aneh (objektif terhadap mood), gampang sekali untuk ajak orang ngobrol.

Tahun pertama tinggal di Bandung, saya mulai sering berkirim surat. Kebetulan di kampus ada kantor pos, jadi lebih mudah juga untuk mengirimkan surat balasan.  Saya ingat, dulu saya punya 1 kotak khusus menyimpan surat-surat dari keluarga dan dari sahabat masa SMA. Terakhir saya ingat kotak itu ada di rumah mertua, saya coba membaca beberapa surat dari sahabat SMA saya. Lucu rasanya membaca curhatannya. Membaca surat lama sama seperti membaca posting blog lama, beberapa hal sudah terlupakan dan jadi ingat lagi.

Kadang-kadang saya terima surat dari teman SMP atau teman masa bimbingan belajar, kadang agak bertanya-tanya loh kok dia bisa dapat alamat kost saya ya hehehe. Dulu perasaan senang banget kalau terima surat, apalagi kalau suratnya panjang dan berlembar-lembar, serasa deh ketemu dengan orangnya dan ngobrol panjang lebar. Kadang-kadang saya semangat nerima doang, untuk membalas saya tunda-tunda, terus akhirnya ya ceritanya update yang lain-lain lagi. Sebenarnya beberapa hal pertanyaan-pertanyaan dalam surat ga penting banget juga dibalas langsung, yaaa bayangin aja pos biasa itu bisa 10 hari sampai dari Medan ke Bandung, soalnya emang pake perangko yang murah aja hehehe.

Liburan panjang kenaikan tingkat saya pulang ke Medan selama 2 bulan, beberapa teman kuliah ikutan semester pendek di Bandung. Saya ingat, sempat juga beberapa kali surat-suratan dengan teman kuliah. Mereka cerita seputar semester pendek dan update gossip hahahaha, saya cerita kebosanan liburan dan pengen balik ke Bandung, bukan buat kuliah tapi buat bisa hang out sama temen-temen aja.

Masa-masa nulis surat berlembar-lembar itu saya ingat punya angan-angan andai saja bisa kirim surat digital saja yang ga harus kirim via kantor pos (soalnya saya malas ke kantor pos). Saya gak harus nulis di kertas tapi langsung bisa membalas di bagian pertanyaan. Kira-kira yang saya harapkan waktu itu ya adanya e-mail seperti sekarang ini.

Saya  lupa kapan persisnya mulai kenal e-mail, tapi masa itu teman-teman dan keluarga saya di Medan belum punya e-mail, mereka bahkan masih ga ngerti apa itu internet. Yang saya ingat, saya sering banget tuh nyuruh-nyuruh teman saya bikin e-mail biar gampang ga harus surat-suratan pake pos. Di rumah saya di Medan juga saya minta adik saya install modem biar bisa konek internet dan belajar e-mail. Tapi ya, ga gampang memandu jarak jauh mengenai dial-up modem suapaya bisa berinternet, masa itu belum banyak yang jual buku how-to seperti sekarang.

Sejak e-mail makin populer dan keberadaan warnet mulai lebih banyak dibandingkan wartel, kebiasaan berikirim surat via pos mulai saya tinggalkan. Kontak dengan teman-teman SMA paling lewat telepon atau ketika saya liburan ke Medan saja. Kontak dengan teman kuliah dan beberapa teman lain ya sudah memakai e-mail. Untuk komunikasi ke rumah lebih sering memakai telepon (ke warnet atau saya di telepon). Rasanya menuliskan surat via pos biasa mulai kurang seru, karena lebih cepat ngobrol langsung, update kabar dan langsung dapat respon. Masa itu, kartu telepon atau wartel menjadi lebih sering dikunjungi daripada kantor pos. Kalau lagi liburan ke Medan saya jadi lebih sering ke Warnet dan udah ga pernah lagi ke kantor pos.

Iseng kirim kartu pos dari tempat wisata

Sekarang, sejak memakai media sosial seperti Facebook dan HP yang terkoneksi dengan internet 24 jam, menulis e-mail pun mulai ditinggalkan. Apalagi mama saya juga sudah kenal teknologi internet, tambah lagi berkurang alasan untuk kirim surat. Kalau mau ngobrol ya tinggal kirimkan pesan via WhatsApp, Facebook, Line dan dulu sempat juga pake BBM.  Kalau lagi malas nulis, sering juga pakai video call. Tapi rasanya sekarang ini malah makin jarang berkomunikasi dengan teman masa SMA, ya sebagian juga karena makin lama makin jarang update kabar, jadi paling taunya kabar dari update status mereka di media sosial.

Teknologi memang semakin memudahkan kita untuk berkomunikasi, tapi entah kenapa ada perasaan teknologi chat bikin saya semakin sulit untuk menuliskan banyak hal seperti ketika saya menuliskan surat. Menulis blog ini saja saya sering kehilangan kata-kata untuk mengungkapkan apa yang sebenarnya pengen saya sampaikan. Kebiasaan chat yang saling berbalasan langsung membuat saya tidak bisa mengkomposisikan apa yang ingin saya sampaikan dalam paragraph yang mudah dimengerti dan tidak bertele-tele.

Dipikir-pikir, waktu menuliskan surat, baik itu surat pos biasa ataupun e-mail, saya masih bisa untuk bercerita dengan menggunakan kalimat lengkap yang jelas, saya menyampaikan secara lengkap hal-hal yang ingin saya sampaikan tanpa interupsi oleh penerima surat. Tentunya saya berharap surat saya bisa dimengerti dan jelas mana yang berita dan mana yang pertanyaan. Sekarang ini, kalau saya disuruh menuliskan surat, rasanya suka bingung sendiri mulai dari mana. Bahkan menuliskan blog ini saja saya sepertinya sudah mulai kemana-mana dan ga fokus lagi. Harus lebih sering posting lagi dan lebih sering menuliskan surat.

Oh ya, jadi ingat, waktu masih pacaran saya pernah terima surat dari Joe, ceritanya dia lagi menghemat batere laptop dan ga ada wifi di Airport, jadi untuk mengisi waktu, dia nulis surat ke saya hahaha. Surat fisik begitu bagusnya bisa dibaca berulang-ulang, rasanya membaca surat apalagi dari pacar bikin perasaan makin berbunga-bunga. Jaman awal pacaran, saya dan Joe juga masih sering kirim e-mail. Harus dicari tuh arsipnya buat kenang-kenangan hahahhaa. Kira-kira isi suratnya kayak posting blog ini

Aku Cinta Padamu

 

Kesimpulannya buat saya, menulis surat itu berguna untuk jadi arsip/catatan yang bisa dibaca lagi dikemudian hari. Tapi memang ga ke semua orang sih kita perlu tulis surat, apalagi kalau ga tau juga mau cerita apa. Sekarang ini yang terpikir ya nulis surat ke anak-anak saja. Buat mereka baca kalau mereka besar nanti. Posting blog ini juga mudah-mudah bisa jadi kenangan buat mereka kalau kami sudah ga ada lagi.

Ayo menulis surat/blog buat orang-orang yang kita sayangi. Ingatan manusia ini ada batasnya, tapi kalau dalam bentuk tulisan bisa dibaca dan membawa kita bernostalgia dan menjadi memory yang lebih bertahan lama.

Mengenal Two Factor Authentication (2FA)

Saat ini untuk mengakses sebuah situs biasanya kita menggunakan password. Tapi password bisa bocor dan kadang gampang ditebak. Jika seseorang punya password kita, maka orang tersebut bisa login dan mengambil alih account kita. Untuk meningkatkan keamanan, maka selain password kita perlu memberikan bukti lain bahwa sesungguhnya yang ingin melakukan autentikasi benar-benar diri kita.

Sistem yang menggunakan lebih dari satu bukti/faktor untuk autentikasi dinamai “Multi Factor Authentication” (MFA). Two Factor Authentication merupakan subset dari MFA dengan hanya dua faktor saja. Biasanya password dan sesuatu yang lain. Website besar seperti GMail, Facebook dan Twitter semuanya mendukung 2FA. Di tulisan ini saya akan membahas kelebihan dan kelemahan berbagai faktor dalam 2FA.

MITM

Serangan generik untuk hampir semua jenis transaksi adalah MITM (man in the middle attack). Seseorang yang bisa mencegat paket jaringan dan menyimpan memodifikasi paket tersebut akan bisa  mendapatkan password seseorang. Contoh “pencegatan” adalah dengan menggunakan WIFI gratis yang disetup oleh penyerang, atau penyerang mengganti setting router (DNS).

Dalam kasus hanya password saja, jika attacker sudah berhasil menyadap password, maka attacker akan bisa login lagi walaupun user sudah logout. Dalam kasus multi factor authentication, serangan MITM ini juga bisa dilakukan tapi lebih terbatas.

Sebenarnya dengan penggunaan SSL, MITM ini semakin sulit dilakukan. Sebuah website sulit berpura-pura menjadi website lain yang memiliki sertifikat SSL. Tapi ada faktor manusia yang sering kurang jeli dalam mengunjungi website. Contohnya jika ingin mengunjungi klikbca.com menjadi kilkbca.com maka seseorang bisa dengan mudah mendapatkan sertifikat SSL untuk website tersebut.

Varian lain MITM adalah seseorang mendaftarkan domain yang memakai karakter bahasa lain yang sulit dibedakan dari karakter latin (IDN Homograph Attack). Ketika mengunjungi situs tersebut, semua permintaan akan diteruskan ke situs asli, tapi sambil disadap dan atau dimodifikasi.

Saat ini beberapa browser sudah menangani agar tidak terjadi penipuan nama domain yang terlihat sama tapi berbeda, tapi sayangnya Firefox masih belum menangani ini dengan baik

Contoh kombinasi huruf latin dan non latin pada nama domain. Huruf Latin “e” dan “a” diganti dengan huruf Cyrillic “е” dan “а”.

Yang kamu tahu

Ini merupakan faktor autentikasi yang paling sederhana, intinya selain ditanya password, kita akan ditanya hal lain secara random. Ketika registrasi kita diminta mengisi beberapa pertanyaan dan jawaban (misalnya: apa group musik favorit Anda? Anda lebih suka Marvel atau DC?). Perhatikan bahwa ini berbeda dengan pertanyaan “password recovery” ketika kehilangan password. Pertanyaan ini selalu ditanyakan ketika login.

Cara ini hanya sedikit lebih aman dari password saja.  Jika seseorang memonitor jaringan hanya sekali saja, maka dia tidak bisa login jika kebetulan mendapatkan pertanyaan yang berbeda, tapi jika dimonitor beberapa kali maka semua jawaban bisa ditemukan. Seperti halnya password, jawaban untuk berbagai pertanyaan ini bisa dicari dan ditebak. Jika sudah mendapatkan jawabannya maka akan mudah login di mana saja.

Dirimu

Biometrik merupakan autentikasi berdasarkan “apa adanya kita”, bisa berupa sidik jari, wajah, retina, DNA, bau badan, atau apapun. Metode autentikasi ini sudah umum dipakai secara lokal (misalnya ponsel, di gedung). Di ponsel, sidik jari atau wajah hanya akan mengunlock data di ponsel dan data tersebut yang akan dikirim ke server (jadi bukan biometrik kita yang langsung dikirim ke server).

Kelemahan sistem ini adalah: biometrik bisa disalin. Sidik jari bisa mudah dicuri dari segala permukaan yang kita sentuh, retina bisa difoto, bahkan pengenalan wajah juga bisa diakali. Biometrik juga tidak bisa diganti, jika data bocor — misalnya seseorang merekam dengan sidik jari atau retina Anda dan diposting ke Internet — maka Anda tidak bisa mengubah mata Anda. Ada kekhawatiran juga bahwa seseorang bisa diculik demi menjadi kunci akses untuk sesuatu yang berharga.

Yang kamu punya

Cara ini yang paling umum digunakan karena praktis: menggunakan benda yang kita pegang (ponsel/sms/app/token). Ketika login kita diminta memasukkan kode tertentu yang hanya bisa dipakai sekali (OTP, One Time Password). Secara umum serangan MITM bisa dilakukan seperti password, bedanya adalah: attacker hanya bisa login sekali ini saja karena berikutnya OTP-nya akan berbeda.

Setelah attacker bisa login, koneksi dari pengguna yang sebenarnya bisa diset agar selalu error atau diputus.

Untuk meningkatkan keamanan, OTP biasanya akan diminta per transaksi. Inipun masih bisa MITM, tapi lebih sulit. Misalnya ketika user ingin transfer uang ke pihak A, attacker akan mengganti agar di browser user tampil transfer akan dilakukan ke pihak A, tapi data yang dikirim ke server adalah: transfer dilakukan ke pihak B. Beberapa bank mengatasi ini dengan mengirimkan SMS notifikasi jika kita mendaftarkan account tujuan yang baru.

Serangan berikutnya adalah: menyalin apa yang kamu punya jika bisa disalin. Atau dalam kasus tertentu: cukup bisa membaca apa yang kamu punya (contohnya dalam kasus SMS).

Ponsel/SMS

Sistem ini dipakai di banyak bank: setiap kali login atau melakukan transaksi, maka sistem akan mengirimkan SMS kode. Teorinya ini cukup aman karena (seharusnya) cuma pemilik ponsel yang bisa menerima kode ini. Tapi jika seseorang ditargetkan maka metode ini sudah tidak aman lagi. Baru-baru ini Reddit dihack karena menggunakan SMS sebagai faktor kedua.

Cara pertama untuk membaca SMS adalah: SIM Swapping. Intinya berpura-pura jadi orang lain untuk mendapatkan SIM card baru dari operator. Cara ini tidak bisa dipakai untuk hacking banyak orang sekaligus karena perlu proses untuk mendapatkan SIM card baru dan pengajuan massal akan sangat mencurigakan.

Cara lain adalah hacking ke jaringan SS7. Secara singkat: semua jaringan operator di dunia ini berhubungan, dan hubungan ini perlu telpon antar operator dan untuk roaming. Jika memiliki akses ke jaringan SS7, ada banyak vulnerability yang bisa digunakan untuk membaca SMS. Selain dengan bug, cara termudah adalah mengakses jaringan operator adalah melalui orang dalam (SMS tidak dienkrip). Cara ini tidak bisa dengan mudah digunakan secara massal karena akan cepat ketahuan siapa yang mengakses SMS banyak orang.

Cara ketiga adalah menginstall aplikasi di HP target. Jika aplikasi ini memiliki hak untuk mengakses SMS maka SMS OTP yang sampai akan bisa dibaca oleh attacker. Cara ini juga tidak mudah digunakan massal, harus menggunakan trik agar seseorang mau menginstall aplikasi tertentu (atau menggunakan bug spesifik untuk ponsel tertentu).

Cara terakhir yang sebenarnya sangat sederhana tapi sering berhasil adalah social engineering (intinya: menipu, tapi orang yang sering melakukan social engineering kurang suka kalau saya pakai istilah menipu). Caranya begini: penyerang melakukan transaksi, lalu butuh OTP, lalu dia menghubungi korban dengan mengatakan “mas, maaf saya tadi mau masukin nomor telepon untuk aplikasi gojek, eh salah masukin nomor mas, nanti kalo ada SMS masuk dari gojek bisa minta tolong bacain kodenya mas?”

Software Token

Software seperti Google Authenticator tergolong pada Software Token. Setiap kali kita ingin login ke website, kita perlu memasukkan angka yang muncul pada token. Ada banyak algoritma yang bisa dipakai namun saat ini ada TOTP standar yang dipakai di banyak layanan (Google, FB, Twitter, dsb). Standar TOTP ini sangat sederhana (saya pernah mengimplementasikan di jam tangan saya sejak 2011). Intinya adalah: ada satu string yang menjadi kunci untuk algoritma yang inputnya adalah waktu saat ini.

TOTP ini relatif aman untuk kebanyakan kasus. Serangan yang mungkin adalah jika seseorang menyalin key dari device kita. TOTP ini juga bisa diserang dengan teknik MITM.

Variasi lain token semacam ini adalah berdasarkan challenge dari website, website meminta kita memasukkan nomor tertentu ke aplikasi dan kita diminta memberikan angka ke website. Secara konsep tidak ada perbedaan dengan waktu (waktu diganti dengan bilangan random yang dihasilkan website).

Hardware Token

Ini seperti token software, tapi memiliki kelebihan karena tidak mudah menyalin nilai key-nya. Untuk token software, kita diminta memasukkan kode tertentu dalam proses setup, pada token hardware kode ini dimasukkan oleh pihak terkait (bank atau perusahaan). Di dalam device ini ada RTC (real time clock) atau istilah awamnya: ada jam-nya, supaya waktunya sinkron dengan server.

Jika ingin menyalin keynya maka token hardware perlu dibongkar sampai level chipnya (jadi lebih aman dibandingkan software). Sama dengan software token, hardware token juga tidak kebal MITM.

Chip berada dalam bulatan hitam resin epoksi menggunakan teknik Chip-on-board (COB)

Kelemahan token hardware adalah: repot karena tiap layanan perlu hardware yang berbeda. Untuk masalah ini, sebenarnya ada juga varian token ini yang memakai smart card, jadi sebelum memakai tokennya kita masukkan dulu kartu kita. Pemrosesan dilakukan di smart card. Walaupun lebih ringkas, cara ini tetap repot karena butuh banyak kartu untuk tiap website.

U2F (Universal 2nd Factor)

Ini juga merupakan hardware token, tapi terhubung ke komputer atau ponsel. Koneksi yang bisa dipakai adala: USB, BLE (bluetooth low energy) dan NFC. Kata kuncinya di sini adalah terhubung dengan komputer/ponsel sehingga langkah verifikasi bisa dilakukan otomatis. Ini berbeda dengan token lain di mana harus ada manusia yang memasukkan sesuatu ke komputer.

Dari sisi user, penggunaan tokennya begini: di sebuah website kita perlu mendaftarkan token kita, caranya dengan mencolokkan device ke PC (atau mentap ke ponsel jika memakai NFC) dan menekan tombol di devicenya. Ketika akan login, kita juga diminta melakukan hal yang sama (colok lalu tekan tombol di device).

Di balik layar ada proses challenge response memakai ECC (Elliptic Curve Cryptography). Spesifikasi U2F ini terbuka, bisa didownload di website FIDO Alliance. Saya sendiri sudah pernah mengimplementasikan ini bertahun-tahun yang lalu. Implementasinya sudah dipakai di hardware yang sudah diproduksi.

MITM sangat sulit dilakukan karena browser akan memeriksa certificate SSL dari server, dan browser (bukan user) akan memastikan hal tersebut benar, jadi tidak mungkin website kilkbca.com meminta autentikasi untuk website asli klikbca.com.

Saat ini U2F ini cukup aman, dan bahkan Google baru-baru ini akan mulai menjual security key U2F. Seperti semua benda lain, kelemahan U2F ini adalah jika  hardware dicuri. Kemungkinan kelemahan lain adalah JIKA ada kelemahan pada browser sehingga bisa dipaksa untuk membypass autentikasi.

Penutup

Demikian perkenalan singkat two factor authentication. Two (atau multi) factor authentication ini sebaiknya ditambahkan pada website untuk menambah keamanan (tidak sulit menambahkan ini). Secara umum 2FA juga bisa digunakan untuk hal lain, misalnya untuk mengamankan akses SSH ke server kita.

 

Garlic Salt

Sejak beberapa tahun terakhir ini, bumbu wajib yang tersedia di dapur pemalas (saya) ya si Garlic Salt. Komposisinya sesuai namanya bawang putih dan garam. Awalnya Joe iseng nyobain, mungkin karena dia tau kalau saya sering malas ngupas bawang putih. Bumbu yg paling banyak saya pakai memang bawang putih, kadang-kadang saja saya tambahkan bawang merah untuk beberapa masakan. Dan sekarang garlic salt ini jadi andalan banget kalau mau masak bakwan/bala-bala, tahu goreng, nasi goreng, sup, sayur bening dan kemarin baru diajarin mertua buat bikin peyek.

Di Chiang Mai ini, kami sering kumpul-kumpul warga Indonesia. Masing-masing membawa makanan yang dimasak/beli, terus makan sama-sama. Kalau lagi super rajin saya bikin tempe bacem, tapi jurus andalan akhir-akhir ini ya bikin bakwan. Sejak ketemu garlic salt, bikin bakwan jadi jauuuh lebih mudah. Kemudahannya yang paling terasa ga butuh ngupas bawang putih, ga perlu ngulek, dan ya tinggal iris-iris dan campur deh. Setiap kali masak rasanya udah banyak, sejauh ini laris manis walaupun bentuknya ukurannya ga seragam hehehe.

Bakwan resep mertua memang bumbunya cuma bawang putih, garam dan merica. Jadi ya sayurnya diiris tipis (wortel, kol dan daun bawang), campurkan dengan garlic salt dan bubuk merica secukupnya (ga perlu gilingan deh), kasih air dan tepung terigu sampai adonannya pas buat digoreng. Oh ya, kalau mau bakwannya crunchy, bisa ditambahkan telur juga. Dulu saya hanya pakai telur untuk bakwan jagung, tapi belakangan ini karena Jonathan bilang dia lebih suka bakwan yang pakai telur, bakwan sayur juga saya pakai telur. Kalau bakwan sayur yang dijual di pinggir jalan kemungkinan besar sih ga pakai telur resepnya.

Penjelasan soal kekentalan adonan ini kira-kira kalau kalau kita tuang pakai sendok adonannya ga akan terlalu sulit lepas dari sendok dan ga terlalu gampang juga lepas dari sendok. Kalau ditanya takarannya, saya ga pernah nakar, semuanya main tuang aja sampai adonannya pas (lain kali kalau rajin mungkin bikin video buat penjelasan seberapa pas haha).

Ada banyak merk garlic salt yang dijual di Chiang Mai, tapi yang paling cocok pakai Garlic Salt McCormick (eh ini bukan lagi promosi ya). Pernah nyobain merk lain karena lebih murah, tapi ternyata gampang menggumpal dan akhirnya kebuang ga jadi dipakai.

Gara-gara mau bikin tulisan ini, jadi ngegoogle garlic salt McCormick dan baru ngerti kalau misalnya ada resep meminta 1 siung bawang putih dan kita cuma punya garlic powder (bukan garlic salt), perbandingannya 1 siung itu sama dengan 1/8 garlic powder.

Resep lain contoh kegunaan garlic salt ini yang juga sering saya pakai untuk goreng tahu, biasanya sebelum tahu digoreng supaya ada rasanya saya rendam tahu dengan air dicampur garlic salt beberapa menit, tiriskan airnya baru digoreng deh. Kalau lagi buru-buru saya ga rendam air, tapi kasih sedikit garlic salt terus di ratain deh ke permukaan tahu. Tapi pernah juga pake metode ini tahunya jadi keasinan hahahaha.

Resep lainnya yang sering jadi andalan buat bikin nasi goreng butter buat sarapan. Bumbunya paling gampang pake garlic salt dan butter, kecap asin dan kecap manis (kadang-kadang ga pake kecap manis). Kalau punya bacon makin mantap rasanya, untuk sayurannya biasanya saya pakai seperti sayuran bakwan (wortel, kol dan daun bawang iris tipis). Kalau lagi ga punya sayuran, atau Joshua lagi picky banget ga mau makan kalau ada sayurannya, ya saya masak nasi goreng tanpa sayuran, tapi ke dalam nasi gorengnya dicampurkan telur juga langsung.

Intinya ya semua masakan yang resepnya pakai bawang putih, bisa digantikan dengan garlic salt ini. Untuk takarannya ya kira-kira seperti memakai garam juga, kalau terlalu sedikit hambar kalau kebanyakan bisa keasinan juga. Beberapa kali pertama saya juga sering salah takar, bikin bakwan rasanya kurang sip hehehe. Kalau udah sering pakai, nanti lama-lama jadi tau deh takarannya.

Troubleshooting di Linux

Ada banyak masalah di dunia IT setiap hari meskipun software dan hardware sudah terpasang dan tidak diubah sama sekali. Beberapa contohnya: sesuatu menjadi semakin lambat (misalnya karena jumlah data menumpuk terlalu banyak), sesuatu tidak bekerja sama sekali (disk penuh, hardware rusak), mendapat serangan DDOS, ISP tiba-tiba memblok suatu website, dsb.

Jika ada sesuatu yang baru, masalahnya bisa lebih banyak lagi. Sesuatu yang baru ini bisa dari hal rutin misalnya upgrade software (contohnya baru-baru ini: ada masalah SSL di Chrome terbaru jika memakai SSL certificate tertentu) ataupun dari penambahan hardware maupun software karena ada kebutuhan baru.

Program top

Di posting ini saya ingin membahas cara troubleshooting generik berbagai masalah yang berhubungan dengan Linux. Pendekatan saya adalah pendekatan programmer: semua masalah admin sebenarnya adalah masalah debugging software. Pada dasarnya administrasi sistem (selain bagian memasang hardware) hanyalah menjalankan program dengan parameter/setting tertentu. Prinsip “debugging” ini bisa diaplikasikan ke sistem operasi apapun tapi saya hanya akan membahas tools khusus Linux di artikel ini.

Bagi sebagian orang ini merupakan hal yang jelas/obvious (“tentu saja mencari masalah itu sama seperti debugging program”). Sayangnya saya masih sering orang yang bingung dalam troubleshooting, dan akhirnya hanya coba-coba. Dan kadang solusinya meskipun “berhasil” tapi ternyata membuka masalah security. Contohnya ketika ingin mengkonfigurasi agar DBMS (misalnya postgres atau mysql) bisa diakses dari jaringan lokal, tapi ternyata malah bisa diakses dari seluruh internet. Dalam kasus ini karena dari jaringan lokal berhasil diakses dan sudah dianggap OK.

Semua program sifatnya sama: membaca input, memproses sesuai dengan algoritma tertentu, dan membuat output. Bahkan masalah jaringan pun sama: inputnya adalah paket data di jaringan dan konfigurasi jaringan (IP, routing, rule firewall, dsb), dan sistem operasi akan menjalankan beberapa algoritma (filtering, routing, dsb), lalu outputnya adalah paket yang diberikan ke program atau diteruskan ke host lain.

Tiga jenis masalah utama yang saya temui adalah sesuatu tidak berjalan sama sekali, sesuatu lambat (masalah kinerja), dan sesuatu tidak bekerja sesuai yang diharapkan. Contoh kasus terakhir misalnya: seharusnya direktori ini yang muncul di web, tapi kok direktori lain yang muncul atau muncul pesan warning/error walaupun program berjalan.

Prekondisi

Sebuah program akan berjalan benar jika prekondisi dipenuhi. Contoh: program konversi citra bisa berjalan jika ada input yang valid, ada disk space yang cukup untuk output. Beberapa program berasumsi bahwa ini pasti benar, sehingga jika disk space habis, kasus tersebut tidak ditangani, dan hanya muncul error generik. Jadi langkah pertama adalah: cek prekondisi dasar sebuah sistem.

Sebelum masuk ke debugging spesifik Linux, hal pertama adalah mengecek hal-hal yang jelas dulu. Apakah koneksi internet jalan? tidak ada masalah di ISP, cloud provider, dsb. Apakah hardware baik-baik saja? misalnya ternyata komputer mati karena kabel dimakan tikus. Jika masalah non-software yang bisa dicek eksternal tidak ada masalah, kita bisa masuk ke bagian berikutnya.

Prekondisi berikutnya adalah: disk tidak error. Hal ini bisa dicek dengan dmesg,  apakah ada pesan error dari kernel.  Ini penting karena jika ada hardware bermasalah maka akan muncul error di sini. Jika ada error, sebuah filesystem akan di-remount menjadi readonly, artinya log file tidak bisa diandalkan (tidak valid).

Lalu cek disk space sistem. Jika disk space penuh, maka log mungkin akan gagal ditulis jadi kita tidak mendapatkan error message yang benar.  Disk space bisa dicek dengan df (disk free). Jika ternyata memang penuh, kita bisa memakai program du (disk usage) untuk mencari tahu direktori/file mana yang memakan space banyak. Masalah disk ini juga kadang bisa dilihat dari “wa” (berapa banyak I/O yang menunggu) di program “top“. Secara umum, pelajarilah berbagai nilai yang muncul di program top, karena ini sangat berguna.

Membaca Pesan Error

Jika hardware dan disk space sudah aman, maka prekondisi dasar sudah terpenuhi. Berikutnya ketika melihat sesuatu yang error adalah: membaca pesan error yang memang sudah diberikan oleh program. Kadang program perlu dikonfigurasi agar mengoutputkan log dan kadang level loggingnya perlu ditingkatkan agar lebih jelas errornya.

Log system biasanya bisa dibaca di /var/log. Tapi ini belum tentu benar, log system bisa dikirim ke sistem lain. Kita baca membaca konfigurasi program di mana log disimpan. Jika program memakai syslog, kita perlu membaca konfigurasi syslog.

Jika memang sudah jelas dari error messagenya (misalnya: “file abc not found”) maka tanganilah error itu (buat file abc-nya, atau mungkin salah path file-nya). Sayangnya kadang  error message tertentu seperti “resource temporarily unavailable”, penyebabnya bisa banyak. Salah satu cara mencari solusi tentunya adalah dengan mencari pesan error di internet plus nama program yang berhubungan, misalnya “docker resource temporarily unavailable” (jika konteksnya ketika memakai docker). Jika ketemu orang dengan masalah yang sama dan gejala yang sama, maka mungkin itu solusinya.

Mencari masalah di internet juga sering kali merupakan cara terbaik, karena kadang solusi suatu masalah sangat panjang. Tapi jika kita tidak mengerti akar suatu permasalahan, kadang solusinya juga bisa melenceng jauh.

Membaca status program

Kita bisa mengecek apakah program sudah dijalankan dengan parameter yang benar dan dengan environment yang benar menggunakan filesystem /proc. Ini terutama dibutuhkan jika program dijalankan oleh skrip atau program lain. Dengan mengetahui PID (process id , proses adalah instance program yang sedang berjalan) kita bisa membaca status di /proc/PID.

Beberapa yang penting misalnya “cwd” adalah link ke direktori program saat ini. File “environ” berisi environment variable ketika aplikasi dijalankan. File “cmdline” berisi parameter ketika program dijalankan. Masih banyak lagi file-file lain yang berguna untuk mengecek status program saat ini.

Membaca Dokumentasi dan Changelog

Masalah lain yang mungkin ditemui ketika upgrade software adalah: suatu fitur diubah atau hilang. Dalam kasus ini yang perlu dibaca bukan hanya file log tapi juga  dokumentasi aplikasi tersebut.

Beberapa aplikasi memiliki tool atau opsi untuk mengecek apakah file konfigurasi sudah benar atau belum (terutama untuk mengetahui apakah di versi terbaru opsi masih valid), ini bisa digunakan untuk mencari tahu sumber error. Contohnya apache memiliki “apachectl configtest”.

Debugging Masalah Jaringan

Untuk masalah jaringan  biasanya masalahnya adalah tentang konektivitas (sesuatu tidak bisa diakses atau paket tidak diteruskan). Saya memakai gabungan banyak tool untuk debugging. Tool dasar pertama adalah “ping” (mengecek konektivitas ke host lain) dan traceroute untuk mengetahui route yang diambil paket. Program “ip” juga memiliki opsi untuk mengecek route di host saat ini: “ip route get to TUJUAN” (misalnya “ip route get to TUJUAN").

Sering kali program tidak bisa diakses dari host lain karena memang hanya menerima koneksi dari localhost. Ini bisa dicek dengan program netstat (terutama dengan opsi -l untuk melihat program yang statusnya “listening”). Setelah diperbaiki konfigurasinya kadang program menolak karena filter di dalam program tersebut. Contohnya: postgreSQL memiliki opsi listen_interface di postgresql.conf, tapi jika sudah diset, postgresSQL akan mengecek ke pg_hba.conf untuk mengecek apakah IP spesifik tertentu diijinkan untuk melakukan koneksi atau tidak. Dalam semua kasus kita perlu memahami hal-hal seperti ini.

Jika host bisa dihubungi dengan ping tapi ada service yang tidak bisa diakses dari host lain, maka saya akan memakai netcat untuk mengetes. Kadang saya pakai juga  “nmap”  untuk mengecek semua port untuk mengecek apakah ISP memblock port tertentu.

Jika masalahnya ada di firewall yang kita kontrol (bukan firewallnya ISP) maka kita perlu mendebug masalahnya dengan logging. Baik iptables maupun nftables mendukung logging untuk mencari tahu kenapa sebuah paket di-drop.

Senjata andalan terakhir adalah tcpdump dan wireshark. Kedua program ini dapat menangkap semua paket yang lewat. Jika yang bermasalah adalah komputer lokal, saya akan langsung memakai wireshark dengan GUI yang enak dilihat. Jika masalahnya di komputer remote, saya akan memakai tcpdump. Kadang output tekstual tcdump sudah cukup, tapi jika masih kurang, saya akan memakai opsi -w untuk menuliskan hasil capture ke file pcap yang bisa dicopy ke desktop lalu dilihat isinya secara visual.

Debugging Program

Kebanyakan program memiliki beberapa opsi dasar untuk debugging. Biasanya opsi  yang penting adalah: menampilkan log, atau menaikkan level logging dan membuat agar program tidak berjalan di latar belakang (foreground mode atau no daemon mode). Dua hal ini biasanya sudah cukup untuk mencari tahu kebanyakan error.

Jika semua pendekatan sudah mentok maka pendekatan programming akan saya ambil. Pertama adalah dengan  strace dan ltrace. Kedua program low level ini berguna untuk tracing, strace untuk syscall dan ltrace untuk library call. Kadang program-program ini bisa dipakai tanpa pengetahuan programming, tapi biasanya butuh pengetahuan programming terutama jika masalahnya kompleks.

Tracing di sini berarti semua pemanggilan library (untuk ltrace) dan system call (untuk strace) akan ditampilkan. Contoh paling sederhana adalah untuk debugging: kenapa aplikasi tidak membaca file sesuatu yang tercantum di konfigurasi. Dari hasil tracing bisa dilihat apakah filenya namapakcagegagal dibuka (misalnya masalah permission) atau ternyata tidak ditemukan (mungkin karena salah nama file, atau programnya menambahkan prefix/suffix tertentu sehingga tidak ketemu).

Contoh memakai strace untuk mengecek file apa yang dicoba dibuka oleh sebuah aplikasi dalah dengan membatasi output hanya syscall open dan access saja.

strace -e open,access namaprogram

Debugging berikutnya sudah sangat butuh skill programming, yaitu memakai debugger gdb. Dengan menginstall debug symbol, umumnya berbagai masalah crash bisa dicari tahu sebabnya. Andaikan debug symbol tidak cukup, maka langkah berikutnya adalah: compile ulang aplikasinya, lalu debug di level source code.

Compile ulang ini tidak sesulit jaman dulu. Di Debian kita bisa dengan mudah menggunakan “apt-get source namapackage” untuk mendownload source code package tertentu, dan “apt-get build-dep namapackage” untuk mendownload seluruh library/tool yang diperlukan untuk membuat package tersebut. Selanjutnya kita bisa mengcompile dan mendebug program dengan mudah.

Masalah performance

Masalah yang cukup sulit dicari adalah masalah performance karena biasanya tidak ada pesan di log. Masalah performance juga biasanya sangat spesifik pada aplikasi atau software server tertentu. Tapi Sebelum mengecek spesifik software tersebut cek dulu penggunaan CPU dan memory dengan top.

Apakah ada proses yang memakan banyak CPU atau memori? jika ada, harus diperhatikan karena itu mungkin sumber masalah utama. Jadi ketika database tiba-tiba lambat, belum tentu server databasenya bermasalah, mungkin saja ada proses lain yang memakan terlalu banyak CPU atau memori dan efeknya terasa ke query database.

Sebuah program bisa melakukan banyak langkah, dan kadang langkah tertentu menghambat langkah berikutnya, dan secara total aksi tertentu menjadi sangat lambat. Contoh sederhana: sebuah program bisa melakukan reverse DNS lookup untuk memetakan IP menjadi nama, dan menampilkan informasi tersebut ke log file. Jika ada masalah dengan DNS, maka proses yang tujuannya hanya informatif (melog informasi) ini butuh waktu lama karena masih menunggu respons dari server DNS.

Dari sudut pandang programmer, ada banyak tool yang bisa dipakai untuk debugging masalah performance. Tool ini meliputi software profiler spesifik untuk bahasa/teknologi tertentu (misalnya ada profiler khusus untuk Java, Python dsb), dan juga profiler system secara umum (misalnya Systemtap dan perf).

Penutup

Semua langkah ini biasanya cukup untuk menemukan masalah dan memperbaiki masalah tertentu. Namun demikian tidak semua masalah bisa diselesaikan dengan mudah.

Beberapa masalah tiba-tiba hilang karena restart program  (jika masalahnya ada di programnya), atau restart komputer (jika masalahnya ada di kernelnya). Dalam kasus ini akar permasalahan harus dicari, karena pasti akan muncul lagi.

Selain itu tidak semua masalah bisa diatasi dengan singkat, contohnya: ketika upgrade program tertentu, program tersebut butuh upgrade library, dan setelah upgrade library, program lain yang closed source ternyata berhenti berjalan. Akhirnya program harus dijalankan di chroot atau Docker dengan library lama dan ini butuh waktu.

Semoga langkah-langkah yang diberikan di tulisan ini berguna. Intinya sih jangan semuanya hanya proses coba-coba, tapi pahamilah akar masalahnya.

Tentang Sebuah Nama

Saya orang Batak. Lahir dari keluarga marga Saragih, tapi marga itu tidak tercantum di akte kelahiran saya. Kata mama saya, waktu saya lahir di tempat pembuatan akte (DKI Jakarta) ada peraturan tidak boleh memasukkan marga sebagai nama keluarga (entah peraturan apa, atau ada peristiwa apa waktu itu yang menyebabkan tidak dibolehkan). Ternyata sampai sekarang masalah pencantuman nama marga ini masih jadi masalah untuk WNI keturunan.

Jadilah akte lahir saya cuma punya 1 nama. Saya anak ke-3, kakak pertama saya punya 3 nama (nama depan, tengah + marga), kakak ke-2 punya 4 nama (nama depan, tengah, akhir + marga), dan sepertinya waktu saya lahir orangtua saya sudah kehabisan nama hehehe, jadilah akhirnya dikasih 1 nama doang (yang sebenernya bisa juga dipisah jadi 2 nama kalau mau, tapi orangtua saya memberi nama saya sebagai 1 nama). Sebenernya nama yang pendek menguntungkan saya waktu ujian masuk PTN, ga banyak bulatan yang harus saya lingkari hehehe.

Kakak saya dan adik saya punya nama mereka plus marga di aktenya, karena akte kakak saya hilang lalu waktu mama saya urus lagi sudah boleh memasukkan marga ke akte, sedangkan waktu adik saya lahir peraturannya sudah berubah dan boleh mencantumkan marga batak. Kertas akte saya juga cuma selembar kertas tipis yang jaman itu belum kenal yang namanya laminasi. Kadang-kadang saya cemas setiap kali harus membawa kertas aktenya, takut robek dan jadi urusan yang panjang.

Sebelum saya merantau ke Thailand, saya tidak pernah merasakan perlunya mencantumkan nama keluarga di akte saya, toh walaupun itu tidak ada di akte, marga saya tetap melekat dengan saya. Ternyata sekarang ini baru merasakan masalah tidak punya nama belakang.

Masalah pertama muncul waktu mengisi form untuk membeli tiket online, untungnya mereka akhirnya memberi contoh masukkan saja nama yang ada diulang sebagai nama depan dan nama belakang. Masalah berikut muncul ketika mengisi form untuk membuka rekening bank. Di sini, program mereka tidak menghandle seperti di program beli tiket online AirAsia. Akhirnya mereka mengarang sendiri misalnya last name saya jadi : No Surname, ataupun NA dan karena sistemnya tidak konsisten antara satu pihak dan lain, ini bisa membingungkan.

Di Thailand, beberapa form tidak menerima nama latin, jadi kita mau ga mau harus punya nama dalam aksara Thai. Nama kami dalam akte lahir anak-anak dituliskan dalam bahasa Thai walaupun kadang bunyinya ga bisa persis sama karena beberapa huruf di akhir kata akan berubah bunyi dalam aksara Thai. Contohnya, nama saya ris-na akan dibaca jadi rit-na, atau ri-sa-na. Hal ini jadi bahan pertimbangan kami waktu bikin nama anak-anak untuk mudah diucapkan dalam bahasa Indonesia, Inggris maupun Thailand. Untuk anak yang lahir di Thailand, otomatis nama mereka ada dituliskan dalam bahasa Thai di akte kelahirannya.

Waktu saya hamil, saya mendaftarkan nama saya sebagai pasien menggunakan nama akhir Joe sebagai nama keluarga. Masalahnya kadang-kadang saya lupa kalau saya pakai nama Nugroho bukan Saragih, jadi setiap kali ke dokter kandungan perlu waktu lama buat cari kartu pasien saya karena saya salah kasih nama pas daftar hehehe. Bertahun-tahun saya pakai nama belakang Saragih, tentunya ga gampang mengubah reflek mengingat nama belakang saya pakai Nugroho. Untuk membiasakan diri, saya pakai nama akhir Nugroho di profil Facebook saya.

Waktu kami punya anak, kami putuskan untuk memakai nama belakang Joe juga di belakang nama anak-anak. Berbeda dengan marga untuk orang batak, nama belakang yang kami berikan bukan marga untuk orang Jawa. Kami pakai saja nama belakang Joe. Berdasarkan pengalaman saya, kalau tidak ada nama belakang ke depannya akan jadi repot untuk mengisi formulir, dan juga karena kami tinggal di Thailand, nama belakang yang sama dengan Joe supaya orang tahu kalau mereka anak pak Nugroho :). Toh di sini ga banyak orang dengan nama belakang Nugroho, ga seperti di Indonesia hehehe. Untungnya juga menuliskan Nugroho dalam bahasa Thai relatif bisa dibaca dengan tepat, dan ga bernasib seperti nama saya yang berubah bunyi.

Untuk orang batak, marga berguna untuk mengetahui silsilah. Sebagian orang batak bahkan menomori marganya jadi bisa tahu keturunan ke berapa. Kebetulan, saya Batak Simalungun tidak tahu nomor marga dan sepertinya setiap pertemuan keluarga tidak pernah ditanya nomor berapa. Waktu saya pertama kali merantau ke Bandung, ketemu dengan orang batak lain itu serasa jadi bersaudara. Ketika bertemu orang bukan batak, mereka sering reflek bertanya kenal dengan pak ini atau bu itu Saragih yang mungkin saja terkenal karena pejabat atau sering masuk TV. Orang batak pasti tahu kalau ga semua batak saling kenal, tapi tidak demikian dengan orang yang bukan batak.

Beberapa waktu lalu, ada berita di tanah air tentang seorang boru Saragih yang ketangkap tangan KPK, ada juga seorang marga Saragih yang mencalonkan diri jadi Gubernur tapi ternyata ijasahnya palsu. Teman saya yang bukan batak tau-tau bertanya ke saya: wah Ris itu ada saragih begini begitu. Jawaban saya: saya ga kenal dan ga ada hubungannya dengan saya. Memang sebagian orang batak akan merasa malu-maluin marga aja tuh orang. Tapi saya sih ga merasa apa-apa hehehe. Bukan marganya yang bikin dia melakukan itu, memang dasar dianya aja begitu.

Di Thailand sini, banyak anak punya nama keluarga ikut ibunya. Hal ini mereka lakukan karena kalau orangtua bercerai, anak biasanya ikut ibu, dan mungkin juga karena banyak orang punya anak tanpa mendaftarkan pernikahan secara legal (mereka menikah cuma ke kuil saja). Saya ga tahu apakah di Indonesia boleh memakai nama belakang ibunya untuk mendaftarkan anak ke akte lahir. Mungkin kalau namanya bukan marga tapi nama seperti misalnya Anak Syalala atau Putri Sematawayang boleh-boleh saja kali ya, tapi saya ga tahu apakah di akte lahir boleh tidak mencantumkan nama bapaknya. Kalau ada yang tahu, silakan tulis di komen ya.

Kadang-kadang masalah nama keluarga (nama belakang) ini jadi pertanyaan Jonathan juga, kenapa oppung nama belakangnya beda dengan saya, kenapa eyang ga punya nama belakang dan kenapa saya katanya punya marga tapi ga punya nama keluarga di akte. Yang jelas sih, nama belakang itu perlu terutama buat isi form, jadi kalau bisa untuk yang belum punya anak, jangan lupa kasih nama anak jangan cuma 1 nama saja biar mereka ga repot kalau ada form isian yang wajib isi nama belakang. Dan juga pilihlah nama yang tidak terlalu sulit untuk diucapkan berbagai bangsa, jaman sekarang kita harus berpikir suatu saat anak-anak kita akan merantau keliling dunia, dan jangan sampai mereka jadi terkendala karena nama yang kita pilihkan.

LINE Mobile

Dulu waktu masih di Bandung, kami sering sekali membeli simcard dari berbagai provider cellular untuk mendapatkan tarif termurah, baik itu tarif bicara ataupun tarif paket data. Sesampainya di sini, kami berhenti bereksperimen karena awal di sini internet di rumah dan di kantor sangat cepat (terasa beda banget dengan internet selama di Indonesia).

Kadang-kadang kami beli beberapa simcard kalau ada keluarga yang datang ke sini untuk dipakai sementara, lalu pernah juga dapat gratis di airport, tapi karena ga terlalu butuh bisa dibilang hobi ganti-ganti simcard gak diterusin di sini. Baru beberapa tahun belakangan kami beli paket data di handphone karena kami sering keluar untuk antar kegiatan Jonathan di akhir pekan.

Awalnya kami berlangganan paket data bulanan dari provider simcard kami saja, 1 bulan 1.5 GB lumayan cepat dan kalau lewat dari situ kecepatan menurun (jadi 64kbps) tapi sudah ga ada biaya tambahan. Kami jarang teleponan kecuali untuk urusan yang sangat mendesak, jadi sebulan kami cukup isi pulsa 300 baht (yang mana 220 baht dipakai untuk paket data). Kami memakai nomor yang sama sejak sampai di sini, dan di awal kami isi pulsa sekedar untuk memperpanjang masa tenggang saja. Kami sengaja memakai pra bayar, karena lebih mudah membeli prabayar buat orang asing dan ya kami ga butuh paket-paket yang ada dan akhirnya biayanya lebih murah dengan prabayar.

Bulan ini ada kuota ekstra karena membayar memakai Rabbit Line Pay

Belakangan ini, karena Jonathan makin banyak kegiatan di luar, 1.5 GB sebulan tidak cukup lagi, apalagi terkadang saya lupa untuk terhubung ke wifi ketika sampai di rumah. Joe juga pernah lupa mematikan koneksi yang dia share ke laptopnya, dan laptopnya update windows secara otomatis. Kebayang paket data 1.5 GB pastilah kurang.

Meneruskan dengan internet gratis yang low speed terasa menyiksa karena terbiasa cepat, jadi kadang-kadang akhirnya kami harus top up lagi dan lama-lama terasa mahal buat bayar internetnya (padahal dulu di Indonesia kami pernah langganan Matrix dan rata-rata pembayaran bisa di atas 300 ribu untuk data dan internet).

Beberapa bulan lalu, Joe menemukan promosi Line Mobile. Dengan 170 baht sebulan kami mendapatkan 5GB data dan 150 menit bicara. LINE mobile ini sebenarnya masih agak dipermasalahkan legalitasnya karena ijin MVNO (mobile virtual network operator) belum bisa di Thailand. Tapi akhirnya mereka pake sistem kerjasama dengan operator lokal.

Dulu saya agak enggan menambah nomor. Untuk ganti nomor saya jelas ga bisa karena banyak urusan sudah memakai nomor yang ada, nah untuk menambah nomor saya enggan membawa ekstra gadget. Pernah saya coba membawa hp dan tablet, prakteknya akhirnya tabletnya lebih sering saya tinggal. Tapi kali ini saya baru ganti handphone yang punya double simcard slot.

Jadilah saya membeli LINE Mobile dengan harapan 5GB akan jauh lebih dari cukup dibandingkan 1.5GB yang saat itu selalu terasa kurang. Pembelian LINE Mobile ini dilakukan sepenuhnya dari internet, bayar dengan kartu kredit Joe, dan kartu dikirim oleh kurir ke rumah. Belum sebulan saya memakai LINE Mobile, Joe ikutan beli juga, karena dia juga pengen punya paket data 5 GB. Oh ya, dia beli karena juga ada promosi untuk referal ke teman akan ada potongan 10 baht per bulannya baik untuk saya dan Joe. Baru-baru ini ada promosi pembayaran dengan Rabbit Line Pay (ini metode pembayaran Line yang kayanya baru ada di Thailand), dapat tambahan data 2GB dan diskon 10 persen dari billingnya.

Paket data yang disediakan LINE Mobile ini ada beberapa ukuran, tapi yang paling ekonomis buat kami saat ini ya yang 5GB ini. Sekarang dengan 170 baht sebulan saya bisa dapat minimum 5GB data dan 150 menit untuk telepon (yang sering tidak dipakai karena sekarang ini telepon selalu menggunakan voip). Nomor saya yang lama tetap saya gunakan dan untungnya sekarang ini sudah bisa membeli masa aktif, jadi saya tidak perlu isi ulang banyak setiap bulannya.

LINE Mobile ini menggunakan provider yang sama dengan DTAC, coveragenya akan sama dengan coverage DTAC . Selama menggunakan LINE Mobile saya belum pernah keluar Thailand, ada menu roaming internasional di aplikasinya tapi belum pernah dicoba.

Di Thailand sini, hampir semua orang menggunakan LINE, hampir semua toko memberikan diskon khusus kalau kita menambahkan mereka sebagai teman. Dan saya juga baru tahu kalau ada aplikasi LINE TV segala (gratis tidak dihitung data kalau memakai LINE mobile). Simcard LINE Mobile ini dilengkapi dengan aplikasi untuk mengetahui berapa tagihan kita, berapa sisa data dan berapa menit yang sudah terpakai. Selain itu kita juga bisa mengontrol untuk membatasi pemakaian kalau sudah kelebihan dari kuota yang diberikan berapa baht yang kita bersedia habiskan.

Terakhir pulang ke Indonesia, saya ingat XL juga sudah menggunakan aplikasi untuk memberikan informasi mengenai simcard kita, tapi kadang-kadang datanya tidak langsung update. Saya tidak tahu sekarang ini, tapi fitur seperti ini sangat membantu untuk mengetahui pemakaian kita.

Kecepatan speedtest memakai server di Jakarta dari Chiang Mai

LINE Mobile ini pasca bayar, saya tidak tahu kalau datang untuk sebagai turis apakah bisa memesannya, tapi kalau berencana tinggal beberapa bulan di Thailand sepertinya memakai LINE Mobile bisa dicoba, karena pemesanan dari Internet untuk orang asing cukup menyertakan foto dari passport kita saja lalu kita kirimkan alamat ke mana simcard akan dikirimkan. Pembayaran tagihan juga dilakukan langsung dari aplikasi LINE Mobilenya, bisa menggunakan internet banking, kartu debit, kartu kredit atau Rabbit Line Pay.

Kalau dilihat dari websitenya ada banyak promosi setiap bulannya berganti-ganti. Secara umum, untuk kebutuhan kami saat ini kami cukup dengan 5GB sebulan. Mudah-mudahan di Indonesia ada paket sejenis LINE Mobile ini, jadi kalau mudik ga jadi fakir bandwith seperti yang terjadi setiap pulang.