Menu Close

Mempergunakan tinc untuk melayani akses website pada VirtualBox

Saya memiliki sebuah server dari WinnerVPS dengan lokasi di Indonesia, dan juga sebuah BlockExplorer untuk Indocoin yang dijalankan pada VirtualBox pada komputer. Bagaimana caranya agar program BlockExplorer tersebut bisa diakses oleh umum? Ada beberapa contoh solusi sebagai berikut :

  • Mempergunakan layanan No-IP atau dinamic dns
  • Mempergunakan tinc dan proxy Nginx

Kali ini, saya akan membuat tutorial supaya website atau aplikasi yang dijalankan secara lokal dapat diakses secara umum memakai tinc. Secara konsep, pengunjung membuka alamat indocoin.ddns.net, yang diset di no-ip memakai IP dari WinnerVPS, kemudian diteruskan kepada VirtualBox.

URL --- VPS --- Local Server
indocoin.ddns.net --- VPS (tinc server) --- Local Server (tinc client)

  Dalam konsep ini, kita mempergunakan aplikasi tinc, karena koneksi antar server dapat terjadi secara langsung, tanpa diperlukan port forwarding untuk keperluan akses port. Untuk keperluan nama domain, saya memakai no-ip karena gratis, jadi kita tidak perlu membeli sebuah domain (kecuali memang sengaja ingin memakai domain sendiri).  

  • Konfigurasi No-IP

Silakan isi Hostname sesuai keinginan, dan IPv4 Address dengan IP VPS  

  • Konfigurasi tinc server di VPS

    Edit  /etc/tinc/tinc-up :

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

    Edit /etc/tinc/tinc-down :

    #!/bin/sh
    ifconfig $INTERFACE down

    Edit /etc/tinc/tinc.conf :

    Name = winnervps
    AddressFamily = ipv4
    Interface = tun1

    Edit /etc/tinc/hosts/winnervps

    Subnet = 10.0.0.1/32
    Address = 103.236.255.255

    -----BEGIN RSA PUBLIC KEY-----
    Gu7KXPZymIPXDfPcBJXmovJZCL234QtbWqvhEGoEQltyLOHQIWX0/umyHBvANmsQ
    akQUYoSHxXpXBzHE9IlYYJiTFjX3t+GICKgb/8YUZlHeFNBJ6EoPQi9ETRnCigHl
    VEF+dNDsjXCpf2UeqV8HT6kNlgnCIcntqtONSrEmhsR/J2eYd8ZduzG7be1ZMhRi
    YpFhJfpD4TCJpfk6BYlxVD89fioghOiJBbzQhC0e3vgmrTDznSiYcpRcr3qGEtjz
    -----END RSA PUBLIC KEY-----

    Edit file /etc/nginx/sites-enabled/indocoin.conf

    server {
        listen 80;
        server_name indocoin.ddns.net;

        location / {                                                             
                proxy_pass http://10.0.0.2:25000; # IP dan Port disesuaikan dengan Raspi
                proxy_set_header Host $host;                                     
                proxy_buffering off;     
            
        } 

    }

     

  • Konfigurasi tinc client di RaspberryPiEdit file /etc/tinc/tinc-up :
    #!/bin/sh
    ifconfig $INTERFACE 10.0.0.2 netmask 255.255.255.0

    Edit file /etc/tinc/tinc-down

    #!/bin/sh
    ifconfig $INTERFACE down

    Edit file /etc/tinc/tinc.conf :

    Name = virtualbox
    AddressFamily = ipv4
    Interface = tun1
    ConnectTo = winnervps

    Edit file /etc/tinc/hosts/virtualbox

    Subnet = 10.0.0.2/32

    -----BEGIN RSA PUBLIC KEY-----
    MIICCgKCAgEAyoRSK1A014PgLwIJj7VjdgGYyT0LIIyoHp6jx9dz9GFwMzP4qWFg
    /FG/ekMQh+GO5BQEYu2EN9HqB2PE+GCrHoru0MsFBREFVo4cAYGnfS6Yt0iNtN/E
    27Z+XOVGbKM4StdAkSl6Z6SgxlLEk4/qfTyHUfmcdXNrrCSu58ynaeuoZqdFFkZG
    -----END RSA PUBLIC KEY-----

    Blockexplorer dijalankan pada port 25000 di VirtualBox, misalnya kita ingin mengganti BlockExplorer dengan aplikasi lain, silakan saja sesuaikan portnya di file konfigurasi Nginx di VPS Supaya tinc server dan client dapat saling berkomunikasi, kita perlu mengcopy file yang ada di /etc/tinc/hosts ke masing-masing perangkat/server/raspi. Contoh penerapan tinc ini, tidak hanya untuk webserver, tapi bisa juga untuk cctv, dengan mengikuti contoh dan tinggal menyesaikan konfigurasinya. Untuk tutorial seting tinc di server dan client, ada banyak di internet, jadi saya hanya ambil garis besarnya saja disini . Semoga bermanfaat ya…

 

 

  • Update 8September 2019:
    Saya mempergunakan Raspberry PI yang terhubung pada sebuah VPS dari Hostforce dengan lokasi di Salem, North Carolina melalui tinc.
    Raspberry PI ini digunakan untuk mendownload Torrent memakai Deluge dan Deluge Web, dengan domain memakai jasa ddns dari noip.com sehingga dapat diakses melalui web.
    Semua request terhadap domain akan dilayani oleh Nginx di VPS, kemudian diteruskan kepada IP internal tinc Raspberry PI, tanpa perlu mengatur port forwarding Speedy.
    Selain untuk download Torrent, Raspberry PI ini juga dipergunakan untuk mining Indocoin, jadi perlu dapat diakses dari luar jaringan internet di rumah untuk dikontrol sewaktu-waktu.

Leave a Reply

Your email address will not be published. Required fields are marked *