Tutorial Cara Akses Server Lokal Via Jaringan Internet

Definisi Server Lokal

Lokal server adalah Komputer yang dikonfigurasi agar resourcenya dapat dimanfaatkan oleh komputer lain untuk melakukan pekerjaan (Server yang melakukan pekerjaan, Client menerima hasilnya),resource yang di share bisa berupa File,Storage,Aplikasi,Device (Printer ,scanner,kamera,dll) yang dapat digunakan oleh komputer yang ada di dalam jaringan tersebut.

Tanpa konfigurasi dan pemberian ip public/NAT pada server local ,secara default server hanya dapat diakses dari jaringan lokal dan tidak bisa diakses menggunakan jaringan internet.

IP Private vs IP Public dan Jenisnya

Pada dasarnya agar komputer dapat terhubung ke jaringan internet,komputer tersebut harus mempunyai IP Public. IP public inilah yang  digunakan oleh komputer untuk berkomunikasi dengan komputer lain dalam jaringan global dan membentuk jaringan global (Internet).Karena IP Public jumlah nya terbatas maka dengan bantuan router 1 IP public bisa dimasking /NAT / Share koneksi dengan banyak komputer di dalam jaringan local (IP Public dipasang di Router) ,Pada kasus seperti ini komputer yang mendapat sharing internet tidak bisa diakses langsung dari jaringan internet (istilahnya Berada Di Belakang NAT)

Sedangkan agar komputer yang ada di jaringan lokal (misalnya sekolah,kantor,rumah,rumahsakit,pabrik,dll) bisa saling berkomunikasi digunakanlah IP Private.Komputer /Server dengan IP private ini hanya bisa diakses oleh komputer yang berada di jaringan yang sama dengan komputer server tersebut. Penggnaan IP sudah diatur dan distandarkan ,IP juga mempunyai kriteria dan jenis silakan Pembahasan lengkap ada pada artikel  Mengenal IP Public dan IP Private Serta Jenisnya

Pastikan Kamu Medapat IP Public dari ISP

Syarat mutlak agar server local yang kita kelola bisa diakses dari internet adalah kita memegang kendai IP Public yang dijatah dari ISP (Internet Service Privider , perusahaan agan langganan internet) tapi perlu diperhatikan tidak semua ISP memberikan IP Publlic pada pelanggan nya ,Dalam kasus ini pelanggan hanya diberikan IP public dan menggunakan Share IP Public dengan teknik NAT. Jika agan menggunakan  Speedy maka selamat “spidi memberikan Dynamic IP Public” ke semua pelanggan nya.

Untuk mengecek apakah kita mendapat jatah IP public sendiri dari ISP bisa dilakukan dengan langkah berikut :

  1. Buka website http://www.cmyip.org dan lihat IP public yang tertera
    cara melihat ip public internet yang kita gunakan
  2. Login ke Modem /router  Internetmu dan cek IP WAN yang terpasang pada modem /router mu
    melihat ip public yang terpasang pada modem speedy
      “Gambar hanya ilustrasi untuk menunjukan letak informasi IP public, jadi jangan dikaitkan dengan gambar sebelum nya”
  3. Jika IP yang tertera di modem dan website http://www.cmyip.org sama maka “SELAMAT” kamu dapet jatah IP public dari ISP
    Kalo kamu menggunakan modem seluler gak perlu dicoba cara ini ya “Karena internet seluler rata-rata cuma dapet ip private”

Bandwidth

Bandwidth dibagi menjadi 2 yaitu bandwidthUpload dan bandwidth download .Bandwidth  Upload adalah kecepatan maximal transfer ketika kamu mengirim data melelui jaringan internet sedangkan Bandwidth Bownload adalah kecepatan maximal transfer data saat kamu menerima data dari internet (download). Perlu diperhatikan bahwa kecepatan yang tertulis pada brosur internet adalah kecepatan download sedangkan kecepatan upload nya tidak ditulis.  karena kecepatan download lebih diperlukan oleh pelanggan biasa yang 99% kegiatan berinternet nya adalah mengambil data dari internet,mulai dari browsing,nonton youtube,download aplikasi dll. Sedangkan bandwidth Upload diperlukan oleh Server yang melayani / mengirimkan data dari server ke komputer orang yang mengakses server melalui jaringan internet.

