Warna warni Mi Band 4

Bulan Maret 2019 saya mencoba dan menuliskan tentang Mi Band 3. Tadinya saya pikir saya tidak akan ganti jam lagi sampai mi bandnya rusak, tapi ternyata beberapa bulan lalu ada versi Mi Band 4 yang di release dengan beberapa fitur tambahan dari Mi Band 3, di antaranya layar berwarna dan bisa tracking untuk berenang dan dengan harga yang sama dengan harga release Mi Band 3 fiturnya juga lebih baik.

Setelah menunda-nunda dan tetap mau bertahan dengan mi band 3 saja, akhirnya jadi juga beli Mi Band 4 nya bulan September lalu karena Joe juga mau pakai Mi Band 3 nya. Setelah pemakaian beberapa bulan dengan Mi Band 4, baru deh ingat kalau belum nulis soal Mi Band 4 ini.

jadi juga beli tali warna warni

Dengan adanya display berwarna di Mi Band 4, kita bisa memilih berbagai tampilan wajah jam nya. Nah daripada cuma wajahnya yang berubah, saya akhirnya jadi juga beli tali jam warna warni nya. Tali jamnya juga gak mahal dan kebetulan kompatibel untuk Mi Band 3 dan Mi Band 4 ( jadi Joe juga bisa ganti-ganti warna tali kalau iseng). Karena ongkos kirimnya 30 baht dan harga talinya 9 baht, akhirnya kami beli 5 warna sekaligus (ongkos kirimnya sama saja kirim 1 dan 5).

Selain jadi iseng ganti-ganti warna tali dan display, kelebihan Mi Band 4 dari versi Mi Band 3 yang paling terasa itu di bagian batere tahan lebih lama beberapa hari. Klaimnya memang bisa untuk 20 hari, tapi karena saya mengaktifkan sleep tracking dan heart rate monitor, paling lama saya harus mencharge Mi Band ini sekitar 12 hari (rata-rata 10 hari kalau ingat sudah saya charge). Daya tahan batere berkurang kalau kita aktifkansleep monitoring dan heart rate monitornya.

seminggu batere masih di atas 50 persen

Heart rate detection bisa di set setiap menit sampai per 30 menit. Semakin kecil interval pengecekan, semakin cepat batere berkurang. Saya sekarang set jarak pengecekan heart rate setiap 5 menit.

Kadang-kadang punya device dengan banyak fitur, tidak selalu semua fiturnya kita aktifkan. Fitur yang paling sering saya gunakan dari mi band 4 ini antara lain:

  • memperhatikan apakah target jumlah langkah per hari sudah tercapai atau belum
  • memperhatikan pola tidur (berapa jam tidur, berapa jam tidur lelapnya)
  • memperhatikan denyut jantung rata-rata harian dan ketika tidur
  • notifikasi kalau ada panggilan masuk (karena hp saya selalu silent)
  • notifikasi message dari Joe (yang lain notifikasinya saya matikan hahaha)
  • notifikasi alarm dan calendar

Saya tahu ada banyak jenis smart band beredar sekarang ini dan masing-masing punya fitur andalannya. Saya pilih Mi Band 4 ini karena harganya tidak lebih dari 1500 baht dan fiturnya cukup untuk saya. Fitur olahraga belum pernah saya pakai. Rencananya mau kembali berolahraga sebelum 2019 berakhir hehehehe.

Mempermudah Ganti HP Android

Jaman dulu, kalau kita ganti HP, biasanya kita perlu memindahkan daftar kontak kita secara manual. Setelah HP semakin pintar, ganti HP bisa lebih mudah apalagi bila kita sudah membiasakan diri membackup berbagai data kita. Kebiasaan membuat salinan data ini merupakan kebiasaan yang baik, apalagi kalau kita mempunyai koneksi internet yang cukup cepat.

Saya sering mendapat cerita teman yang HP nya error lalu harus di reset dan semua daftar kontak hilang. Kisah lainnya teman yang pakai iphone/ipad dan mengijinkan anaknya menggunakan gadgetnya sering tanpa sengaja foto-foto di HP terhapus karena anaknya berusaha masuk dengan paksa dan otomatis menghapus data padahal belum pernah di backup. Atau aplikasi chat WA yang lupa di backup waktu ganti HP ataupun hang dan harus reinstal paksa dan mengakibatkan percakapan sebelumnya hilang.

Jaman sekarang ini, hal-hal itu sudah bisa dihindari kalau kita sinkronisasi data kita atau back up di berbagai layanan yang ada di internet, termasuk nantinya mempermudah ketika kita ganti HP. Apalagi kalau kita punya internet koneksi 24 jam, tentunya bisa kita set sinkronisasi data dilakukan ketika kita tidur misalnya.

Ada yang bilang simpan data di Internet tidak aman dan rawan kebocoran privasi. Untuk ini, ya semuanya ada plus minusnya ya, tentunya kita perlu mengamankan semua account yang kita punya. Kalau saya, karena semua foto dan notes saya gak ada konten yang sensitif, kalau cuma ketauan jadwal tiap minggu ngapain aja sih masih gak apa-apa hehehee.

