ServBay'de frp Ters Proxy Hizmeti Yapılandırma Rehberi
frp (Fast Reverse Proxy), yerel ağ hizmetlerinizi güvenli bir şekilde halka açık internete açmanıza olanak tanıyan yüksek performanslı bir ters proxy uygulamasıdır. ServBay, frp istemcisi (frpc) desteğini entegre olarak sunar; böylece kendi barındırdığınız frp sunucusuna (frps) bağlanabilir ve ServBay'deki yerel sitelerinize özel alan adları üzerinden erişim sağlayabilirsiniz. Bu yöntem, tünel sunucusu üzerinde tam kontrol imkânı sunar.
Bu rehberde, ServBay'de frp istemcisinin nasıl yapılandırılacağı ve frps sunucunuza nasıl bağlanacağınız adım adım anlatılacaktır.
Genel Bakış
ServBay'deki diğer bulut tabanlı tünel servislerinden farklı olarak, frp ile çalışırken kendi sunucunuzda frp sunucusunu (frps) kurup yapılandırmanız gerekir. ServBay burada frpc istemcisi olarak işlev görür ve yerel web trafiğini frps sunucusu üzerinden internete iletir. Bu yapı, tüneli özelleştirmek ve kontrol etmek isteyen geliştiriciler için idealdir.
Kullanım Senaryoları
- Tünel Sunucusunda Tam Kontrol: frps sunucusunun yapılandırması, güvenliği ve performansı tamamen sizin elinizde olur.
- Özel Alan Adı ve SSL Kullanımı: Yerel projeleriniz için sahip olduğunuz herhangi bir alan adını kolayca yapılandırabilir, ayrıca ServBay'in yönettiği ACME SSL sertifikaları ile hızlıca entegre edebilirsiniz.
- Gelişmiş Ağ Yapılandırmaları: frp; çeşitli proxy türlerini ve karmaşık senaryoları destekleyen kapsamlı yapılandırmalara olanak tanır.
- Kendi Sunucunuzu Barındırın: Üçüncü taraf tünel hizmetlerine bağımlı kalmak istemeyenler için uygundur.
Ön Gereksinimler
- ServBay Kurulmuş Olmalı: macOS işletim sisteminizde ServBay'in yüklü ve çalışır durumda olduğundan emin olun.
- Kendi Barındırdığınız
frps
Sunucusu:- Halka açık erişilebilen bir sunucuda başarıyla kurulu ve çalışan bir
frps
servisine ihtiyacınız vardır. frps
sunucunuzun genel IP adresini veya alan adını not edin.frps
sunucu yapılandırma dosyasındaki (frps.toml
veyafrps.ini
)bindPort
(istemciyle haberleşme portu) vetoken
(kimlik doğrulama anahtarı) bilgilerini kaydedin.
- Halka açık erişilebilen bir sunucuda başarıyla kurulu ve çalışan bir
- Alan Adı ve DNS Ayarı:
- Bir genel alan adına ihtiyacınız var (örn.
your-frp-server.com
) ve bu alan adının DNS A kaydınınfrps
sunucunuzun IP adresine yönlenmiş olması gerekir. Bu alan adı ile ileride sitenize dışarıdan erişilecektir.
- Bir genel alan adına ihtiyacınız var (örn.
- ServBay'de ACME SSL Sertifikası:
- Dış alan adı üzerinden HTTPS erişimi sağlamak için, Sertifikalar bölümünden ihtiyaç duyduğunuz dış alan adına ilişkin bir ACME SSL sertifikasını önceden oluşturmalısınız. Örneğin,
project.your-frp-server.com
adresini kullanacaksanız, bu alan adı için bir sertifika oluşturmalısınız.
- Dış alan adı üzerinden HTTPS erişimi sağlamak için, Sertifikalar bölümünden ihtiyaç duyduğunuz dış alan adına ilişkin bir ACME SSL sertifikasını önceden oluşturmalısınız. Örneğin,
- Birden Fazla Alt Alan Adı ve SSL Sertifikası:
- Birden çok alt alan adı kullanmanız gerekiyorsa ve her biri için ayrı DNS A kaydı eklemek istemiyorsanız, joker karakterli (wildcard) alan adı kullanabilirsiniz:
*.your-frp-server.com
şeklinde tek bir A kaydınıfrps
sunucunuzun IP adresine yönlendirin. ServBay'de ise, ACME SSL sertifikası başvurusu sırasındaDomain
alanınayour-frp-server.com, *.your-frp-server.com
yazın (*
kaydının en sonda olmasına dikkat edin ve araya İngilizce virgül koyun). Böylece ServBay'de istediğiniz sayıda yeni alt alan adı ekleyebilir ve tek bir sertifikayı tümüyle paylaşabilirsiniz. - Bu yöntem sayesinde, ServBay üzerinde
company-project.your-frp-server.com
,personal.your-frp-server.com
,customer-1.your-frp-server.com
gibi farklı alan adlarını çok kolayca dışa açabilirsiniz ve her seferinde karmaşık DNS ayarlarıyla uğraşmanız gerekmez.
- Birden çok alt alan adı kullanmanız gerekiyorsa ve her biri için ayrı DNS A kaydı eklemek istemiyorsanız, joker karakterli (wildcard) alan adı kullanabilirsiniz:
Uygulama Adımları
1. ServBay'de frp Paketini Kurun
- ServBay uygulamasını açın.
- Sol menüde Paketler (Packages) sekmesini seçin.
- Paketler listesinden
frp
öğesini bulun. - Yanındaki yükleme butonuna tıklayın.
- Kurulum ardından henüz yapılandırma yapılmadığı için frp servisiniz başlatılamayabilir; bu normaldir.
2. frps
Sunucunuzun Kurulumunu ve Yapılandırmasını Hazırlayın
frps'i internetten erişilebilir sunucunuzda manuel olarak kurmalı ve çalıştırmalısınız. ServBay, işinizi kolaylaştırmak için size temel bir frps.toml
(daha yeni frp sürümleri için) şablon dosyası sunabilir:
ServBay'de Tunnel -> frp bölümüne gidin.
frp server config (frps.toml) öğesinin yanındaki aşağı açılır/ok simgesine tıklayın.
ServBay size aşağıdakine benzer örnek bir
frps.toml
dosyası gösterecektir:toml# ServBay tarafından otomatik oluşturulan frps yapılandırma dosyası # doğrudan sunucuda kullanılmak için tasarlanmıştır. # Lütfen yapılandırma parametrelerini kendi ihtiyacınıza göre uyarlayın. 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 # Daha yeni sürümlerde (örn. 0.52.0+) frps Dashboard'unu # yapılandırmak için webServer.port, webServer.addr, # webServer.user ve webServer.password özellikleri kullanılır # 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
21
22Önemli Yapılandırma Açıklamaları:
bindPort
: frpc ile frps arasındaki iletişim portudur. Bu portun sunucu güvenlik duvarında açık olduğundan emin olun. Sunucunuzun bu portunu güvenlik duvarı ile sadece izin verilen IP’lerden erişilebilir şekilde korumanız şiddetle önerilir.auth.method = "token"
veauth.token
: İstemci bağlantı doğrulaması için kullanılır. Kendi güçlü parolanız ile değiştirin.vhostHTTPPort = 80
vevhostHTTPSPort = 443
: frps'in HTTP/HTTPS trafiğini dinleyeceği portlar.- [Kritik] ServBay,
frps
sunucusunun doğrudan 80 ve 443 portlarını kullanmasını ve bunlarıvhostHTTPPort
/vhostHTTPSPort
olarak ayarlamanızı önerir. Böylece, ServBay üzerinden elde ettiğiniz ACME SSL sertifikaları doğrudan frps üzerinden kullanılabilir duruma gelir. - Eğer
frps
sunucunuzda 80/443 portları başka bir servis tarafından kullanılıyorsa ve mecburen 8080/8443 gibi alternatif portlar kullanacaksanız, mutlaka önünde bir adet ters proxy sunucu (ör. Nginx veya Caddy) konumlandırmalısınız. Bu ön proxy, halka açık 80/443 portunu dinler ve trafiği arka taraftaki frps'in ilgili portlarına iletir. Bu durumda SSL işlemi proxy üzerinde yapılır, ServBay üzerinden SSL sertifikası doğrudan kullandırılamaz.
- [Kritik] ServBay,
log.to
: frps'in log dosyası yolu.- Dashboard ile ilgili ayarlar (örn.
webServer.port
vs.): frps web yönetim paneline erişmek içindir, opsiyoneldir.
Bu yapılandırma dosyasını kendi
frps
sunucunuza kopyalayın vefrps.toml
(veya tercihen/uygun sürümdefrps.ini
) olarak kaydedin, gerekirse parametreleri ihtiyacınıza göre düzenleyin.frps servisinizi başlatın.
3. ServBay'de frp İstemcisi Yapılandırmasını Girin
ServBay uygulamasına dönerek, frp istemcisine ait bağlantı parametrelerini girin:
Tunnel -> frp bölümüne gidin.
Aşağıdaki frps sunucu bilgilerini doldurun:
- Server Address (Sunucu Adresi):
frps
sunucunuzun genel alan adı veya IP adresi (örn:my.test.frp.server.host
) - Server Port (Sunucu Portu):
frps.toml
dosyanızdakibindPort
değeri (örn:12345
) - Auth Token (Yetkilendirme Anahtarı):
frps.toml
dosyanızdakiauth.token
değeri (örn:myserverpassword
)
- Server Address (Sunucu Adresi):
Tünel eşleme kurallarını yapılandırın:
- Local Domain (Yerel Site): Buradan frp üzerinden internete açmak istediğiniz ServBay sitesini seçin (örn:
servbay.demo
) - External Domain (Dış Alan Adı): Kamuya açılacak alan adını eksiksiz girin (örn:
test.ks.do
). Alan adınızın DNS A kaydınınfrps
sunucusunun IP'sine yönlendiğinden emin olun.- Önemli: ServBay'in diğer tünel hizmetlerinden (
Ngrok
,Cloudflared
vb.) farklı olarak burada eksiksiz alan adını girmeniz gerekir.
- Önemli: ServBay'in diğer tünel hizmetlerinden (
- ACME Certificates (ACME Sertifikası): ServBay'de daha önce eklediğiniz ilgili ACME SSL sertifikasını buradan seçin (örn:
test.ks.do
alan adı için tanımlı olan).- Dikkat: HTTPS üzerinden erişim için burada doğru sertifikayı seçmeniz zorunludur. ServBay, bu sertifika bilgisini frpc'ye iletir ve frpc bağlı olduğu frps'e bu ileti gönderdiğinde, frps ilgili alan adı üzerinden gelen HTTPS isteklerine cevap vermek için bu sertifikayı kullanır. Yani
frps
sunucunuzda ayrıca bu alan adı için sertifika kurulumu gerekmez, ServBay tarafından iletilir.
- Dikkat: HTTPS üzerinden erişim için burada doğru sertifikayı seçmeniz zorunludur. ServBay, bu sertifika bilgisini frpc'ye iletir ve frpc bağlı olduğu frps'e bu ileti gönderdiğinde, frps ilgili alan adı üzerinden gelen HTTPS isteklerine cevap vermek için bu sertifikayı kullanır. Yani
- Local Domain (Yerel Site): Buradan frp üzerinden internete açmak istediğiniz ServBay sitesini seçin (örn:
Ekstra Tünel Ekleyin:
- Farklı yerel siteler veya birden fazla dış alan adı için tünel eklemek isterseniz, mevcut tünel satırındaki
+
simgesine tıklayarak yeni yapılandırma oluşturabilirsiniz.
- Farklı yerel siteler veya birden fazla dış alan adı için tünel eklemek isterseniz, mevcut tünel satırındaki
4. Yapılandırmayı Kaydedin ve frp Servisini Başlatın
- Tüm alanları doldurduktan sonra, sağ alt köşedeki Kaydet (Save) butonuna tıklayın.
- ServBay, frpc yapılandırmanızı kaydedecek ve frp servisini başlatmayı deneyecektir.
- Tunnel listesindeki
frp
satırı yanındaki durum ışığına bakın. Yapılandırma ve bağlantı doğruysa, ışık yeşile döner; servis başarıyla çalışıyor demektir. - Erişimi Doğrulayın:
- Şimdi, dış alan adınızı (
https://test.ks.do
gibi) herkesin erişimine açmış olmalısınız. - Alan adı yanındaki kopyala veya tarayıcı ikonuna tıklayarak test edin.
- Şimdi, dış alan adınızı (
Dikkat Edilecekler
frps
Sunucu Kurulumu ve Bakımı: frps sunucusunun kurulumu, güvenliği ve bakımı tamamen sizin sorumluluğunuzdadır.frps
bindPort
Güvenliği: Güçlü birauth.token
kullanın ve mümkünse güvenlik duvarı ile sadece belirli IP adreslerinden erişime açın.vhostHTTPPort
vevhostHTTPSPort
Seçimi:- Mümkünse frps’in doğrudan 80 ve 443 portlarını sanal host portları olarak dinlemesini sağlayın; böylece ServBay’den aldığınız ACME SSL sertifikalarını kolayca iletebilirsiniz.
- Eğer frps farklı portlar (örn. 8080/8443) üzerine yapılandırılmışsa, 80/443 portlarını dinleyen bir ön proxy (örn. Nginx veya Caddy) kurarak, istemci trafiğini gerçek frps portlarına aktarın ve SSL işlemlerini bu proxy üzerinde yönetin.
- ACME Sertifikası Gerekliliği: HTTPS üzerinden doğrudan erişim için ilgili alan adı adına ServBay'de ACME sertifikası başvurusu yapmalı ve frp yapılandırmasında seçmelisiniz.
- DNS Dağılımı:
External Domain
(Dış Alan Adı) alanınıza ait DNS A kaydının doğru IP’ye yönlendiğinden ve değişikliklerin globalde yayıldığından emin olun.
Sıkça Sorulan Sorular (SSS)
- S: ServBay'de frp servisi başlatılamadı; durum ışığı kırmızı veya turuncu. Ne yapmalıyım?
- C: ServBay'deki frp ayarlarınızı gözden geçirin:
Server Address
,Server Port
,Auth Token
değerleri ilefrps.toml
dosyasındakibindPort
veauth.token
tam olarak eşleşiyor mu kontrol edin. frps sunucunuzun çalıştığından ve bindPort portuna erişimin açık olduğundan emin olun (güvenlik duvarı ayarlarını kontrol edin). Hata detayları için frp servis loglarına bakın.
- C: ServBay'deki frp ayarlarınızı gözden geçirin:
- S: Dış alan adından erişim sağlayabiliyorum ama bağlantı HTTP, HTTPS değil!
- C: ServBay’de frp yapılandırmasında
External Domain
için doğru ACME sertifikasını seçtiğinizden emin olun. Ayrıcafrps.toml
’davhostHTTPSPort
’un gerçekten HTTPS portunu (tercihen 443) dinleyecek şekilde ayarlandığına emin olun.
- C: ServBay’de frp yapılandırmasında
- S:
frps
sunucusunda 80/443 yerine farklı bir portuvhost
olarak kullanmam gerekirse, SSL’i nasıl ayarlarım?- C: Böyle bir durumda, frps’in önünde, 80/443 portunu dinleyen bir ters proxy (örneğin Nginx veya Caddy) kurulmalıdır. Bu proxy, SSL sertifikasını bağımsız olarak yönetebilir (ServBay’den bağımsızdır) ve şifreli trafiği ya çözer ya da isteğe göre şifreli olarak arka uçtaki gerçek frps
vhostHTTPSPort
’a iletir. Bu tür bir kurulumda, ServBay’in ACME sertifikası alanı halka açık SSL'i doğrudan sağlamak için kullanılmaz; SSL işlemi doğrudan proxy sunucusunda yapılır.
- C: Böyle bir durumda, frps’in önünde, 80/443 portunu dinleyen bir ters proxy (örneğin Nginx veya Caddy) kurulmalıdır. Bu proxy, SSL sertifikasını bağımsız olarak yönetebilir (ServBay’den bağımsızdır) ve şifreli trafiği ya çözer ya da isteğe göre şifreli olarak arka uçtaki gerçek frps
- S: ServBay’in oluşturduğu
frps.toml
ile mevcutfrps.ini
dosyam format olarak farklı. Bu nedenle sorun yaşar mıyım?- C: frp yapılandırma biçimi zamanla
.ini
'den.toml
'a geçmiştir. ServBay örnek dosyası.toml
formatındadır. Eğer frps’iniz eskiyse veya.ini
formatını tercih ediyorsanız frp resmi dokümantasyonundan uygun dönüşümü gerçekleştirip yapılandırma yapabilirsiniz. Temel parametreler aynıdır.
- C: frp yapılandırma biçimi zamanla
Özet
ServBay, entegre frp istemcisi sayesinde tünel yapılandırmalarını yüksek derecede özelleştirmek isteyen macOS geliştiricileri için güçlü bir çözüm sunar. Kendi frps sunucunuzu barındırırken ServBay'in pratik frpc yapılandırma arayüzü ve ACME SSL sertifika yönetimi sayesinde, yerel geliştirme sitelerinizi güvenli ve esnek şekilde internete açabilirsiniz. Port ve güvenlik ayarlarının eksiksiz ve özenli yapıldığından emin olarak, hem güvenliği hem de servis stabilitesini maksimumda tutabilirsiniz.