Hal yang perlu diperhatikan saat menggunakan internet sebagai media agar server lokal mu bisa diakses menggunakan internet.

  1. Bandwidth yang akan digunakan server adalah Bandwidth Upload bukan bandwidth download
  2. Kecepatan download komputer client yang mengakses data di servermu tidak bisa lebih dari kecepatan bandwidth upload yang kamu gunakan pada server mu (Misal ada orang yang mengakses servermu menggunakan internet dengan kecepatan 10Mbps lalu  mengakses server mu yang hanya memiliki kecepatan Upload 2Mbps,maka kecepatan maximal download orang tersebut adalah 2Mbps atau bisa kurang tergantung kepadatan internet mu)
  3. Untuk mengetest kecepatan download dan upload intenetmu bisa kamu gunakan website http://www.speedtest.net/id dan klik mulai/start . kecepatan unduh adalah banwidth download ,kecepatan unggah adalah bandwidth upload.
    car amelakukan test bandwidth internet yang kita gunakan

Tehnik Penggunaan IP Public

Agar server lokal yang kita kelola dapat diakses menggunakan inter syarat mutlak nya adalah mempunyai IP public , ada 2 tehnik pemasangan IP public agar server kita bisa diakses dengan internet antara lain :

  1. IP Public Dipasang Langsung Pada Server
    Jika kamu memasang langsung IP Public pada server lokal yang kamu kelola, maka penggunaan IP akan menjadi Boros. jika server mu ada 10 maka kamu perlu 10 IP public dan jika IP tersebut satu-satunya IP untuk mengakses ke internet di rumah mu dengan kata lain kamu gak bisa internetan (Karena uda dipasang di server)
  2. IP Public Dipasang Pada Router (NAT)
    IP public dipasang pada perangkat Modem (yang didalam nya sudah include router) atau pada standalone router (misal mikrotik) ,Router inilah yang digunakan untuk mengatur sharing internet dan Port Forwarding yang memungkinkan server lokal yang kita kelola bisa diakses dari internet. Penggunaan router , DNS(Domain) server dan virtual host memberikan pilihan yang flexible dan menghemat penggunaan IP Public.

Dynamic DNS (DDNS)

cara kerja dynamic DNSJika kamu telah membaca artikel tentang pengenalan IP public dan IP private serta jenisnya maka ada 2 jenis IP berdasarkan presistensinya yaitu  Static IP (tanpa DHCP server /manual ,walau modem direstart IP tidak berubah) dan Dynamic IP (IP otomatis didapat dari DHCP server, dan setiap modem direstart IP yang didapat berbeda).

Masalah muncul ketika kita mendapat IP dynamic yang selalu berubah,tentu akan sangat merepotkan jika harus melihat IP server terlebih dahulu setiap akan mengakses server yang kita kelola dan dalam 1 hari entah berapa kali IP berubah sehingga menjadi kendala ketika kita akan  mengakses server lokal kita dari luar menggunakan internet.

Untuk menjawab masalah tersebut maka dibuatlah terobosan Dynamic DNS. DNS (Domain Name Service) adalah server yang tugasnya menerjemahkan domain name sebagai bentuk informasi yang mudah dihafal manusia ke dalam bentuk IP ketika kita mengakses internet. Dynamic DNS akan mengupdate NS record pada DNS server secara berkala sesuai dengan IP Public yang kita dapat,sehingga ketika IP berubah kita tetap bisa mengakses server kita menggunakan domain yang telah kita pilih.