Beberapa hal yang perlu diingat sebelum ganti HP Android adalah:

  • salin kontak lokal semua ke google contacts, dengan cara ini waktu kita ganti HP, kita tidak perlu mencatat ulang nomor-nomor kontak kita
  • kalau terbiasa mencatat jadwal di HP, sinkronisasi ke google Calendar. Waktu ganti HP, otomatis jadwalnya kebawa juga.
  • backup foto ke Google Photos setiap kali HP terhubung WiFi dan atau terhubung WiFi dan dicharge. Dengan cara ini kita juga bisa mengosongkan storage lokal kita ketika foto sudah di backup. Kalau mau punya backup dengan ukuran asli, bisa juga dilakukan dengan kabel data ketika terhubung ke komputer/laptop.
  • backup percakapan WhatsApp ke google drive setiap harinya. Kalau saya, saya set proses backup setiap jam 2 malam, dengan asumsi jam segitu saya lagi tidur. Kalau di backup ketika kita aktif menggunakan HP, pastinya HP akan terasa lambat sekali.
  • percakapan Telegram, semua data otomatis tersimpan di server, jadi tidak perlu di backup.
  • percakapan LINE tidak saya back up karena jarang pakai.
  • biasakan gunakan layanan yang ada loginnya dan ada fasilitas sinkronisasi data ke server, misalnya untuk notes saya gunakan color notes, ketika pindah HP, semua notes saya otomatis terbawa.
  • untuk tulisan yang lebih panjang, saya sudah terbiasa menggunakan google docs, google spreadsheet dengan menyimpan salinan lokalnya untuk mempercepat akses ketika tidak terhubung ke internet, dan nantinya akan disinkronisasi ketika terhubung ke internet.
  • untuk FB, kalau dirasa penting kita bisa juga mendownload semua data kita sesekali. Tapi saat ini saya tidak banyak mengupdate FB dan tidak merasa ada yang penting untuk dibackup, mungkin nanti dibackup kalau ada niat deaktivasi
  • berbagai aplikasi saya login menggunakan FB atau google dan datanya tersimpan di server, kalau lupa password, selalu bisa reset password hehehe
  • untuk keamanan FB dan Google account, saya pakai pengaman tambahan (google authenticator), nah untuk pengecekan pengaman tambahan ini saya perlu pindahkan secara khusus (ini saya minta tolong Joe hehehe)
  • berbagai file lain yang bukan foto dan tidak masuk kategori manapun bisa juga disimpan di dropbox

Dengan mempunyai salinan terhadap semua data kita, seandainya HP saya hilangpun (aduh jangan sampai deh), data saya semua tetap bisa dikembalikan ke HP yang baru. Mungkin akan ada yang bilang: aduh harus langganan berapa banyak tuh untuk simpan data doang. Coba aja hitung-hitung lagi, lebih penting mana kehilangan data atau langganan yang kalau dirata-ratakan perharinya gak seberapa.

Berikut ini proses menyalin data dari HP android lama ke yang baru. Ketika nyalakan HP, setelah setting bahasa dan region akan sampai ke bagian ini

copy apps dan data ketika HP baru beli di nyalakan

Selanjutnya ikuti saja langkah-langkahnya

Saya pilih yang pertama: A backup from and android phone.

Dari gambar, kalau kita tidak ingin menyalin data dari HP lama, kita bisa juga memilih “Don’t Copy”.

akan ada petunjuk membuka google app di hp lama
kita akan di minta untuk memberi perintah”set up my device”

Di HP lama, kita bisa gunakan perintah suara atau ketikkan di google search box “set up my device”, nantinya HP baru akan otomatis mengenali melalui koneksi dengan jaringan Bluetooth dan WiFi.

tekan next di hp lama dan baru
kita akan diminta mengecek apakah bentuknya sama dan klik next di hp lama

Kalau ada beberapa HP android di dekat kita, ketika kita memberi perintah suara, bisa saja HP lain menangkap perintah kita. Untuk meyakinkan kita gak salah menyalin HP, maka kita harus memberi perintah lanjut/next di HP lama yang memang kita ingin salin datanya ke HP baru.

masukkan login akun google kita

Di HP yang baru tentunya kita akan diminta untuk login menggunakan google account kita. Lalu proses menyalin aplikasi dan data dari HP lama pun dimulai.

proses menyalin data di mulai ke Hp baru
kita bisa memilih apa saja yang ingin kita salin

Proses menyalin data ini bisa dipilih, tapi karena saya ingin memindahkan semuanya, maka saya pilih semua. Dengan memilih ini bahkan sejarah telepon keluar masuk juga akan pindah. Calendar, contacts dan photo tentunya juga nantinya tidak perlu diinput ulang. Setting wifi yang sudah pernah kita simpan passwordnya juga akan otomatis terbawa.

