Panduan Konfigurasi Layanan Reverse Proxy frp di ServBay
frp (Fast Reverse Proxy) adalah aplikasi reverse proxy berperforma tinggi yang memungkinkan Anda mengekspos layanan jaringan lokal Anda ke internet publik secara aman. ServBay telah mengintegrasikan dukungan klien frp (frpc), sehingga Anda dapat terhubung ke server frp (frps) yang Anda kelola sendiri dan mengakses situs lokal Anda yang dihosting melalui ServBay menggunakan domain kustom. Pendekatan ini memberi Anda kendali penuh atas server tunnel.
Panduan ini akan menjelaskan langkah demi langkah cara mengonfigurasi klien frp di ServBay serta menghubungkannya ke server frps Anda.
Gambaran Umum
Berbeda dengan layanan tunneling terkelola lainnya di ServBay, penggunaan frp mewajibkan Anda untuk terlebih dahulu menginstal dan mengonfigurasi server frps di server milik Anda sendiri. ServBay kemudian akan bertindak sebagai klien frpc, meneruskan lalu lintas dari situs lokal Anda melalui server frps ke internet. Model ini sangat cocok untuk pengembang yang membutuhkan tingkat kustomisasi dan kontrol lebih tinggi atas tunnel jaringan.
Skenario Penggunaan
- Kendali Penuh atas Server Tunnel: Anda sepenuhnya dapat mengatur konfigurasi, keamanan, serta performa server frps.
- Menggunakan Domain Kustom & SSL: Siapkan domain apa pun yang Anda miliki secara fleksibel untuk proyek-proyek lokal Anda serta integrasikan sertifikat ACME SSL yang dikelola oleh ServBay.
- Konfigurasi Jaringan Lanjutan: frp mendukung berbagai tipe proxy dan opsi konfigurasi lanjutan sesuai kebutuhan kompleks.
- Penyebaran Privat: Cocok bagi yang tidak ingin bergantung pada layanan tunnel pihak ketiga.
Prasyarat
- ServBay Sudah Terinstal: Pastikan ServBay telah diinstal dan berjalan dengan baik di macOS Anda.
- Server
frps
Mandiri:- Anda wajib memiliki server yang bisa diakses dari internet publik, serta telah berhasil menginstal dan menjalankan layanan
frps
. - Catat alamat IP atau nama domain publik server
frps
Anda. - Catat pengaturan
bindPort
(port komunikasi antara klien frp dan server frp) sertatoken
(token autentikasi) pada file konfigurasi serverfrps
(frps.toml
ataufrps.ini
).
- Anda wajib memiliki server yang bisa diakses dari internet publik, serta telah berhasil menginstal dan menjalankan layanan
- Domain & Pengaturan DNS:
- Anda memerlukan domain publik (misal
your-frp-server.com
) dan mengarahkan catatan DNS A ke alamat IP publik serverfrps
Anda, sehingga situs lokal bisa diakses lewat domain ini.
- Anda memerlukan domain publik (misal
- Sertifikat ACME SSL di ServBay:
- Untuk akses HTTPS ke domain eksternal, Anda perlu mengajukan sertifikat ACME SSL melalui fitur SSL Certificates di ServBay untuk domain tersebut. Contoh: jika Anda ingin mengakses situs lokal melalui
project.your-frp-server.com
, maka ajukan sertifikat untukproject.your-frp-server.com
.
- Untuk akses HTTPS ke domain eksternal, Anda perlu mengajukan sertifikat ACME SSL melalui fitur SSL Certificates di ServBay untuk domain tersebut. Contoh: jika Anda ingin mengakses situs lokal melalui
- Beberapa Subdomain & Sertifikat SSL:
- Jika perlu menggunakan beberapa subdomain tanpa ingin menambah banyak catatan DNS A, cukup gunakan wildcard
*
: tambahkan catatan A untuk*.your-frp-server.com
yang mengarah ke IP publik serverfrps
. Kemudian ajukan sertifikat ACME wildcard di ServBay (saat mengajukan, masukkanyour-frp-server.com, *.your-frp-server.com
di kolomDomain
, pastikan*
ada di entri terakhir dan dipisahkan dengan koma). - Dengan cara ini, Anda bebas menambah subdomain seperti
company-project.your-frp-server.com
,personal.your-frp-server.com
,customer-1.your-frp-server.com
di ServBay tanpa perlu menambah banyak catatan DNS A, dan semuanya bisa menggunakan satu sertifikat SSL yang sama.
- Jika perlu menggunakan beberapa subdomain tanpa ingin menambah banyak catatan DNS A, cukup gunakan wildcard
Langkah-Langkah
1. Instal Paket frp di ServBay
- Buka aplikasi ServBay.
- Di bilah navigasi kiri, klik Packages (Paket).
- Temukan dan pilih
frp
dalam daftar paket. - Klik tombol instalasi di samping
frp
. - Setelah instalasi selesai, layanan frp mungkin akan gagal dijalankan karena belum dikonfigurasi—hal ini normal.
2. Siapkan Server frps
dan Konfigurasinya
Anda perlu menginstal dan menjalankan frps
di server publik milik Anda. ServBay dapat membantu menghasilkan template file konfigurasi dasar frps.toml
(untuk versi frp terbaru):
Di ServBay, buka menu Tunnel -> frp.
Temukan dan klik ikon drop-down atau expand di samping frp server config (frps.toml).
ServBay akan menampilkan contoh konfigurasi
frps.toml
, misal:toml# The frps configuration file automatically generated by ServBay # is intended for direct use on the server. # Please adjust the configuration parameters according # to your specific needs. bindPort = 12345 auth.method = "token" auth.token = "myserverpassword" vhostHTTPPort = 80 vhostHTTPSPort = 443 log.to = "/tmp/frps.log" log.level = "info" log.maxDays = 3 log.disablePrintColor = true # Untuk versi frps terbaru (misal 0.52.0+), gunakan webServer.port, webServer.addr, webServer.user, webServer.password untuk mengatur Dashboard # webServer.port = 7500 # webServer.addr = "0.0.0.0" # webServer.user = "admin" # webServer.password = "admin_password"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21Penjelasan Konfigurasi Penting:
bindPort
: Port komunikasi antara frpc dan frps. Pastikan port ini terbuka di firewall server Anda. Sangat disarankan untuk melindungi port frps ini dengan firewall, misalnya hanya mengizinkan IP tertentu.auth.method = "token"
danauth.token
: Digunakan sebagai autentikasi klien. Wajib diubah menjadi password yang kuat milik Anda sendiri.vhostHTTPPort = 80
danvhostHTTPSPort = 443
: Port yang didengarkan frps untuk permintaan virtual host HTTP dan HTTPS.- [Penting] ServBay sangat dioptimalkan untuk penggunaan server frps dengan port 80 & 443 sebagai
vhostHTTPPort
danvhostHTTPSPort
. Ini memudahkan penerusan sertifikat ACME SSL lokal secara seamless ke frps untuk akses publik. - Jika karena alasan tertentu server frps Anda tidak bisa menggunakan port 80/443 langsung (misal sudah digunakan layanan lain) dan terpaksa menggunakan port lain (misal 8080/8443), ANDA HARUS menempatkan reverse proxy (seperti Nginx/Caddy) di depan frps. Proxy inilah yang mendengarkan 80/443 dan meneruskan ke frps pada port yang sesungguhnya. Dalam skenario ini, sertifikat SSL ditangani oleh reverse proxy di depan, bukan melalui ServBay.
- [Penting] ServBay sangat dioptimalkan untuk penggunaan server frps dengan port 80 & 443 sebagai
log.to
: Lokasi file log dari frps.- Konfigurasi Dashboard (
webServer.port
dll): Untuk mengakses antarmuka Dashboard frps (opsional).
Salin konfigurasi ini ke server Anda, simpan sebagai
frps.toml
(ataufrps.ini
sesuai versi & preferensi), lalu sesuaikan parameternya.Jalankan layanan
frps
Anda.
3. Konfigurasi Klien frp di ServBay
Kembali ke aplikasi ServBay, lalu siapkan parameter koneksi klien frp:
Buka menu Tunnel -> frp.
Lengkapi informasi server frps Anda:
- Server Address (Alamat Server): Isi dengan domain atau IP publik server
frps
Anda (contoh:my.test.frp.server.host
). - Server Port (Port Server): Isi dengan
bindPort
sesuai padafrps.toml
Anda (misal:12345
). - Auth Token (Token Autentikasi): Isi dengan
auth.token
yang Anda konfigurasikan pada frps (misal:myserverpassword
).
- Server Address (Alamat Server): Isi dengan domain atau IP publik server
Atur aturan pemetaan tunnel:
- Local Domain (Website Lokal): Pilih situs lokal ServBay yang akan diekspos melalui frp ke internet (misal:
servbay.demo
). - External Domain (Domain Eksternal): Isi domain yang akan digunakan oleh pengguna publik untuk mengakses situs lokal Anda (misal:
test.ks.do
). Pastikan DNS A record-nya sudah mengarah ke IP frps Anda.- Penting: Berbeda dengan Tunnel lain seperti
Ngrok
/Cloudflared
, Anda wajib mengisi domain lengkap di sini.
- Penting: Berbeda dengan Tunnel lain seperti
- ACME Certificates (Sertifikat ACME): Pilih sertifikat ACME SSL yang telah Anda ajukan melalui ServBay untuk
External Domain
ini (misal: pilih sertifikat untuktest.ks.do
).- Penting: Untuk akses HTTPS, WAJIB memilih sertifikat yang benar di sini. ServBay akan meneruskan informasi sertifikat ini ke frpc, lalu frps akan menggunakannya untuk merespons permintaan HTTPS ke domain terkait. Dengan ini, server frps tidak perlu mengatur ulang sertifikat SSL untuk domain tersebut, karena semuanya akan dikelola otomatis oleh ServBay.
- Local Domain (Website Lokal): Pilih situs lokal ServBay yang akan diekspos melalui frp ke internet (misal:
Tambah Tunnel Lain:
- Jika ingin membuat tunnel untuk beberapa situs lokal atau domain eksternal lain, klik tombol
+
pada entri tunnel yang ada untuk menambah konfigurasi baru.
- Jika ingin membuat tunnel untuk beberapa situs lokal atau domain eksternal lain, klik tombol
4. Simpan Konfigurasi & Jalankan Layanan frp
- Setelah seluruh pengaturan selesai, klik tombol Save (Simpan) di kanan bawah.
- ServBay akan menyimpan konfigurasi frpc, lalu mencoba menjalankan layanan frp.
- Amati indikator status di daftar Tunnel pada entri
frp
. Jika konfigurasi sukses dan frpc berhasil terhubung ke frps, lampu indikator akan berubah hijau, menandakan layanan berjalan normal. - Verifikasi Akses:
- Kini Anda bisa mengakses situs lokal dari internet via
External Domain
yang dikonfigurasi (misal:https://test.ks.do
). - Gunakan ikon copy/domain di samping domain eksternal untuk mengetes akses ke situs.
- Kini Anda bisa mengakses situs lokal dari internet via
Catatan Penting
- Penempatan & Perawatan Server
frps
: Instalasi, konfigurasi, pengamanan, dan pemeliharaan server frps adalah sepenuhnya tanggung jawab Anda. - Keamanan
bindPort
di frps: Pastikan Anda menggunakanauth.token
yang sangat kuat serta membatasi akses port ini, misalnya hanya untuk IP tertentu, lewat firewall. - Pilihan Port
vhostHTTPPort
&vhostHTTPSPort
:- Sangat disarankan untuk membiarkan frps mendengarkan langsung pada port 80 & 443, agar fungsi penerusan sertifikat ACME SSL ServBay berjalan optimal.
- Jika frps terpaksa memakai port lain untuk vhost, Anda harus menyiapkan reverse proxy (Nginx/Caddy, dst) di depan frps untuk mendengarkan 80/443 serta meneruskan lalu lintas ke port vhost frps yang sebenarnya. Dalam kasus ini, reverse proxy itulah yang mengelola sertifikat SSL.
- Kebutuhan Sertifikat ACME: Untuk akses HTTPS ke domain eksternal, Anda harus mengajukan dan mengisi sertifikat ACME di ServBay, kemudian memilihnya pada pengaturan frp.
- Propagasi DNS: Pastikan DNS A record
External Domain
sudah mengarah ke IP frps Anda, dan sudah tersiar di seluruh jaringan internet.
FAQ (Pertanyaan yang Sering Diajukan)
- Q: Layanan frp di ServBay gagal dijalankan, indikator status berwarna merah/kuning?
- A: Periksa pengaturan frp di ServBay: pastikan
Server Address
,Server Port
, danAuth Token
benar-benar sama persis denganbindPort
danauth.token
padafrps.toml
Anda. Cek juga apakah frps sedang berjalan dan port bind dapat diakses dari mesin ServBay (periksa firewall). Lihat log frp untuk detail error.
- A: Periksa pengaturan frp di ServBay: pastikan
- Q: Saya bisa mengakses lewat
External Domain
, tapi hanya HTTP, bukan HTTPS?- A: Pastikan Anda sudah memilih sertifikat ACME pada konfigurasi frp di ServBay untuk domain eksternal tersebut. Juga, pastikan
vhostHTTPSPort
padafrps.toml
mengarah ke port yang benar (disarankan 443).
- A: Pastikan Anda sudah memilih sertifikat ACME pada konfigurasi frp di ServBay untuk domain eksternal tersebut. Juga, pastikan
- Q: Server frps saya wajib memakai port vhost selain 80/443, bagaimana konfigurasinya?
- A: Anda wajib menambahkan reverse proxy (misal Nginx/Caddy) di depan frps. Reverse proxy inilah yang mendengarkan port 80/443 di internet, menangani sertifikat SSL (bisa di luar ServBay), lalu meneruskan lalu lintas HTTPS ke port vhost frps (bisa dalam mode TLS/terminasi SSL sesuai kebutuhan). Dalam skenario ini, kolom
ACME Certificates
pada ServBay tidak lagi secara langsung mengatur SSL untuk akses publik, karena kini dikendalikan di sisi proxy server.
- A: Anda wajib menambahkan reverse proxy (misal Nginx/Caddy) di depan frps. Reverse proxy inilah yang mendengarkan port 80/443 di internet, menangani sertifikat SSL (bisa di luar ServBay), lalu meneruskan lalu lintas HTTPS ke port vhost frps (bisa dalam mode TLS/terminasi SSL sesuai kebutuhan). Dalam skenario ini, kolom
- Q: Format
frps.toml
yang dihasilkan ServBay berbeda denganfrps.ini
yang saya miliki?- A: Format konfigurasi frp kini bermigrasi dari
.ini
ke.toml
. Template yang diberikan ServBay berbasis.toml
. Jika Anda memakai versi frps lawas atau lebih nyaman dengan.ini
, konversikan format config Anda sesuai dokumentasi resmi frp; esensi dari parameternya tetap sama.
- A: Format konfigurasi frp kini bermigrasi dari
Kesimpulan
Dengan integrasi klien frp di ServBay, para pengembang macOS yang memerlukan solusi tunneling kustom tingkat lanjut kini memiliki alat yang kuat. Dengan men-deploy server frps sendiri dan memanfaatkan pengaturan frpc serta manajemen sertifikat ACME di ServBay, Anda dapat mengekspose situs pengembangan lokal secara aman dan fleksibel ke internet publik. Pastikan Anda mengatur parameter frps dan frpc secara teliti, terutama bagian port dan keamanan, demi kestabilan serta keamanan layanan Anda.