FRP Ters Proxy Hizmetini ServBay'de Yapılandırma Kılavuzu
FRP, yerel ağın dışına erişim sağlamak için istemci-sunucu mimarisi kullanarak iç ağ geçişi gerçekleştiren yüksek performanslı bir ters proxy aracıdır. Bu kılavuz, ServBay kullanıcılarının frpc istemcisi ile güvenli tüneller oluşturarak yerel hizmetlerin genel ağa erişimini sağlaması için rehberlik edecektir.
Teknik Prensip
FRP, sunucu (frps) ve istemci (frpc) arasında şifreli bir iletişim tüneli kurarak iç ağ hizmetlerini genel sunucuya yönlendirir. Bu çözüm, TCP/UDP/HTTP/HTTPS gibi çeşitli protokolleri destekler ve ServBay geliştirme ortamında uzaktan hata ayıklama, API testi gibi senaryolara uygundur.
Ortam Hazırlığı
1. FRP İstemcisi Kurulumu
frpc istemcisinin kurulumu için aşağıdaki adımları izleyin:
- GitHub Release sayfasını ziyaret edin ve uygun sürümü indirin.
- Sıkıştırmayı açın ve sistemi PATH'e kurun (macOS ARM mimarisi örneği):bash
tar -zxvf frp_0.61.1_darwin_arm64.tar.gz sudo cp frp_0.61.1_darwin_arm64/frpc /usr/local/bin/
1
2 - Kurulumu doğrulayın:bash
frpc -v # frpc sürümü 0.61.1
1
2
Tünel Yapılandırma Pratiği
Yapılandırma Dosyası Açıklaması
frpc.toml
yapılandırma dosyasını oluşturun, temel yapı aşağıdaki gibidir:
serverAddr = your-frps-server.com
serverPort = 7000
auth.method = token
auth.token = your_authentication_token
[[proxies]]
name = "test_web"
type = "http"
localPort = 80
customDomains = servbay.your-domain.com
2
3
4
5
6
7
8
9
10
Yapılandırma Öğesi | Açıklama |
---|---|
serverAddr | FRP sunucusunun genel adresi |
serverPort | FRP sunucusunun iletişim portu (varsayılan 7000) |
auth.method | Sunucu kimlik doğrulama yöntemi |
auth.token | Sunucu kimlik doğrulama anahtarı |
type | Proxy türü (http/https/tcp vb.) |
localPort | Yerel hizmet portu |
customDomains | Dışarıya açılacak alan adı |
Tipik Yapılandırma Örneği
Yerel ServBay HTTPS hizmetini genel ağa yönlendirin:
Örnekte:
- frp sunucu adresi:
frps.servbay.demo
- Yerel ServBay'de yapılandırılan alan adı:
servbay.test
- Genel hizmet sunan alan adı:
test-frp.servbay.app
(alan adı frp sunucusuna DNS ile çözülmelidir)
serverAddr = frps.servbay.demo
serverPort = 7000
auth.method = "token"
auth.token = servbay
[[proxies]]
name = "servbay-frpc-demo"
type = "https"
customDomains = ["test-frp.servbay.app"]
[proxies.plugin]
type = "https2https"
localAddr = "127.0.0.1:443"
crtPath = "/Applications/ServBay/ssl/private/tls-certs/servbay.test/servbay.test.crt"
keyPath = "/Applications/ServBay/ssl/private/tls-certs/servbay.test/servbay.test.key"
hostHeaderRewrite = "servbay.test"
requestHeaders.set.x-from-where = "frp"
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Hizmeti başlatın:
frpc -c frpc.toml
Hizmet Doğrulama
- Tarayıcıda harita alan adına erişin:
https://test-frp.servbay.app
1 - Doğrulama kriterlerini kontrol edin:
- HTTP 200 durum kodu döndüğünden emin olun
- Yanıt içeriğinin yerel hizmet ile tutarlı olduğuna bakın
- SSL sertifikası geçerliliğini doğrulayın
Günlük Tanılama
frpc -c frpc.toml --log_level debug # Hata ayıklama günlüklerini açın
tail -f /var/log/frpc.log # Günlükleri gerçek zamanlı izleyin
2
Arıza Giderme Kılavuzu
Belirti | Çözüm |
---|---|
Bağlantı kimlik doğrulama hatası | auth.token yapılandırmanızın sunucuyla uyumlu olduğundan emin olun |
Alan adı çözümü hatası | DNS’in FRP sunucu IP’sine doğru bir şekilde çözümlediğini doğrulayın |
Port çakışması | lsof -i :PORT komutuyla порт kullanımını kontrol edin |
Tünel sık sık kopuyor | Kalp atışı parametrelerini ayarlayın: heartbeat_timeout = 30 |
Çözümün Avantajları
FRP çözümü ServBay kullanıcılarına şu temel değerleri sunmaktadır:
- Çoklu protokol desteği karmaşık iş senaryolarını karşılamaktadır
- Yapılandırma sıcak güncellemeleri ile servis kesintisi olmadan uygulanabilmektedir
- Yerel ağ geçişi için çok katmanlı destek sağlayan doğal bağlı proxy desteği
- Açık kaynak mimarisi ile veri güvenliği kontrol altında tutulmaktadır
Üretim ortamında TLS şifreli iletişim özelliğini etkinleştirmeyi ve tls_enable = true
yapılandırması ile zorunlu şifreli iletimi sağlamayı tavsiye ederiz.