Kalau proses ini selesai, apakah HP baru kita sudah 100 persen sama dengan HP baru? sayangnya belum, masih ada tahapan berikut yang harus dilakukan, antara lain:

  • login ulang aplikasi seperti FB, Dropbox, Telegram, Amazon, Apple Music, Grab, Coursera, Duo Lingo, Memrise dan aplikasi lainnya. Beberapa aplikasi yang login menggunakan akun google otomatis sudah bisa langsung di pakai.
  • Memindahkan WhatsApp: backup ke google drive di HP lama, lalu buka dan restore di HP baru. Hapus aplikasi WA di HP lama supaya tidak konflik lagi.
  • Memindahkan file-file di folder “download” secara manual kalau memang masih ada yang penting. Untuk hal ini bisa juga diakali menggunakan dropbox (tapi sekarang ini saya tidak menggunakan dropbox tapi simpan di chat telegram).
  • untuk aplikasi banking dan yang butuh security lebih, Joe pernah menuliskannya di sini.

Biasanya, setelah yakin aplikasi yang dipindahkan berjalan baik di HP baru, saya akan hapus aplikasinya di HP lama. Setelah 1 bulan memakai HP baru dan tidak pernah merasa butuh sesuatu dari HP lama, baru deh saya bolehkan Joe factory reset atau terserah mau dioprek apalagi hehehe. Biasanya HP lama akan dipakai Joe untuk keperluan pentest atau ya untuk cadangan kalau ada HP yang butuh di service.

Walaupun sudah dipermudah begini, saya masih merasa malas proses ganti HP. Prosesnya hanya beberapa jam, tapi ya harus dikerjakan juga untuk pemakaian beberapa tahun ke depan. Ok, semoga lain kali ganti HP jangan sampai kehilangan data penting ya.

Pinjaman Online Ilegal dan Data Anda

Beberapa waktu yang lalu sempat ada berita tentang pinjaman online (ilegal) yang servernya terbuka dan ternyata di dalamnya ada banyak data lain, termasuk data dari provider seperti Telkomsel, XL, Go-Jek dsb. Saya tidak akan membahas mengenai kasus ini secara spesifik karena informasinya sudah diserahkan ke kominfo dan OJK via Xynexis dan saat ini sedang diproses.

Saya hanya ingin membahas: dari mana pinjaman online ini mendapatkan berbagai data pribadi. Data yang saya maksud contohnya data telkomsel ( berapa sisa saldo, kapan terakhir kali mengisi), gojek ( data perjalanan yang pernah dilakukan), dan berbagai layanan lain.

Jawabannya sangat sederhana: dari user itu sendiri secara sukarela. Loh kok ada yang mau memberikan data secara sukarela? karena ada rewardnya. Dalam kasus pinjaman online: jika user bersedia login ke layanan tertentu, maka limit pinjamannya akan dinaikkan.

Perlu diketahui ada beberapa perusahaan (setahu saya semuanya dari China) yang menyediakan SDK (software development kit) untuk memudahkan mendapatkan data dari user Jadi sebuah perusahaan pinjaman tidak perlu repot-repot mempelajari bagaimana protokol Go-jek atau Telkomsel, cukup install SDK tersebut maka aplikasi bisa menerima data dari pengguna.

Contoh penggunaan SDK

Sumber data yang bisa diminta sangat banyak, ini contohnya dari satu perusahaan saja bisa menyediakan ini semua. Masih ada juga beberapa perusahaan yang menyediakan sumber data lain, misalnya BPJS.

Tentunya pihak ketiga tersebut juga bisa menyimpan data untuk tiap orang yang datanya diambil. Jadi jangan kaget kalau data yang tidak pernah diinput di satu aplikasi bisa didapatkan oleh aplikasi lain.

Dengan data ekstra ini para pemberi pinjaman online akan bisa melakukan banyak hal, misalnya:

  • melakukan profiling apakah seseorang punya risiko tinggi untuk kabur
  • mengetahui semua alamat pengiriman belanja online
  • memberi tahu debt collector untuk menunggu Anda di tempat yang biasa Anda datangi dengan Gojek

Penutup

Saya menyarankan: jangan pakai jasa peminjaman online. Alasan utamanya: bunganya sangat tinggi. Untuk yang ilegal, ada banyak masalah:

  • Mereka kadang menggunakan cara kasar untuk penagihan
  • Data pribadi Anda bisa bocor ke mana-mana (dengan sengaja oleh mereka)
  • Mereka tidak menginvestasikan uang untuk keamanan server, jadi data Anda bisa tersebar ke mana-mana karena server mereka dijebol orang lain (atau bahkan kadang terbuka di Internet)
  • Anda juga membocorkan data orang lain (data orang-orang di phonebook Anda)

Kalau bisa sih, jangan miskin supaya tidak butuh pinjaman, tapi tentunya ini sulit.

Sumber dari Video: Lessons from the longest study on human development | Helen Pearson

Server rumah dengan IP publik

Sebagian orang ingin menghosting sendiri berbagai hal di rumah (atau kantor kecil), baik itu web, email, maupun layanan lain. Biasanya koneksi ISP tidak akan memberikan IP publik yang statik tanpa membayar ekstra (biasanya mahal), jadi biasanya banyak trik digunakan supaya server rumah bisa diakses dari luar.

