Cara Akses Server Lokal Via Jaringan Internet LENGKAP
Diperbaharui Pada Tanggal
Mengakses Server Lokal Dari Internet
Jika kamu punya server di rumah atau dikantor kamu bisa mengaksesnya dari luar menggunakan jaringan internet darimanapun dan kapanpun.
Server disini bisa berupa cctv,server website,printer,atau komputer biasa yang akan kamu akses service port nya melalui jaringan internet.
Kamu tidak memerlukan alat khusus atau settingan yang ribet agar bisa melakukan semua itu,yang kamu butuhkan adalah :
- IP Public Dari ISP
- Layanan DDNS seperti ip-dynamic.com milik indihome
- Router dengan fitur Port Forwarding
Jika kamu baru melakukan hal ini maka kamu perlu memahami beberapa hal penting agar kamu tau dan mengerti konsep dibalik semua ini.
Apa itu 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.
Pahami Dulu Apa itu Bandwidth?
Bandwidth adalah kemampuan maximal suatu jaringan komunikasi(kabel atau wireless) untuk mengirim dan merima data dari satu titik ke lain nya melalui jaringan komputer atau internet dalam ukuran waktu yang ditentukan (biasanya detik)
Kecepatan internet yang kamu dapat tidak akan sama dengan kemampuan bandwidth jaringan lokal mu karena ISP akan membatasi bandwidth mu menggunakan router yang berfungsi sebagai bandwidth management
Bandwidth dibagi menjadi 2 yaitu bandwidth Upload dan bandwidth download:
- Bandwidth Upload adalah kecepatan maximal transfer ketika kamu mengirim data melelui jaringan internet.
Bandwidth upload banyak digunakan oleh server di internet yang notabane nya mengunggah data ke internet untuk di download oleh penggunanya,seperti browsing dan streaming.
Bandwidth upload dipakai juga oleh user biasa ketika kamu request data seperti upload foto atau video namun penggunaan nya dalam porsi sedikit. - Bandwidth Bownload adalah kecepatan maximal transfer data saat kamu menerima data dari internet (download).
Bandwidth download biasa digunakan oleh pelanggan internet biasa untuk kegiatan berinternet yang notabane nya mengambil data dari internet,mulai dari browsing,nonton youtube,download aplikasi dll
Fakta Penting Bandwidth Yang Perlu Kamu Ketahui
- Bandwidth yang akan digunakan server adalah Bandwidth Upload bukan bandwidth download
- 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 - 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.
Kamu Perlu IP Public Dari ISP
Komputer/router harus punya IP Public sebagai syarat agar bisa tekoneksi ke internet, IP public inilah yang digunakan oleh komputer untuk berkomunikasi dengan komputer lain dalam jaringan global dan membentuk jaringan global (Internet).
Dengan fitur NAT satu IP public yang terpasang di router bisa digunakan beramai ramai oleh komputer dengan IP private dibelakang router agar bisa mengakses internet.
Pada kasus seperti ini komputer dengan ip private yang mendapat sharing internet dari router ber IP public dengan memanfaatkan fitur NAT hanya bisa mengakses internet dan tidak bisa diakses langsung dari internet karena berada di belakang perangkat NAT seperti router.
Pastikan Kamu Mendapat 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 adalah perusahaan kamu masang internet)
Perlu diperhatikan tidak semua ISP memberikan IP Publlic pada pelanggan nya ,dalam kasus ini pelanggan hanya diberikan IP private dan menggunakan Share IP Public dengan fitur NAT.
Jika agan menggunakan Speedy maka selamat “spidi memberikan Dynamic IP Public” ke semua pelanggan nya.
IP public biasanya terpasang pada perangkat Router atau Modem yang punya fitur sekaligus router.
Cara Mengecek IP Public yang kamu Gunakan
Untuk mengecek apakah kita mendapat jatah IP public sendiri dari ISP bisa dilakukan dengan langkah berikut :
- Buka website http://www.cmyip.org dan lihat IP public yang tertera
- Login ke Modem /router Internetmu dan cek IP WAN yang terpasang pada modem /router mu
“Gambar hanya ilustrasi untuk menunjukan letak informasi IP public, jadi jangan dikaitkan dengan gambar sebelum nya” - 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”
Penggunaan IP Public Untuk Server
Syarat mutlak agar server lokal mu online dan bisa diakses dari internet adalah harus mempunyai IP public, ada 2 cara menggunakan IP public untuk server lokal mu :
- IP Public Dipasang Langsung Pada Server
Jika kamu memasang langsung IP Public pada server lokal yang kamu kelola, maka penggunaan IP akan menjadi Boros (satu server satu IP,sepuluh server sepuluh IP)dan jika kamu hanya punya satu IP public maka kamu tidak bisa menggunakan untuk keperluan lain,misal memberi akses internet ke komputer lain. - 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 kamu kelola bisa diakses dari internet.
Penggunaan router , DNS(Domain) server dan virtual host memberikan pilihan yang flexible dan menghemat penggunaan IP Public.
DDNS Untuk Mengatasi IP Dynamic
Jika kamu telah membaca artikel 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 :
- dnsdynamic.org
- NoIP.com
- changeIP.com
- dynu.com
- dyn.com
- dan masih banyak lagi……………..
Atau kamu bisa menggunakan layanan DDNS https://ip-dynamic.com/ milik speedy jika kamu menggunakan layanan internet indihome
Cara Setting Layanan Dynamic DNS
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 mu secara berkala.
Namun jika kamu menggunakan https://ip-dynamic.com/ (layanan DDNS milik indihome) kamu bisa abaikan langkah dibawah ini ,karena ip sudah terupdate secara otomatis dan tidak perlu setting apapun.
- Pada Server langsung
Layanan Dynamic DNS menyediakan aplikasi updater baik untuk OS windows ataupun Linux. yang bisa kamu install langsung di sistem operasi server lokal yang kamu gunakan saat ini. - Pada Mikrotik RouterMikrotik 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”
Script lengkap nya bisa kamu copy paste dibawah ini :
# 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."
}
MengExpose service dengan Port Forwarding
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.
Port Forwarding Untuk Akses Server Lokal via 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 Setting Port Forwarding
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)
- 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. - Pada Router MikrotikLogin 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 8006
–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
Mencoba Akses Server Lokal via 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 sama 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)
Tidak ada komentar:
Posting Komentar