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 VPSEdit  /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…

Leave a Reply

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