Sebagai catatan sebelum menggunakan trik yang ada di sini: pertimbangkan memakai VPS atau dedicated server. Membuat server di rumah punya banyak kelemahan jika ANda tidak mengerti apa yang Anda lakukan:

  • Koneksi internet dan pasokan listirk di rumah biasanya kurang reliable dibanding data center
  • Jika salah konfigurasi, hacker bisa lebih mudah masuk ke jaringan rumah
  • Mengkonfigurasi semuanya sendiri cukup melelahkan/membuang banyak waktu

Dynamic DNS

Beberapa layanan tertentu seperti web cukup memakai dynamic DNS dan tidak perlu server eksternal tambahan. Artinya sebuah nama domain selalu diupdate IP-nya dengan IP terbaru saat ini. Untuk mengupdate ini bisa digunakan berbagai layanan Dynamic DNS dan server di rumah perlu diinstall software untuk mengupdate pemetaan nama ke IP.

Gambarannya kira-kira seperti ini:

Masalah dengan pendekatan ini adalah: akan ada jeda ketika ada update nama ke IP. Jeda ini karena DNS server akan mengcache informasi IP. TTL terkecil yang bisa diset biasanya 30 detik dan berbagai layanan DNS biasanya mengeset waktu minimumnya 1 menit. Jadi ketika ada pergantian IP, sekitar 1 menit kemudian kita baru bisa mengakses nama tersebut dengan IP baru.

Masalah lainnya adalah: layanan tertentu tidak akan berjalan dengan baik menggunakan pendekatan ini:

  • ISP kadang memblok port tertentu (saat ini ISP saya di sini memblok incoming connection ke port 80 dan 443), tidak bisa menjalankan web server di rumah dengan port standar
  • Andaikan tidak diblok, beberapa layanan seperti email tidak suka dengan IP dinamik (kadang IP masuk ke daftar spam list)

SSH Forwarding

Solusi ini dan berikutnya akan butuh sebuah server VPS. Kalau butuh VPS, kenapa tidak dihosting di VPS saja sekalian? ada beberapa alasan mengapa kita ingin hosting di rumah dengan menggunakan IP VPS:

  • Mungkin VPS-nya kurang powerful (VPS termurah hanya sekitar 5 USD, tapi disk dan RAM-nya kurang besar)
  • Kita ingin data tetap ada di rumah/kantor karena berbagai alasan. Alasannya bisa mengenai privasi, mengenai kemudahan update data/program, dsb.

Jika keperluannya hanya sederhana, SSH Forwarding bisa dilakukan. Saya pernah menjelaskan teknik ini di artikel saya yang lain mengenai SSH. Ini merupakan cara sederhana karena:

  • Tidak perlu setup sesuatu yang kompleks di server (cukup akses SSH yang biasanya memang sudah aktif), hanya perlu mensetup konfigurasi agar Remote Port Forwarding diijinkan
  • Tidak perlu setup sesuatu di client, cukup perlu SSH Client saja.

Satu VPS juga bisa dikoneksikan dengan beberapa server rumah. Mungkin server yang satu untuk web server, dan server yang lain untuk keperluan backup atau email. Atau bisa juga beberapa domain ditangani oleh satu VPS dan diforwarde (dengan apache/nginx atau yang lain) sesuai dengan domainnya.

Intinya adalah: dari server di rumah, kita melakukan SSH ke VPS. Koneksi ke port tertentu ke VPS akan diforward ke server di rumah. Kelemahan SSH forwarding adalah: dari sisi server di rumah semua incoming IP dianggap dari localhost.

Contohnya: pengunjung web dari Belanda, akan melakukan koneksi VPS server tersebut (misalnya di Singapura) lalu koneksinya di forward ke server rumah (misalnya di Indonesia). Di web server di Indonesia, terlihat koneksinya dilakukan dari IP localhost. Jaid bukan dari Belanda ataupun dari Singapura.

Masalah lain SSH adalah: koneksinya bisa putus. Di Linux program autossh bisa dipakai untuk menjaga agar koneksi tetap hidup. Di Windows kita bisa memakai SSH Client dari BitVise yang bisa melakukan auto reconnect.

VPN + DNAT

Ada banyak solusi VPN yang bisa dipakai. Salah satunya yang pernah saya bahas adalah dengan tinc. Bahkan VPN dengan SSH juga bisa dilakukan (dengan menggunakan tunnel device). Dengan VPN, sebuah VPS akan memiliki 2 network interface, satu yang menghadap publik, dan satu yang menghadap ke client VPN (dalam hal ini server di rumah).

Dengan menggunakan DNAT kita bisa mengarahkan agar paket yang diterima di server akan diforward ke client VPN. Perhatikan bahwa ada banyak cara melakukan forwarding ini. tergantung setting firewall dan cara forwardingnya, maka ada dua kemungkinan:

  • Source IP koneksi bisa berasal dari IP VPN server publik (biasanya bukan ini yang diharapkan)
  • Source IP koneksi bisa dari client yang melakukan koneksi ke VPS

