Outline istemcisi (1.15.0+ sürümleri)
Bu eğitimde, normal Shadowsocks bağlantılarının engellendiği ortamlarda sansürü aşmak için güçlü bir teknik olan Shadowsocks-over-WebSockets'i uygulamanıza yardımcı olacak ayrıntılı bilgiler paylaşılmıştır. Shadowsocks trafiğini WebSockets içinde kapsülleyerek standart web trafiği olarak gizleyebilir, esnekliği ve erişilebilirliği artırabilirsiniz.
1. adım: Outline sunucusu yapılandırın ve çalıştırın
Aşağıdaki yapılandırmayı kullanarak yeni bir config.yaml
dosyası oluşturun:
web:
servers:
- id: server1
listen:
- "127.0.0.1:WEB_SERVER_PORT"
services:
- listeners:
- type: websocket-stream
web_server: server1
path: "/TCP_PATH"
- type: websocket-packet
web_server: server1
path: "/UDP_PATH"
keys:
- id: 1
cipher: chacha20-ietf-poly1305
secret: SHADOWSOCKS_SECRET
En yeni outline-ss-server
'ı indirin ve oluşturulan yapılandırmayı kullanarak çalıştırın.
outline-ss-server -config=config.yaml
2. adım: Web sunucusunu internete açın
WebSocket web sunucunuza herkesin erişebilmesi için internete açmanız ve TLS'yi yapılandırmanız gerekir. Bu işlem için birkaç seçeneğiniz vardır. Caddy, nginx veya Apache gibi yerel bir web sunucusu kullanabilir ve geçerli bir TLS sertifikasına sahip olduğundan emin olabilirsiniz. Dilerseniz Cloudflare Tunnel ya da ngrok gibi bir tünel oluşturma hizmeti kullanabilirsiniz.
TryCloudflare kullanılan örnek
Bu örnekte, hızlıca bir tünel oluşturmak için TryCloudflare kullanacağız. Bu sayede, gelen bağlantı noktalarını açmadan yerel web sunucunuzu internete açmak için uygun ve güvenli bir yöntemden yararlanabilirsiniz.
cloudflared
'i indirip yükleyin.Yerel web sunucusu bağlantı noktanıza yönlendiren bir tünel oluşturun:
cloudflared tunnel --url http://127.0.0.1:WEB_SERVER_PORT
Cloudflare, WebSocket uç noktanıza erişmek ve TLS'yi otomatik olarak işlemek için bir alt alan adı
acids-iceland-davidson-lb.trycloudflare.com
) sağlar. Daha sonra ihtiyaç duyacağınız için bu alt alan adını not edin.
3. adım: Dinamik erişim anahtarı oluşturun
Erişim anahtarı yapılandırması biçimini kullanarak kullanıcılarınız için istemci erişim anahtarını içeren bir YAML dosyası oluşturun ve sunucu tarafında önceden yapılandırılmış WebSocket uç noktalarını ekleyin:
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://DOMAIN/TCP_PATH
cipher: chacha20-ietf-poly1305
secret: SHADOWSOCKS_SECRET
udp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://DOMAIN/UDP_PATH
cipher: chacha20-ietf-poly1305
secret: SHADOWSOCKS_SECRET
Dinamik erişim anahtarlarını içeren YAML dosyasını oluşturduktan sonra bu dosyayı kullanıcılarınıza iletmeniz gerekir. Dosyayı statik bir web barındırma hizmetinde barındırabilir veya dinamik olarak oluşturabilirsiniz. Dinamik erişim anahtarlarını kullanma hakkında daha fazla bilgi edinin.
4. adım: Outline istemcisine bağlanın
Resmi Outline istemcisi uygulamalarından birini kullanın (1.15.0+ sürümleri) ve yeni oluşturduğunuz dinamik erişim anahtarını sunucu girişi olarak ekleyin. Shadowsocks-over-Websocket yapılandırmasını kullanarak sunucunuza tünel oluşturmak için Bağlan'ı tıklayın.
Şu anda Outline sunucunuz üzerinden internette gezindiğinizi doğrulamak için IPInfo gibi bir araç kullanın.