VPS Uzerinde obfs4 Tor Koprusu Kurulumu Rehberi
Dususik maliyetli bir VPS uzerinde obfs4 Tor koprusunu nasil calistiracaginizi ogrenin. torrc yapilandirmasi, port secimi, guvenlik duvari ve dogru calistigini gosteren log kayitlari.
Tor köprüsünün ne olduğu ve neden var olduğu
Tor köprüsü, adresi halka açık röle listesinde yayınlanmayan, Tor ağına bir giriş noktasıdır. Konsensüs adı verilen bu liste, herkesin indirebileceği imzalı bir belgedir ve sansürcüler de bu listeyi indirir. Tor'u bu listeden engellemek bir öğleden sonrayı alır: konsensüsü çekin ve ardından listedeki her adresi sınırda engelleyin. Köprüler, yayınlanan listenin zayıf nokta olması nedeniyle vardır. Köprü adresleri birer ikişer dağıtılır, bu sayede tek bir istek tüm kümenin ele geçirilmesine olanak tanımaz.
Listelenmemiş bir adres çözümün yalnızca yarısıdır. Trafiği adresine göre değil içeriğine göre sınıflandıran derin paket incelemesi (DPI), bir Tor bağlantısını TLS (taşıma katmanı güvenliği) el sıkışmasının şeklinden tanır. Listesi olmayan bir sansürcü bile "bu Tor'a benziyor" diyebilir ve bağlantıyı düşürebilir. Takılabilir taşıyıcı (pluggable transport) bu sinyali ortadan kaldırır. İstemci tarafında Tor akışını başka bir şeye sarar ve köprünüz bu sarmalı açar.
obfs4, çoğu köprünün çalıştırdığı taşıyıcıdır. Akışı, başlığı olmayan ve sabit bir el sıkışması bulunmayan baytlara dönüştürür, böylece DPI'ın eşleştirebileceği bir desen kalmaz. Ayrıca istemcinin kimliğini doğrular. Bir köprü satırının içindeki cert= değeri, istemcinin köprü yanıt vermeden önce sahip olduğunu kanıtlaması gereken bir anahtardır; bu, aktif taramayı etkisiz hale getirir: adresinize bağlanarak Tor konuşup konuşmadığını test eden bir sansürcü hiçbir yanıt alamaz ve hiçbir şey öğrenemez.
Hangi pluggable transport çalıştırılmalı?
- obfs4 bir adet VPS, iki adet TCP portu gerektirir ve alan adı ihtiyacı yoktur. Çalıştırabileceğiniz en kolay ve işlevsel yöntemdir; bu kılavuzun da konusunu oluşturur.
- WebTunnel, bağlantıyı gerçek bir web sitesine giden olağan HTTPS trafiğinin içine gizler. Tor Project, bunun için statik bir IPv4 adresi, kontrolünüzde olan bir alan adı, NGINX veya Apache gibi çalışan bir web sunucusu, geçerli bir TLS sertifikası ve en az 1 GB RAM (4 GB önerilir) gerektirdiğini belirtir. Rastgele görünen trafiğin şüpheli karşılandığı ağlar için uygundur; çünkü web tarama dışında çok az şeye izin veren ülkeler bile HTTPS trafiğine izin vermektedir.
- Snowflake farklı bir katkı yöntemidir. Gönüllüler kısa ömürlü WebRTC proxy'leri çalıştırır; bu sayede giriş noktaları sürekli değişir ve sansürcünün engelleyebileceği sabit bir adres bulunmaz. Bunun için bir köprü (bridge) işletmezsiniz. Yalnızca bir proxy çalıştırırsınız ve sabit bir adrese ihtiyaç duymaz.
obfs4 ile başlayın. Daha sonra ikinci bir adres üzerinde WebTunnel köprüsü ekleyebilirsiniz: her ikisini tek bir IP üzerinde çalıştırmak, engellenen tek bir adresin her iki servisi de devre dışı bırakması anlamına gelir.
Bir bridge çalıştırmanın maliyeti nedir?
The data behind this chart
[
{
"label": "Bridge, minimum",
"min_upstream_mbit": 1
},
{
"label": "Guard or middle relay, minimum",
"min_upstream_mbit": 10
},
{
"label": "Guard or middle relay, recommended",
"min_upstream_mbit": 16
}
]Ağustos 2026 itibarıyla Tor Project, bir bridge için en az 1 Mbit/s değerinde yükleme ve indirme bant genişliği talep etmektedir. Bir guard veya middle relay için 10 Mbit/s talep edilmekte olup, 16 Mbit/s önerilmektedir. Bunlar yayınlanmış gereksinimlerdir, ölçüm değerleri değildir. Yeni bir bridge genellikle haftalarca kendi minimum değerinin çok altında çalışır. Aynı gereksinimler sayfası, bir relay için aylık en az 100 GByte giden trafik talep etmektedir; en küçük planlar bile bunu karşıladığından, daha büyük bir yapılandırma yapmadan önce küçük bir VPS'in aylık gerçek maliyeti konusunu inceleyin.
Kötüye kullanım yüzeyi küçüktür ve insanların yanlış anladığı kısım burasıdır. Bir bridge ilk duraktır. Sunucunuzdan çıkan trafik başka bir Tor relay'ine gider, asla kullanıcının seçtiği bir web sitesine gitmez. IP adresiniz hiçbir yabancının web günlüğünde bir isteğin kaynağı olarak görünmez, bu nedenle exit relay operatörlerinin uğraştığı şikayet e-postaları buraya ulaşmaz. Yine de sağlayıcınızın kabul edilebilir kullanım politikasını kontrol edin, çünkü bazı barındırma hizmetleri her türlü Tor servisini özel bir durum olarak değerlendirir.
Yapılmaması gereken bir şey: mevcut bir public relay'i aynı adreste bir bridge'e dönüştürmektir. Tor Project'in bu durum için tavsiyesi "IP adresini, ismi ve fingerprint'i" değiştirmektir, çünkü eski adres sansürcülerin indirdiği consensus listesinde zaten yer almaktadır. Geçen hafta public relay olan bir bridge, halihazırda bir engelleme listesinde olan bir bridge'dir.
Çalışma süresi (uptime) hızdan daha önemlidir. Relay gereksinimleri, "relay'iniz günde 2 saatten fazla çalışmıyorsa kullanışlılığı sınırlıdır" ifadesini içerir; bir bridge bu konuda relay'den daha dezavantajlıdır, çünkü her istemcinin tek bir adresi vardır ve yedekleme mekanizması bulunmaz. Bir yeniden başlatma, üzerindeki tüm kullanıcıların bağlantısını koparır. Çalışmayı durdurduğu günü öğrenmek için obfs4 portuna karşı Uptime Kuma üzerinde bir TCP port kontrolü yapılandırın.
Tor'u Tor Project deposundan kurma
Dağıtım paketleri güncel değildir; bir köprü (bridge), güncel tutulması gereken bir güvenlik yazılımıdır. Öncelikle projenin kendi deposunu ekleyin.
sudo apt update
sudo apt install -y apt-transport-https gnupg wget lsb-release
wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/nullŞimdi kaynak dosyasını oluşturun. Suites: satırı, sisteminizin sürüm kod adını içermelidir; bu yüzden kod adını ezberden yazmak yerine sistemden okuyun.
sudo tee /etc/apt/sources.list.d/tor.sources >/dev/null <<EOF
Types: deb deb-src
URIs: https://deb.torproject.org/torproject.org/
Suites: $(lsb_release -cs)
Components: main
Signed-By: /usr/share/keyrings/deb.torproject.org-keyring.gpg
EOF
sudo apt update
sudo apt install -y tor deb.torproject.org-keyring obfs4proxyEğer apt update, deponun sürüm kod adınız için bir Release dosyası içermediğini bildirirse, Tor Project bu sürümü desteklemiyordur. /etc/apt/sources.list.d/tor.sources dosyasını silin, sudo apt update komutunu tekrar çalıştırın ve dağıtımınızın sunduğu tor paketini kurun. Aşağıdaki tüm adımlar aynıdır.
obfs4proxy paketi doğrudan Debian ve Ubuntu tarafından sağlanır (Ağustos 2026 itibarıyla Debian 13 içinde 0.0.14 sürümü). İkilinin (binary) nereye kurulduğunu doğrulayın, çünkü yapılandırma dosyasında bu yol kullanılacaktır:
command -v obfs4proxy || command -v lyrebirdUpstream geliştiriciler projeyi lyrebird olarak yeniden adlandırdığı için, daha yeni bir paket /usr/bin/lyrebird dosyasını kurabilir. Komutun çıktı olarak verdiği yolu kullanın.
/etc/tor/torrc icerisinde kopru yapilandirmasi
BridgeRelay 1
ORPort 8443
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs4 0.0.0.0:9443
ExtORPort auto
ContactInfo you@example.com
Nickname PickANickname
BridgeDistribution anyBu satirlarin her birinin kendine has bir hata potansiyeli vardir, bu nedenle her birini sirasiyla ele alin.
BridgeRelay 1, tor uygulamasina tanimlayicisini genel konsensüs yerine kopru yetkilisine (bridge authority) gondermesi talimatini verir. Bu tek satir, aktariciyi (relay) listelenemez hale getiren unsurdur.
ORPort, gercek Tor portudur. Bu portun internetten erisilebilir olmasi gerekir; cunku tor bunu test eder ve test basarili olana kadar tanimlayici yayinlamayi reddeder.
ServerTransportPlugin, tor uygulamasina calistiracagi komutu verir. tor, obfs4proxy'yi bir alt surec olarak baslatir ve onunla bir kanal (pipe) uzerinden iletisim kurar; bu nedenle obfs4proxy'nin kendi servis birimi yoktur ve systemctl status icerisinde asla gorunmez.
ServerTransportListenAddr, obfs4proxy'nin dinleyecegi portu sabitler. Bu satiri yazmazsaniz, obfs4proxy baslangicta bos bir port secer ve cogu yeniden baslatma sonrasinda farkli bir port kullanir; bu durumda dagittiginiz her kopru satiri, hicbir servisin dinlemedigi bir porta isaret eder. Bu istemciler baglanti reddi alir ve denemeyi birakir.
ExtORPort auto, obfs4proxy'nin tamamlanan baglantilari istemci adresiyle birlikte tor'a geri iletmek icin kullandigi bir loopback kanali olan genisletilmis ORPort'u acar. Tor Project kurulum kilavuzu bunu her kopru icin dahil eder, cunku bu olmadan tasima katmani ilgili adresi tor'a raporlayamaz.
ContactInfo ve Nickname her ikisi de herkese aciktir. Okuyabileceginiz bir adres kullanin, cunku Tor Project bozuk bir kopru hakkinda sizinle bu adres uzerinden iletisime gecer. Eger gizli kalmak istiyorsaniz sizi tanimlamayan bir takma ad secin.
BridgeDistribution, adresinizi kullanicilara hangi dagiticinin verecegini secer. Kabul edilen degerler https, email, telegram, settings, none ve any'dir. Ilk koprunuz icin any kullanin ve sistemin karar vermesine izin verin. Kendi elinizle dagitacaginiz ozel bir kopru icin none kullanin; bu, adresi genel dagitimdan tamamen uzak tutar.
Port seçiminin önemi
Her iki port için de 9001 değerini kullanmaktan kaçının. Tor Project bunu doğrudan belirtmektedir; çünkü 9001 geleneksel ORPort'tur ve sansür uygulayanlar interneti bu port için taramaktadır. tor ve obfs4proxy kendi dinleyicilerini ayrı ayrı bağladığından, bu iki port birbirinden farklı olmalıdır.
En güçlü obfs4 portu 443'tür. Giden 443 trafiği neredeyse tüm kısıtlı ağlarda açıktır ve bu porta kurulan uzun süreli bir bağlantı, sıradan bir web oturumu gibi görünür. 1024'ün altındaki bir porta bağlanmak fazladan bir adım gerektirir, çünkü obfs4proxy root yetkisiyle çalışmaz:
sudo setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy
sudo systemctl edit tor@.service tor@default.serviceAçılan her düzenleyicide şu iki satırı ekleyin:
[Service]
NoNewPrivileges=noBu yetenek tek başına yeterli değildir. systemd'nin NoNewPrivileges ayarı, bir sürecin üst sürecinde bulunmayan herhangi bir ayrıcalığı kazanmasını engeller; dosya yeteneği de tam olarak budur, bu nedenle ayar etkin kaldığı sürece obfs4proxy 443 portuna bağlanamaz.
Bu adımı atlamak isterseniz, dikkat çekmeyen yüksek bir port seçin ve not edin. Seçiminiz ne olursa olsun, obfs4 portunu daha sonra değiştirmeyin. Bir köprü satırı; adresi, portu, parmak izini ve sertifikayı birbirine bağlar; bu nedenle port değiştiği anda kullanıcının tarayıcısında kayıtlı olan tüm kopyalar geçersiz kalır.
Her iki güvenlik duvarında portları açın
sudo ufw allow 8443/tcp
sudo ufw allow 9443/tcp
sudo ufw statusHer iki portun da açık olması gerekir; çoğu sağlayıcı, ufw'nin erişemediği kontrol paneli üzerinde ikinci bir güvenlik duvarı çalıştırır. Sunucu üzerinde tanımlı olup panelde bulunmayan bir kural, asla erişilemeyen ve tanımlayıcı yayınlamayan bir köprü oluşturur. Bu konulardan herhangi biri yeni ise, yeni bir VPS için gereken ufw kuralları ve Linux'ta dinleme portunun gerçekte ne olduğu konuları bu süreci açıklar. Hazır buradayken, SSH'ı anahtarlar ve sıkılaştırılmış bir sshd yapılandırması ile kilitleyin. Parola tabanlı SSH kullanılan bir sunucuda listelenmemiş bir köprü, hala parola tabanlı SSH kullanılan bir sunucudur.
Servisi başlatın ve günlük kaydını okuyun
sudo systemctl enable --now tor.service
sudo systemctl restart tor.service
sudo journalctl -e -u tor@defaultDebian ve Ubuntu iki birim ile gelir. tor.service küçük bir sarmalayıcıdır ve tor@default.service işi yapan süreçtir; bu nedenle journalctl -u tor neredeyse boş görünürken, ihtiyaç duyduğunuz günlük kaydı tor@default altında yer alır.
İki satır, işlemin başarılı olduğunu belirtir:
Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.
Registered server transport 'obfs4' at '0.0.0.0:9443'İlk satır, erişilebilirlik testinin geçtiğini ve tanımlayıcının köprü yetkilisine (bridge authority) ulaştığını gösterir. Eğer bu satır görünmüyorsa, internet ile sunucunuz arasındaki bir engel ORPort trafiğini düşürüyor demektir. İkinci satır, yapılandırdığınız portu göstermelidir. Orada farklı bir port görünmesi, tor'un ServerTransportListenAddr ayarını uygulamadığı anlamına gelir; bunun yaygın nedeni ise taşıma adı uyuşmazlığıdır: her iki yönergede de obfs4 yazmalıdır.
İki dinleyicinin varlığını doğrulayın:
sudo ss -lntp | grep -E 'tor|obfs4|lyrebird'Bridge satırım nerede?
obfs4proxy, tor'un veri dizinine bir şablon yazar:
sudo cat /var/lib/tor/pt_state/obfs4_bridgeline.txtBu dizin tor kullanıcısına aittir ve izinleri 700'dür; bu nedenle sudo olmadan Permission denied hatası alırsınız. Dosya şu biçimde bir satır içerir:
Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=<CERTIFICATE> iat-mode=0<IP ADDRESS> kısmını sunucunuzun genel adresiyle, <PORT> kısmını ORPort ile değil obfs4 portu ile ve <FINGERPRINT> kısmını tor'un veri dizinine yazdığı kimlik parmak iziyle değiştirin:
sudo cat /var/lib/tor/fingerprint
sudo cat /var/lib/tor/hashed-fingerprintİlk dosya, takma adınızı ve bridge satırında bulunması gereken kimlik parmak izini tutar. İkinci dosya ise, bridge'inizin çalışıp çalışmadığını ve yaklaşık kaç istemcinin ona ulaştığını görmek için Relay Search kısmına yapıştırdığınız özetlenmiş (hashed) parmak izini tutar. Bu ikisi birbirinin yerine kullanılamaz. Özetlenmiş değeri taşıyan bir bridge satırı, bridge'inizin sunduğu kimlik anahtarıyla eşleşmez; bu yüzden istemci, yeni açtığı bağlantıyı reddeder.
Bir köprü kullanıcılara fiilen nasıl ulaşır?
Köprü satırınızı kimseye kendiniz vermezsiniz. Tanımlayıcı köprü yetkilisine ulaştığında, dağıtım sistemi (BridgeDB'nin halefi olan rdsys), köprünüzü bir dağıtıcıya atar ve kullanıcılar bu dağıtıcıdan köprü talep eder. Ağustos 2026 itibarıyla izlenen yollar şunlardır:
- Bir CAPTCHA doğrulamasından sonra köprü satırlarını sunan bridges.torproject.org/options adresindeki web formu.
- Gmail veya Riseup adresinden bridges@torproject.org adresine gönderilen ve yanıt olarak köprü satırları içeren e-posta. Sağlayıcı kısıtlaması, sınırsız ücretsiz hesapların bir sansürcünün tüm köprüleri listelemesine olanak tanımasını engellemek için mevcuttur.
- @GetBridgesBot Telegram botu.
/startkomutunu, ardından/obfs4veya/webtunnelkomutunu gönderin. - Tor Browser'ın kendi içindeki Ayarlar ve ardından Bağlantı menüsü; burada "Köprü talep et" seçeneği, köprüleri moat kanalı üzerinden getirir.
Yeni bir köprü, kurulumdan yaklaşık üç saat sonra Relay Search üzerinde görünür. Kullanıcıların gelmesi ise çok daha uzun sürer: Tor Project'in kendi ifadesiyle "Tutarlı bir kullanıcı kitlesi görmeniz birkaç gün veya hafta sürebilir." İlk iki haftanın sessiz geçmesi normaldir, bir hata değildir.
BridgeDistribution none ayarını yapmak, tüm bu süreçlerden çıkmanızı sağlar. Bu durumda köprü satırı tamamen size ait olur ve sansürcünün izlemediği bir kanal üzerinden ihtiyaç duyan kişilere iletebilirsiniz.
Bir şeyler çalışmadığında
Log dosyasında kendi kendine test satırı yok. ORPort erişilebilir durumda değil. Başka bir makineden nc -vz your.ip 8443 ile test edin. Bağlantının askıda kalması paketlerin düşürüldüğü anlamına gelir; bu durumda ufw ayarlarını ve sağlayıcının panelini kontrol edin. Bağlantının reddedilmesi tor'un dinleme yapmadığını gösterir; ss -lntp komutunu kontrol edin ve yapılandırma hatası olup olmadığını görmek için log dosyasını okuyun.
Kayıtlı transport, seçmediğiniz bir portu gösteriyor. tor, ServerTransportListenAddr ayarını yok saydı. Transport ismi, ServerTransportPlugin içindeki isimle tam olarak eşleşmelidir ve her ikisi de obfs4 olmalıdır.
obfs4proxy 443 numaralı portu bağlayamıyor. getcap /usr/bin/obfs4proxy ile yetkiyi doğrulayın, ardından geçersiz kılma işleminin birime ulaştığını systemctl show tor@default -p NoNewPrivileges ile teyit edin. Eğer çıktı NoNewPrivileges=yes değerini döndürüyorsa, eklediğiniz dosya çalışmayan bir birime yönlendirilmiş demektir.
/var/lib/tor/pt_state/ içinde hiçbir şey yok. tor transport'u hiç başlatmadı; bu, ServerTransportPlugin içindeki yolun yanlış olduğu anlamına gelir. Bu yolu command -v obfs4proxy çıktısı ile karşılaştırın.
Bir değişiklikten sonra istemciler bağlanmayı bıraktı. Adreste veya obfs4 portunda yapılan herhangi bir değişiklik, halihazırda dağıtılmış olan tüm bridge satırlarını geçersiz kılar. Sunucunun genel IP adresinin değişip değişmediğini kontrol edin; bazı sağlayıcılarda yeniden kurulum yapıldığında bu durum gerçekleşebilir.
tor hiçbir şekilde başlamıyor. sudo -u debian-tor tor --verify-config -f /etc/tor/torrc komutunu çalıştırın. Bu komut dosyayı ayrıştırır, itiraz ettiği satırı yazdırır ve çalışan servise müdahale etmez.
FAQ
VPS sağlayıcım Tor köprüsü (bridge) kurduğum için şikayetçi olur mu?
Köprü bir giriş noktasıdır; dolayısıyla sunucunuzdan çıkan trafik diğer Tor aktarıcılarına gider, kullanıcının seçtiği bir siteye asla gitmez. IP adresiniz hiçbir web günlüğünde bir isteğin kaynağı olarak görünmez; çıkış aktarıcısı (exit relay) operatörlerinin karşılaştığı şikayetlerin temel nedeni budur. Barındırma kuralları değişiklik gösterebilir ve bazı sağlayıcılar her türlü Tor servisini özel bir durum olarak değerlendirebilir. Bu nedenle başlamadan önce kullanım koşullarını okuyun ve okuduğunuz bir adresi ContactInfo içine ekleyin.
Bir Tor köprüsü ne kadar bant genişliği kullanır?
Yayınlanan minimum değer, bir guard veya orta aktarıcı için 10 Mbit/s iken, köprü için hem yükleme hem indirme yönünde 1 Mbit/s'dir. Gerçek kullanım sıfıra yakın başlar, çünkü köprünüz yalnızca bir dağıtıcının kendisine yönlendirdiği kullanıcıların trafiğini taşır. Kesin bir üst sınır belirlemek isterseniz, torrc dosyasında RelayBandwidthRate ve RelayBandwidthBurst ayarlarını yapılandırın.
Yeni köprüme neden kimse bağlanmadı?
Bir köprünün Relay Search üzerinde görünmesi yaklaşık üç saat sürer. Tor Project'in rehberine göre, düzenli bir kullanıcı kitlesine ulaşmak birkaç gün veya hafta alabilir. journalctl -u tor@default içindeki kendi kendini test etme satırı olan yayınlanmış tanımlayıcının doğruluğunu kontrol edin, Relay Search üzerinde hash'lenmiş parmak izinizi aratın ve BridgeDistribution değerinin none olarak ayarlanmadığından emin olun.
obfs4 mü yoksa WebTunnel mı çalıştırmalıyım?
İlk köprünüzü kuruyorsanız obfs4 kullanın: tek bir VPS, iki port, alan adı gerektirmez, sertifika gerektirmez. Rastgele görünümlü trafiğin engellendiği durumlarda WebTunnel çalıştırın; çünkü bu yöntem kontrolünüzde olan bir alan adı, gerçek bir web sunucusu, geçerli bir TLS sertifikası ve en az 1 GB RAM gerektirir. Her ikisini de çalıştırıyorsanız bunları farklı adreslere kurun; aksi takdirde engellenen tek bir IP, iki köprüyü birden devre dışı bırakır.
obfs4 portunu daha sonra değiştirirsem ne olur?
Dağıtılmış olan tüm köprü satırları çalışmayı durdurur. Bir köprü satırı; adresi, portu, parmak izini ve sertifikayı birbirine bağlar. Eski satıra sahip bir istemci, hiçbir servisin dinlemediği bir porta bağlantı açmaya çalışır ve başarısız olur. Aynı durum sunucunun genel IP adresi değiştiğinde de geçerlidir. Portu kurulum sırasında seçin ve değiştirmeyin.