Saat ini ada banyak jenis firewall, tergantung OS yang dipakai (iptables, nftables, ipfw, dsb), jadi saya tidak akan membahas detail settingnya, tapi hanya beberapa hal saja yang penting diperhatikan ketika mensetup ini:

  • Pastikan IP forwarding diaktifkan di VPS
  • Pastikan bahwa firewall rule paket dari IP publik berhasil diterima dan diteruskan ke VPN (bisa dicek dengan menggunakan tcpdump -i INTERFACEVPN)
  • Di sisi server rumah: pastikan koneksi yang datang memiliki source address yang benar
  • Ketika server rumah membalas paket yang datang, pastikan koneksi harus lewat VPN lagi (jangan salah membalas langsung lewat IP rumah)

Penutup

Artikel ini tidak membahas detail tiap perintah dan setting yang diperlukan untuk mengimplementasikan masing-masing solusi. Silakan dicari lagi detailnya dengan berbagai kata kunci yang dipelajari di sini (misalnya: Dynamic DNS, Remote Port Forwarding, DNAT dsb). Artikel ini sekedar memberikan pemahaman saja, bukan tutorial.

Salah satu pertanyaan yang paling tidak saya sukai adalah mengenai jaringan komputer. Untuk bisa menjawab suatu pertanyaan, biasanya saya perlu bertanya banyak hal mengenai konfigurasi jaringan saat ini, software yang dipakai dsb. Menanyakan hal semacam ini butuh waktu yang biasanya sangat lama. Setelah itu ada masalah: versi kernel, versi software dsb. Belum lagi jika ada masalah ISP memblokir sesuatu. Semuanya ini bisa dicari sendiri di Internet.

Semoga informasi ini berguna, dan sekali lagi mohon jangan bertanya detail cara melakukan setup semuanya. Silakan digoogling sendiri detailnya.

VPN dengan Tinc

Saat ini ada banyak sekali solusi VPN yang tersedia dengan segala kelebihan dan keterbatasannya. Beberapa contoh solusi yang populer dan gratis adalah OpenVPN, strongSwan, WireGuard, berbagai implementasi PPTP, tinc, dan VPN via SSH. Posting ini akan membahas mengenai tinc yang memiliki fitur mesh networking.

Beberapa perbedaan dari berbagai solusi VPN ini adalah:

  • Support platformnya. Contoh: saat ini wireguard tidak memiliki client di Windows, jadi kalau Anda memakai Windows, ini jelas tidak akan dipertimbangkan.
  • Kemudahan instalasinya (contoh: VPN melalui SSH cukup rumit setupnya, terutama di Windows)
  • Kecepatannya (ini biasanya hanya jika Anda memakai link dengan kecepatan tinggi) dan CPU usagenya (jika memiliki komputer dengan spesifikasi rendah)
  • Keamanannya, walau secara praktis serangan terhadap berbagai protokol VPN ini jarang/sulit dilakukan kecuali pada protokol kuno seperti PPTP.

Selain berbagai perbedaan teknis, pertimbangan lain memilih VPN adalah: apakah protokol VPN tertentu atau port tertentu diblok oleh ISP. Contohnya di ISP saya saat ini VPN dengan PPTP diblok, jadi harus menggunakan yang lain.

Karena ada begitu banyak software VPN, maka saya tidak akan membandingkan semuanya dan hanya akan membahas tinc saja di posting ini. Pengetahuan di atas sekedar untuk memberitahu bahwa tinc mungkin bukan solusi terbaik di berbagai skenario.

Seperti saya singgung di atas Kelebihan tinc adalah kemampuannya membuat mesh network. Mungkin ada yang bertanya-tanya: maksudnya mesh networking seperti apa sih? Maksudnya adalah sebuah node bisa terkoneksi ke node lain tanpa melalui hierarki tertentu dan sifatnya dinamik.

Semua VPN bisa kita gunakan untuk membuat konfigurasi seperti ini: ada server dan banyak client.

Dengan tinc kita bisa membuat konfigurasi seperti gambar berikut.

Garis yang saya gambarkan ini sekedar menunjukkan bahwa ada setting agar suatu node melakukan koneksi ke node tertentu. Dalam praktiknya: setelah kita mengkonfigurasi ini, kita bisa melakukan koneksi dari satu node ke node manapun.

Contoh konfigurasi di atas kira-kira seperti ini:

  • Ada 2 VPS (Node 1 dan Node 4) dengan IP Publik
  • Node 2 dan 3 diset bisa melakukan koneksi ke node 1 (IP node i ini publik jadi mudah setting ini)
  • Node 5 dan 6 diset bisa melakukan koneksi ke node 4
  • Node 7 (mungkin ini sebuah virtual machine di Node 6) diset untuk melakukan koneksi melalui Node 6

Tentunya konfigurasi jaringannya bisa seperti apa saja: intinya sebuah node bisa dikoneksikan ke satu atau lebih node lain (contohnya bisa saja dibuat setting bahwa Node 2 bisa terkoneksi langsung ke Node 3).