Dibanding kita menghafalkan IP server dalam bentuk angka Dynamic DNS memberi solusi memberikan Domain untuk server lokal kita melalui Dynamic DNS service. Dengan Dynamic DNS sebagai pengganti IP kita bisa menggunakan domain untuk mengakses Server lokal kita misalnya : serverku.dyndns.biz

Ada beberapa provider Dynamic DNS dan menyediakan layanan gratis dengan penggunaan terbatas jika kamu pengin mencobanya sebelum membeli diantaranya :

  1. dnsdynamic.org
  2. NoIP.com
  3. changeIP.com
  4. dynu.com
  5. dyn.com
  6. dan masih banyak lagi……………..

Atau kamu bisa menggunakan mesin pencari google dengan kata kunci “dynamic dns” tanpa tanda petik untuk melihat website yang menyediaan Dynamic DNS service, Daftar agar punya account untuk bisa menggunakan Dynamic DNS service pada provider yang kamu pilih.

Tehnik Pemasangan Dynamic DNS Updater

Agar NS record pada Dynamic DNS server sesuai dengan IP Public yang kita peroleh maka kita perlu memasang Dynamic DNS Updater , updater inilah yang akan mengecek perubahan IP public kita secara berkala. Ada beberapa cara pemasangan updater diantaranya :

  1. Pada Server langsung
    Layanan Dynamic DNS biasnaya akan menyediakan aplikasi updater baik untuk OS windows ataupun Linux. Jika tidak ada silakan cari di komunitas/forum biasnaya ada yang membuat script updater layanan dynamic dns tersebut.
    Aplikasi bisa langsung di download dan diinstall pada lokal server agar NS record selalu terupdate. Cara ini bisa digunakan pada IP public yang dipasang langsung pada server atau NAT.
  2. Pada Mikrotik Router
    Mikrotik Router mendukung scripting  dan scheduling yang bisa kita manfaat kan untuk update.Script updater bisa kita cari di internet disesuaikan dengan Dynamic DNS service yang kamu gunakan,pada contoh dibawah ini saya menggunakan NOIP.-Cara Memasang script DDNS updater: System > Script pilih tab script dan klik tanda + untuk menambahkan baru ,masukan script pada kotak Source: ,Berinama pada bagian name serta ganti bagian

    :local noipuser "ganti-dengan-email-noip-mu"
    :local noippass "ganti-dengan-password-noip-mu"
    :local noiphost "serverku.hopto.org"

    Klik Ok setelah selesai .

    # No-IP automatic Dynamic DNS update
    
    #--------------- Change Values in this section to match your setup ------------------
    
    # No-IP User account info
    :local noipuser "ganti-dengan-email-noip-mu"
    :local noippass "ganti-dengan-password-noip-mu"
    
    # Set the hostname or label of network to be updated.
    # Hostnames with spaces are unsupported. Replace the value in the quotations below with your host names.
    # To specify multiple hosts, separate them with commas.
    :local noiphost "serverku.hopto.org"
    
    # Change to the name of interface that gets the dynamic IP address
    :local inetinterface "Ganti-dengan-nama-interface-IP-public-mu-dipasang"
    
    #------------------------------------------------------------------------------------
    # No more changes need
    
    :if ([/interface get $inetinterface value-name=running]) do={
    # Get the current IP on the interface
      :local currentIP [/ip address get [find interface="$inetinterface" disabled=no] address]
    
    # Strip the net mask off the IP address
      :for i from=( [:len $currentIP] - 1) to=0 do={
         :if ( [:pick $currentIP $i] = "/") do={ 
            :set currentIP [:pick $currentIP 0 $i]
         } 
      }
    
    # The update URL. Note the "\3F" is hex for question mark (?). Required since ? is a special character in commands.
      :local url "http://dynupdate.no-ip.com/nic/update\3Fmyip=$currentIP"
      :local noiphostarray
      :set noiphostarray [:toarray $noiphost]
      
      :foreach host in=$noiphostarray do={
        # Check 1 - resolved IP
        :local resolvedIP [:resolve $host];
    
        # Check 2 - Saved response from NO-IP
        :local filename ("no-ip_ddns_update-" . $host . ".txt")
        :local savedMatch -1
        :local savedIP "No File";
    
        if ( [:len [/file find name=$filename]] > 0 ) do={
          :set savedIP [/file get $filename contents]
          :set savedMatch [:find $savedIP $currentIP -1]
        }
    
        # If either check fails, update IP	
        :if (($currentIP = $resolvedIP) && ($savedMatch >= 0)) do={
          :log info "No-IP: Host $host already on No-IP with IP $resolvedIP"
        } else={
          :log info "No-IP: Sending update for $host - $resolvedIP saved as $savedIP"
          /tool fetch url=($url . "&hostname=$host") user=$noipuser password=$noippass mode=http dst-path=$filename
          :log info "No-IP: Host $host updated on No-IP with IP $currentIP"
        }
      }
    } else={
      :log info "No-IP: $inetinterface is not currently running, so therefore will not update."
    }

    -Cara mengatur script updater agar berjalan berkala: System >Scheduler > klik tanda +untuk menambahkan dan isi bagian name sama dengan name pada Script yang kita buat sebelum nya

  3. Pada Modem ADSL
    Kebanyakan modem ADSL sekarang sudah mendukung fasilitas Dynamic DNS , silakan cari di menu modem masing-masing tempat setting Dynamic DNS , dan sesuaikan dengan dynamic dns yang didukung oleh modem tersebut agar hidup mu mudah :). Ketika kamu mengaktifkan fitur ini maka kamu bisa mengakses modem mu darimanapun lewat jaringan internet.
    Menu ini biasanya ada di kelompok Management /Advanced dengan nama DDNS atau Easy Access atau sejenisnya.
    mengguanakn Dynamic DNS pada Modem ADSL Speedy

