Bu rehber sansürlenen kullanıcıların Tor ağıyla bağlantı kurmasına yardımcı olmak için bir WebTunnel vekil sunucusunun nasıl kurulacağı hakkında bilgi verir. WebTunnel, İnternet tarama etkinliklerini taklit etmeye çalışan HTTPT tabanlı bir değiştirilebilir taşıyıcıdır.

WebTunnel köprüsünü kurmak için gereksinimler şunlardır:

  1. Bir sabit IPv4 adresi (yeğlenir);
  2. TCP bağlantı noktaları için İnternet erişimi (araya NAT girmediğinden emin olun);
  3. Yapılandırılabilir bir site sunucusu (NGINX veya Apache gibi) ve kontrolünüz altındaki bir etki alanını içeren, kendinizin barındırdığı bir site;
  4. Geçerli bir TLS sertifikası.

Bir WebTunnel köprüsünün kurulması, bu değiştirilebilir taşıyıcı ile bir İnternet sunucusunun ve bir Tor köprüsünün yapılandırılmasını kapsar. Bu rehberin ilk bölümünde İnternet sunucunuzu WebTunnel destekleyecek şekilde yapılandırmak için ayrıntılı yönergeler bulunur. İkinci bölümde, WebTunnel köprüsünü çalıştırmak için iki yöntem arasından seçim yapacaksınız: Docker kullanmak ya da kaynak kodundan derlemek.

WebTunnel ya da obfs4 köprüsü işletme gereksinimlerini karşılamıyorsanız, Snowflake proxy işletmenin, kullanıcıların sansürü aşmasına yardımcı olmak için bant genişliğinizi bağışlamanın harika bir yolu olduğunu lütfen unutmayın.

İnternet sunucusu yapılandırması

1. adım. Etki alanınızı yapılandırın

Zaten bir site etki alanınız varsa, ana etki alanını kullanabilir veya bir alt etki alanı oluşturabilirsiniz. Bu rehberde, WebTunnel köprüsü sitenizle aynı sunucuda barındırılıyor. Ancak onu farklı bir sunucuda da barındırabilirsiniz.

2. adım. Geçerli bir sertifika edinin

Sitenizde TLS sertifikası yoksa, Shell dilinde yazılmış bir ACME iletişim kuralı istemcisi olan acme.sh kullanarak bir tane edinebilirsiniz.

2.1. ACME kurun

my@example.com yerine e-posta adresinizi yazın:

$ curl https://get.acme.sh | sh -s email=my@example.com

Ya da

$ wget -O - https://get.acme.sh | sh -s email=my@example.com

2.2. Bir sertifika yayınlayın

example.com yerine sitenizin etki alanını yazın.

$ ~/.acme.sh/acme.sh --issue --standalone --domain example.com

3. adım. NGINX kurun

Tek bir bağlantı noktasında diğer içeriklerle bir arada bulunması için NGINX gibi bir ters vekil sunucu yüklemelisiniz. NGINX kurun:

$ sudo apt install nginx

4. adım. NGINX sunucusunu yapılandırın

4.1. Rastgele bir dizge oluşturun

İstemciler İnternet sunucunuza bağlandıklarında, gizli bir yol kullandıklarında WebTunnel vekil sunucunuza yönlendirilirler. Şu komutu yürüterek rastgele bir dizge oluşturabilirsiniz:

$ echo $(cat /dev/urandom | tr -cd "qwertyuiopasdfghjklzxcvbnmMNBVCXZLKJHGFDSAQWERTUIOP0987654321"|head -c 24)

4.2. Bir NGINX sunucusunu oluşturun ya da düzenleyin

Trafiği WebTunnel köprüsüne ileten /etc/nginx/sites-available/webtunnel-vhost gibi yeni bir vhost dosyası oluşturun. Tam bir WebTunnel örneğiyle NGINX sanal sunucusu.

Ya da var olan bir vhost kullanmak isterseniz, location {} bloğunu düzenleyip ona eklemeniz yeterlidir. $PATH yerine rastgele bir dizge yazın.

# NGINX vhost bloğu örneği
location = /$PATH {
        proxy_pass http://127.0.0.1:15000;
        proxy_http_version 1.1;

        ### WebSocket üst bilgilerini ayarlayın ###
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        ### Vekil sunucu üst bilgilerini ayarlayın ###
        proxy_set_header        Accept-Encoding   "";
        proxy_set_header        Host            $host;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto $scheme;
        add_header              Front-End-Https   on;

        proxy_redirect     off;
        access_log  off;
        error_log /dev/null;
}

4.3. vhost yapılandırmasını deneyin ve NGINX sunucusunu yeniden yükleyin

sudo ln -s /etc/nginx/sites-available/webtunnel-vhost /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

5. adım. Tor WebTunnel köprünüzü yapılandırın

Tebrikler! site sunucunuzu Tor köprünüze vekil sunucu istekleri gönderecek şekilde yapılandırdınız. Şimdi İnternet sunucusundan bu istekleri almak için köprünüzü kurmanız ve yapılandırmanız gerekir. Lütfen bu rehberin ikinci bölümünü izleyin. İki seçeneğiniz var: Kaynak dosyasından bir Go binary dosyası derleyebilirsiniz ya da Docker kullanabilirsiniz.

WebTunnel Docker kurulumu

WebTunnel köprüsü Docker üzerinde nasıl çalıştırılır

WebTunnel kaynak kodunu derleyin ve çalıştırın

WebTunnel köprüsü kaynak kodundan nasıl çalıştırılır