Setelah setting ini selesai, koneksi dari node manapun ke manapun bisa dilakukan seolah-olah semuanya ada di jaringan yang sama. Jadi node 7 ke node 2 bisa langsung dilakukan.

Bagaimana jika kita ingin menambah node baru? misalnya ingin menambah VM di node 6, sehingga ada Node 8 yang terkoneksi ke node 5, apakah kita perlu susah payah mengubah semua konfigurasi? Jawabannya: tidak, kita cukup menambahkan di node 6 bahwa ada node bernama Node 8 dengan public key tertentu, dan di Node 8 perlu diberi public key Node 6 supaya bisa tahu bahwa Node 6 ini adalah node yang valid.

Kehebatan tinc adalah jika kita menambahkan Node 8 yang terkoneksi ke Node 6, maka Node 7 dan 8 bisa berkomunikasi langsung di jaringan lokal, tidak melalui VPS. Bahkan bisa juga kita mengkonfigurasi agar Node 2 dan 3 juga melakukan koneksi ke dua VPN bukan cuma 1 (ke Node 1 dan Node 4). Jika Node 1 down, otomatis route lain akan diambil (lewat Node 4).

Atau jika masih sulit dibayangkan. Anggap saja semua node tersebut seolah terhubung ke sebuah switch virtual (atau hub, tergantung modenya di konfigurasi tinc). Karena terhubung ke switch maka semua seolah berada di jaringan yang sama.

Konfigurasi di Linux

Untuk menkonfigurasi sebuah node, yang perlu dilakukan:

  • membuat sebuah direktori dengan nama jaringan yang kita inginkan
  • membuat file tinc.conf di direktori itu
  • membuat private dan public key untuk host kita
  • mengcopy public key host lain yang ingin kita hubungi
  • mengkonfigurasi interface jaringan

Bagian terakhir (konfigurasi interface jaringan) ini yang berbeda di tiap OS. Kita bisa memakai skrip atau mensetup manual.

Tentunya sebelum mulai, kita perlu menginstall tinc. Gunakan software package manager yang sesuai untuk OS masing-masing atau gunakan installer untuk Windows. Di ubuntu/debian:

apt-get install tinc

Saya contohkan jaringan kecil pertama, dengan node1 ada di eksternal (punya IP publik), sedangkan yang lain IP-nya private. Saya beri nama jaringan ini: jaringanku. Bayangkan saja nama jaringan ini seperti nama sebuah switch dalam ilustrasi sebelumnya.

Untuk contoh ini host eksternal saya beri nama “serverku” dan host internal “komputerku“. Sekarang kita konfigurasi serverku:

Buat direktori baru:

sudo mkdir -p /etc/tinc/jaringanku/hosts

Buat file tinc.conf (pathnya: /etc/tinc/jaringaku/tinc.conf). Isinya:

Name = serverku
AddressFamily = ipv4
Interface = tun0

Buat file /etc/tinc/jaringanku/hosts/serverku dengan isi:

Address = alamat_ip_publik_serverku
Subnet = 10.0.0.1/32

Artinya IP server ini dalam jaringaku adalah 10.0.0.1, tentunya ini bisa diganti dengan IP private manapun. Saya sendiri sudah memakai IP 192.168 di jaringan rumah saya, jadi saya memakai 10.x.x.x untuk tinc.

Lalu buat private/public key untuk server ini, tekan saja enter untuk berbagai pertanyaan defaultnya

 tincd -n jaringanku -K4096

Sekarang kita butuh skrip untuk mengeset IP ketika jaringan up dan menghapus IP ketika jaringan down.

Buat: /etc/tinc/jaringanku/tinc-up dengan isi:

#!/bin/sh
ifconfig $INTERFACE 10.0.0.1 netmask 255.255.255.0

Catatan: sebenarnya cara yang lebih modern adalah menggunakan perintah “ip addr add”. Tapi cara ini masih kurang cross platform (tidak jalan di BSD dsb). Jadi saya masih lebih suka memakai ifconfig.

Dan /etc/tinc/jaringanku/tinc-up

#!/bin/sh
ifconfig $INTERFACE down

Jangan lupa diset modenya agar bisa dieksekusi:

sudo chmod +x /etc/tinc/jaringanku/tinc-*

Sekarang untuk komputerku (yang ipnya private) langkahnya sangat mirip. Hanya saja di sini ada konfigurasi agar koneksi dilakukan dari host ini ke server publik (tidak bisa sebaliknya karena server publik tidak bisa melakukan koneksi ke jaringan internal).

sudo mkdir -p /etc/tinc/jaringanku/hosts

Isi tinc.conf disesuaikan: namanya dan ada ConnectTo

Name = komputerku
AddressFamily = ipv4
Interface = tun0
ConnectTo = serverku

Sekarang buat file /etc/tinc/jaringanku/hosts/komputerku dengan isi:

Subnet = 10.0.0.2/32

Cukup itu saja, kita akan memberi alamat 10.0.0.2 ke komputerku. Buat juga key untuk node ini

 tincd -n jaringanku -K4096

