Tag: Linux

  • Tunnel Dinamis Dengan SSH

    Belum lama ini saya berdiskusi dengan kawan saya yang kebetulan di terminalnya terpasang sangat banyak ssh tunnel ke banyak mesin yang di kerjakannya.
    Saking banyaknya port yang di mapping sampai-sampai dia membuat table untuk mencari tahu port berapa yang di mapping ke port berapa.

    Teknik yang digunakan oleh kawan saya ini bisa di padankan dengan perintah ssh sebagai berikut

    ssh -f user@jumphost -L 2021:192.168.100.1:22 -N

    Yang artinya, ssh ke jumphost dengan username user, buat port 2021 di localhost yang kalau port 2021 tersebut dipanggil maka akan membuka koneksi ke ip 1982.168.100.1 port 22. Dengan cara ini kawan saya bisa melakukan ssh ke ip 192.168.100.1 pada port standar ssh yaitu port 22 dengan menggunakan perintah

    ssh -p 2021 user@localhost

    Bila perintah pertama dilakukan untuk banyak mesin dengan port berbeda-beda maka hasilnya seperti nampak pada ilustrasi dibawah ini

     

    ssh tunnel ilustration

    Tentu kalau jumlah mesin dan port yang akan di mapping sedikit tidak masalah. Tapi bagaimana kalau jumlahnya mencapai ratusan ?

    Mari kita coba cara yang lebih mudah.

    Saya  memilih menggunakan fitur untuk sock proxy yang tersedia pada ssh

    ssh -D 9054 user@jumphost

    Artinya, ssh ke jumphost dan buat sock proxy di localhost pada port 9054

    Kemudian saya menggunakan ssh dengan bantuan tools nc seperti ini

    ssh -o ProxyCommand=’nc -x localhost:9054 %h %p’ user@192.168.100.1

    Arti perintah diatas adalah ssh yang diantarkan oleh tools nc ke alamat proxy localhost dan port 9054, dengan username user dan ip yang akan di ssh adalah 192.168.100.1. Sedangkan %h berarti host dan %p adalah port (dapat dilihat referensinya pada manual ssh dibagian proxycommand).

    Untuk browser dapat dengan mengaktifkan sock proxy ke localhost port 9054 atau menggunakan command line

    chromium –proxy-server=”socks5://127.0.0.1:9054″

    selanjutnya jelas akan lebih mudah, saya tidak perlu menghafalkan port mana untuk menghubungkan ke mesin mana dan port yang mana.

     

  • Misteri Free Memory Yang Tersisa

    Beberapa waktu lalu saya berada dalam sebuah pembicaraan tentang grafik memory terpakai dari sevuah mesin yang mendadak melonjak sebanyak 10% dan tidak juga turun. Kemana dan siapa pengguna dari 10% tambahan ini.

    Beginilah ceritanya
    Di mesin linux ketika kita menjalankan perintah free akan didapat beberapa informasi diantaranya memory used, free dan cache.
    Kebanyakan orang hanya memperhatikan bagian free dan used. Padahal free disini bukanlah free sebenarnya bila kita memandang dari sudut aplikasi. Karena free yang sebenarnya adalah menggunakan formula
    Real Free = Free+Cache

    Mengapa demikian, karena cache sebetulnya adalah bagian memory yang diambil oleh system dan dipersiapkan untuk digunakan oleh aplikasi. Baru dipersiapkan dan belum digunakan. Karena begitulah cara system bekerja. Dia aoan mengambil bagian memory untuk dipersiapkan ketika ada permintaan penggunaan memory oleh aplikasi.

    Sehingga jangan takut ketika melihat free memory menciut banyak.

  • Migrasi Server MySQL

    Belum lama ini saya melakukan migrasi database mysql dari 1 mesin ke mesin yang lain yang mana lokasi mesin tersebut berjauhan bahkan sudah beda negara. Migrasi ini dilakukan melalui jaringan internet.

    Karena kondisinya sedang non aktif pekerjaan ini menjadi lebih sederhana. Berikut urutan yang dilakukan.

    Mari kita asumsinya sebagai berikut

    • ip mesin sumber  12.34.56.78 kita sebut sebagai mesin A
    • ip address mesin barunya  87.65.43.21 kita sebut sebagai mesin B
    • Nama database adalah DATAGUA

     

     

    Pastikan mysql di mesin A dapat di buka menggunakan akses internet.

    Pada konfigurasi mysql

    bind-address    = 12.34.56.78

    Lalu buatlah sebuah user yang memberikan ijin user misalnya user “asalnya” boleh mengakses accountnya dari ip tertentu. Kita lakukan query berikut menggunakan mysql shell

    GRANT ALL ON *.* TO asalnya@'87.65.43.21' IDENTIFIED BY 'passwordnya';

    Untuk memberikan akses terbatas dapat mengganti *.* pada perintah mysql dengan database.*

    lalu dari mesin B kita mengakses database  menggunakan mysqldump melalu perintah shell seperti contoh berikut

    mprasodjo@gauli.com:~$ mysqldump -u asalnya -p -h 12.34.56.78 DATAGUA > DATAGUA_dump.sql

    Kemudian kita bisa duduk tenang dulu ngopi ngopi karena berapa lama selesainya mysqldump ini bekerja tergantung pada berapa besar data dan juga seberapa cepat koneksi yang dimiliki ke-2 mesin.

    Setelah selesai mysqldump akan langsung kembali ke prompt.

    Berikutnya yang kita lakukan adalah

    buatlah database terlebih dahulu

    mprasodjo@gauli.com:~$ mysql -u root -p
    Enter password: 
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 366
    Server version: 5.5.28-0ubuntu0.12.04.3 (Ubuntu)
    
    Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql>
    mysql>create database DATAGUA;
    
    

    Kemudian dari shell

    mprasodjo@gauli.com:~$ mysql -u root -p DATAGUA < DATAGUA_dump.sql

    Dan datapun telah berpindah dan siap digunakan.

    *nyeruput kopi dulu

     

     

  • Tentang Ubuntu 9.10 Karmic yang saya pakai

    Berikut ini adalah pengalaman saya menggunakan ubuntu 9.10 dari semenjak dia lahir hingga sekarang. Ubuntu 9.10 ini hadir dalam mesin saya dalam prosesi upgrade dari 9.04 menggunakan mode net upgrade.

    Peringatan : Tulisan ini mungkin tidak lengkap dan bersifat subjektif.

    Suka

    • Kecepatan loading yang lebih baik
    • Interaksi yang lebih baik dan nyaman
    • Stabilitasnya makin hari makin baik
    • Dual head terasa lebih baik dan terfasilitasi dengan lebih baik

    Benci

    • Saya biasa menggunakan mode text bila akan melakukan dialup ke hp 3G saya menggunakan bluetooth. Tapi ternyata rfcomm tidak langsung aktif. Dan belum sempet mencari lebih lanjut mengapanya. Untuk bisa melakukan dialup saat ini harus menggunakan blue-man, yang lalu mengkonekan hp dengan laptop dahulu, baru melakukan dialup lewat preconfig di menu “Edit Connections”
    • Firefox terasa jauh lebih berat memakan resource dibanding waktu 9.04. Tapi bisa jadi ini terjadi karena versi firefoxnya juga lebih baru dibanding waktu menggunakan 9.04. Tapi yang pasti dengan kondisi plugin/addon yang sama dengan waktu menggunakan 9.04, penggunaan cpu sering kali tahu-tahu bertahan di 100%.
    • Eclipse yang saya pakai mendadak berantakan. Banyak tulisan dalam combo box menjadi tak nampak (dan belum sempat saya coba untuk me-resolve-nya)
    • Beberapa codec tidak berjalan semestinya. Misalnya beberapa video yang tadinya bersuara, menjadi tidak bisa lagi bersuara.

    Anyway, busway….

    Saya sedang mempertimbangkan kembali untuk mengubah kembali laptop ini ke Slackware tercinta.

    Back to Basic-lah kata orang jawa hehehe

  • [Linux] Menyelamatkan file yang terhapus

    Mungkin anda pernah mengalami ketika tak sengaja mendelete sebuah file dari sistem linux anda.

    Anda bisa menggunakan beberapa tools yang tersedia dan bisa berjalan di linux

    1. TestDisk (http://www.cgsecurity.org/wiki/TestDisk)

    2.  recoverjpeg (http://www.rfc1149.net/devel/recoverjpeg)

    3.  recover (http://recover.sourceforge.net/linux/recover/)

    Kemampuannya cukup baik dalam mengangkat file-file yang telah terhapus bahkan partisi yang rusak. Hanya saja memang program ini berbasis text dan harus dijalankan dengan privileges root.

    Menu-menunya cukup sederhana, anda tinggal memilih dari menu tanpa perlu pusing dengan parameter.