Port Forwarding / NAT

Setiap aplikasi server yang berjalan sebagai Daemon /Service pasti akan membuka port untuk listening  pada server, port diwakili dengan nomer dan setiap nomer port untuk setiap aplikasi server berbeda. Ada beberapa standar nomer port server  yang digunakan misalnya untuk SSH server 22, FTP server 21,Telnet Server 23,Http server 80,SSL 443  dan masihbanyak lagi.

Istilah listening adalah state/keadaan dimana aplikasi server membuka pintu masuk pada komputer server agar client bisa menggunakan service /layanan yang disediakan. misalnya ketika kita membuka website dan mengetikan google.com maka browser akan menghubungi server dengan alamat google.com menggunakan nomer port 80 (Jika google menggunakan https /SSL biasanya request akan diredirect ke port 443) . Jadi dalam 1 server bisa terdiri dari banyak port yang terbuka tergantung dari aplikasi server yang diinstall di server yang kita kelola.

melihat service port yang terbuka oleh service pada server

Menggunakan fitur Port Forwarding Untuk Mengakses Server Lokal Menggunakan Internet

Kita bisa mengakses Server lokal menggunakan internet yang ada dengan memanfaatkan fasilitas port forwarding /NAT . Port forwarding pada dasarnya memforward port yang dituju oleh client yang dialamatkan ke IP public internet yang kita pakai agar diteruskan (forward) ke IP dan Port dari Server lokal kita.

Setiap Aplikasi yang berfungsi sebagai server mempunyai port tersendiri, jika server lokal kamu mempunyai beberapa aplikasi sever seperti SSH,web server,SMB dll maka kamu harus mendefinisikan forward rule untuk setiap service agar bisa diakses melalui internet.
cara menggunakan port forwarding pada mikrotik Router OS

 

Cara Setting Port Forwarding /DST NAT