Isi /etc/tinc/jaringanku/tinc-down sama dengan serverku, tapi isi tinc-up sedikit berbeda (IP-nya disesuaikan)

#!/bin/sh
ifconfig $INTERFACE 10.0.0.2 netmask 255.255.255.0

Nah sekarang langkah penting: setiap kali 2 node terhubung langsung, kedua node tersebut perlu tahu key satu sama lain. Jadi intinya:

  • Copy isi /etc/tinc/jaringaku/hosts/serverku di server ke
    /etc/tinc/jaringaku/hosts/serverku di komputerku
  • Copy isi /etc/tinc/jaringaku/hosts/komputerku ke
    /etc/tinc/jaringaku/hosts/komputerku di server

Jadi misalnya kita mau menambah laptop (misalnya namanya: laptopku yang akan dipakai jalan-jalan dengan IP yang berbeda-beda), settingnya sama dengan komputerku. Kita cukup perlu copy key laptopku ke serverku dan isi key serverku ke laptop dan dari laptop kita bisa konek ke komputerku.

Dalam kasus itu kita tidak perlu mengcopy key komputerku ke laptop, walau boleh saja kalau mau. Misalnya supaya gampang, semua isi file hosts dicopy ke sebuah hosting atau dropbox dan tiap kali setup komputer baru, semua file-file di copy ke /etc/tinc/jaringaku/hosts/. Isinya hanya public key yang tidak rahasia, yang rahasia adalah private keynya.

Nah sekarang saatnya testing. Di server dan komputer jalankan:

 tincd -D -d4 -n jaringanku

Jika semua beres, dari server kita bisa ping ke 10.0.0.2 (ke komputer) dan dari komputer kita bisa ping ke 10.0.0.1 (ke server). Jika semua lancar, kita bisa men-kill tincd dan membuatnya permanen. Supaya permanen, di sistem yang memakai systemd kita bisa menggunakan ini:

systemctl enable [email protected]
systemctl start [email protected]

Setting di Windows

Sebenarnya konfigurasinya sama saja dengan Linux. Yang berbeda adalah instalasinya dan lokasi direktorinya. Supaya tidak terlalu panjang artikelnya, silakan lihatpetunjuk instalasi di : https://www.tinc-vpn.org/examples/windows-install/

Lokasi direktori konfigurasi ada di: C:\Program Files (x86)\tinc (pada Windows 64 bit) atau C:\Program Files\tinc (Windows 32 bit). Buat direktori: “jaringanku” di dalam direktori tersebut (butuh hak admin, seperti halnya di Linux butuh root).

Untuk konfigurasi IP: kita tidak memakai skrip up dan down, IP di setting manual melalui GUI. Cara testingnya sama:

 tincd -D -d4 -n jaringanku

Dan jika sudah OK, untuk membuat permanen (diinstall sebagai service).

 tincd -n jaringanku

Jika ingin merestart, mendisable, atau menghapus service ini, maka bisa dilakukan melalui GUI Services di Windows. Atau jika menguasai PowerShell ini juga bisa dilakukan via PowerShell

Berikutnya

Setting tinc yang saya jelaskan hanya supaya kedua host terkoneksi dengan ip internal. Setelah itu kita bisa mensetup banyak hal lain, tapi tidak akan dibahas di sini. Contohnya yang bisa disetting:

  • Jika kita ingin membagi koneksi internet server ke client (supaya client bisa browsing web dengan IP server seperti koneksi VPN pada umumnya) kita bisa memakai IP masquarading atau menginstall proxy server di server.
  • Jika kita ingin server di rumah kita diakses dari luar, kita bisa memakai DNAT (atau SSH remote port forwarding).

Sebagai penutup: mengetahui berbagai teknologi VPN bisa sangat berguna dan bisa dipakai untuk menyelesaikan masalah sesuai kebutuhan kita.

SSD 1 TB

Ini sekedar catatan kapan saya mulai memakai SSD 1 TB dan bagaimana prosesnya memindahkan Windows ke SSD baru. Bulan April 2017 saya membeli SSD 480 GB merk Sandisk untuk desktop utama saya dengan harga 5390 baht dari JIB, dan kemarin saya mengganti SSD ini dengan yang kapasitasnya 1 TB merk Crucial dengan harga 4690 baht (plus 42 baht ongkos kirim) dari invadeIT.

SSD 480 GB-nya masih akan saya pakai di komputer lain karena sebenarnya masih bagus, hanya saja kapasitasnya sudah kurang untuk berbagai pekerjaan yang perlu saya lakukan. Setiap kali SSD mendekati penuh, saya jadi “sibuk” yang tidak berguna. Setiap beberapa minggu saya perlu memindahkan data ke yang sudah jarang dipakai harddisk dan memindahkan data yang saat ini sedang dipakai ke SSD .

Dalam 2 tahun ini harga SSD kira-kira sudah turun 1/2 nya. Sebagai perbandingan, dulu waktu saya mulai memakai SSD 7 tahun yang lalu harganya masih 3400 baht untuk 60 GB. SSD yang saya beli 7 tahun yang lalu saat ini masih berfungsi normal, tapi saya sudah tidak berani menaruh data penting di situ.

Dulu terakhir saya memindahkan data ke SSD sekalian menginstall ulang Windows sekaligus membuang berbagai program yang sudah tidak saya pakai. Kali ini saya sangat malas sekali menginstall ulang semua jadi saya memakai software Easus Todo Backup Free.

Di Linux saya mengerti 100% bagaimana melakukan transfer sistem ke disk baru tanpa menimbulkan masalah, tapi di Windows saya selalu khawatir jika ada aplikasi yang tiba-tiba tidak jalan. Contohnya yang pasti tidak jalan adalah aplikasi yang memakai serial number disk untuk lisensi, dan ketika diganti disknya: lisensinya tidak valid. Selain itu kadang ada program-program tertentu yang juga “ngambek” jika disknya berganti kapasitas. Ini baru kali pertama saya memakai Easus dan ternyata cukup lancar walau prosesnya tidak 100% seperti yang diharapkan.

Proses copy system memakan waktu hampir 2 jam, dan setelah itu Windows bisa booting normal (saya cabut SSD lama supaya yakin). Saya khawatir dengan hasil copynya karena proses copy dilakukan ketika Windows masih berjalan, jadi bisa saja ada file yang hilang jika filenya dibuat setelah selesai dicopy ke disk baru (contoh: saya melakukan screencap proses backupnya, tapi karena itu disimpan di drive yang dicopy, hasilnya jadi hilang).

Supaya yakin, saya melakukan scan disk pada SSD setelah booting, dan hasilnya: windows sempat restart berkali-kali dan ada pesan bahwa Windows telah beberapa kali gagal booting normal, apakah ingin masuk ke safe mode?. Saya menjawab agar meneruskan booting normal, dan puji Tuhan Windowsnya bisa boot normal.

Saya masih belum yakin dengan instalasi Windowsnya jadi saya menjalankan :

sfc /scannow

Sebagai administrator. Hasilnya: ada beberapa file corrupt yang berhasil dipulihkan. Karena belum 100% yakin, saya juga menjalankan:

DISM /Online /Cleanup-Image /ScanHealth

Dan ternyata tidak ada masalah. Sendainya ada masalah saya akan menjalankan: DISM /Online /RestoreHealth. Setelah itu saya melakuan restart, check semua disk sekali lagi, dan semua beres. Demikian catatan kali ini, semoga berguna juga untuk orang lain yang ingin memindahkan Windows ke SSD baru.

Download video Youtube

Dulu waktu kami sampai di Chiang Mai, kecepatan internet kami hanya 1 MBPs dan waktu itu kebetulan karena faktor tertentu Youtube sedang diblokir di Thailand. Setelah ada Youtube kami bisa streaming dengan lancar dan waktu itu belum pernah butuh download video dari Youtube.

Tapi kemudian ternyata ada banyak alasan kenapa kami jadi butuh download video Youtube. Di jaman kami memakai tablet Blackberry Playbook, Youtube hanya bisa dimainkan jika terhubung ke Internet via WIFI jadi mau tidak mau harus mendownload video agar bisa dibuka offline ketika sedang jalan di luar.

Dulu ada beberapa video yang disukai Jonathan dan videonya tiba-tiba diremove dari Youtube. Pelajaran berikutnya: jika memang ada video yang dirasa “penting”, maka sebaiknya perlu didownload. Ini juga berguna jika internet mati sementara (walau cukup jarang).

Sekarang Youtube mobile sudah memiliki fitur untuk mendownload video tertentu (tidak semua video bisa didownload). Fitur ini cukup berguna, terutama jika ingin bepergian tanpa akses Internet sementara (misalnya dalam penerbangan), tapi secara umum kurang berguna untuk sehari-hari.

Mendownload video dari Youtube juga berguna karena video bisa dimainkan bebas iklan setelah download. Di browser jika kita memakai uBlock Origin kita bisa memblok iklan dari Youtube, tapi di Android/iOS kita tidak bisa memakai ini. Sebenarnya ada berbagai cara untuk melihat video youtube tanpa iklan, tapi ini main kucing-kucingan dengan Google dan sekarang lebih sering gagal. Jadi download video adalah cara paling efektif menonton bebas iklan untuk video panjang.

Dulu saya sempat memakai berbagai website dan extension untuk membantu mendownload video youtube, tapi semuanya tidak tahan lama. Video downloader yang saya pakai selama beberapa tahun terakhir ini adalah: youtube-dl. Ini berbasis command line, walau ada juga yang membuatkan interfacenya. Selain bisa dipkai mendownload video Youtube, youtube-dl juga bisa digunakan mendownload video dari berbagai situs video lainnya.

Perlu diperhatikan bahwa mendownload video ini tidak sepenuhnya legal, jadi sebaiknya jangan diupload lagi ke situs lain. Hasil download video tidak saya bagikan ke orang lain dan hanya untuk keperluan sendiri.