Port forwarding  sudah menjadi fitur standar untuk modem sekarang, jadi setiap modem ADSL /OPTIC pasti punya fitur port forwarding . Modem aja punya fitur ini apa lagi standalone router seperti mikrotik , pada standalone router seperti mikrotik fitur port forwarding dikenal dengan sebukan NAT (dst nat)

  1. Pada Modem ADSL
    Dianggap kamu sudah bisa mengakses modem melalui web interface dan telah login,  untuk setiap  merek modem mempunyai nama yang sedikit berbeda tetapi maksudnya sama dan letak nya pun berada di menu yang hampirsama.
    Fasilitas port forwarding biasanya berada di grup menu Advanced / WAN /NAT dan mempunyai yang berbeda-beda seperti NAT/Virtual Server/Port Forwarding . kolom terpenting setelah masuk kedalam menu portforwarding adalah :
    -Port start number / dst port : listening port number pada IP public mu (tidak harus sama dengan port number server lokal mu)
    -Port end number / redirect to port : Port number server lokal mu
    -Local IP/LAN IP :IP private dari Lokal server mu
    Jika ada menu lain seperti kolom untuk mengisikan jenis service itu hanya opsional saja dan sifatnya untuk memudahkan ketika dibaca.
    cara setting port forwarding pada modem ADSL speedy
  2. Pada Router Mikrotik
    Login ke mikrotik dengan Winbox (biar mudah :D) masuk ke menu IP >Firewall>NAT
    Pada contoh berikut saya akan menbuat server ProXmoX VE dengan IP 192.168.2.2 dan port 8006 protokol yang digunakan adalah SSL/HTTPS
    Ketika kita mengetikan https:// untuk mengakses website maka nomer port yang dituju adalah 443 jadi kita akan mengeset Start Port number/ Dst port ke 443 dan memforward nya ke ip 192.168.2.2 dengan port 8006Konfigurasinya :
    Chain : dstnat  –> artinya sama aja dengan port forwarding
    – Src. Address : Biarkan saja polos atau 0.0.0.0 –> artinya semua IP komputer bole mengakses service dari server kita nanti
    -Dst. Address  : Biarkan kosong atau 0.0.0.0  –> artinya semua IP yang terpasang di interfaces router kita bisa dijadikan jalan masuk (listening) untuk mengakses service dari server kita
    -Protocol : Pilih jenis protocol yang digunakan oleh server lokal mu
    -Dst.Port : nomer port yang akan digunakan untuk listening pada IP public (Bebas pilih suka suka kamu )
    -In interface : menentukan interface yang akan digunakan untuk listening ,jika dikosongkan maka semua interface akan listeningAction : dst-nat
    To Address : Isi dengan IP private server lokal mu
    To Ports : Isi dengan nomer port yang digunakan oleh aplikasi servermu
    cara setting port forwarding pada mikrotik untk mengakses server lokal dari internet

Akses Server Lokal Menggunakan Internet

Setelah semua selesai dilakukan lakukan ping ke domain dynamic dns yang kamu gunakan, jika resolve dan ip yang tertera saat ngeping dengan IP yang terpasang di Modem/router maka settingan Dynamic DNS sudah berhasill.
Untuk mengetest service dari server lokal mu yang kamu forward menggunakan port forwarding harus dicoba dari luar jaringan server lokal mu. kamu bisa menggunakan proxy atau web proxy (Jika service yang kamu forward bisa diakses menggunakan web browser) ,bisa juga minta tolong ma temen dan bisa juga dicoba menggunakan internet dari modem seluler. asal jangan diakses dari dalam jaringan itu sendiri karena akan error (kecuali telah ditentukan listening interface dan ditentukan rule khusus pada router).

Jika kamu menggunakan proxy luar dari jaringan yang sama dengan server lokal maka secara teknis kamu mengakses server lokal mu dari luar (tidak diakses secara langsung namung muter dulu ke proxy)

 

Kurang jelas? Silakan Bertanya