Files
3x-ui/README.tr_TR.md
T
Kuzz007 ab39f14b18 docs: update all 7 READMEs for the embedded AmneziaWG architecture
Replace the kernel-module/DKMS/awg-quick description (What's different,
Supported Platforms, Acknowledgment) with the embedded amneziawg-go +
gVisor architecture, and note the temporarily-unsupported per-client
IPv6 identity and port-forwarding gap until their fast-follow releases.
2026-08-02 20:34:57 +03:00

18 KiB
Raw Blame History

English | فارسی | العربية | 中文 | Español | Русский | Türkçe

3x-ui

Build GO Version License

Bu, 3X-UI'nin kişisel bir çatallamasıdır (fork)Xray-core için geliştirilmiş, açık kaynaklı bir web kontrol panelidir — ve tek bir büyük ekleme içerir: VLESS, VMess, Trojan ve diğerleriyle aynı seviyede birinci sınıf bir protokol olarak yerel (native) AmneziaWG desteği. 3X-UI'nin zaten yaptığı her şey (çoklu protokol destekli gelen bağlantılar, kullanıcı başına trafik hesaplama, abonelikler, çoklu düğüm, Telegram botu) değişmeden kalır ve orijinal projedeki gibi çalışmaya devam eder.

Bu fork, yazarının kendi yönlendiricileri ve kişisel sunucuları üzerinde çalışması için oluşturulmuştur; orijinal projenin yerini almayı veya onunla rekabet etmeyi amaçlamaz. Genel amaçlı paneli arıyorsanız MHSanaei/3x-ui adresine gidin — aşağıdaki her şey yalnızca bu fork'un farklarını belgelemektedir.

Important

Bu proje yalnızca kişisel kullanım için tasarlanmıştır. Lütfen yasadışı amaçlar için veya üretim (production) ortamında kullanmayın.

Bu fork'ta ne farklı: AmneziaWG

AmneziaWG, DPI tabanlı protokol parmak izi çıkarmayı yenmek için tasarlanmış bir gizleme (obfuscation) katmanı (çöp paketler, rastgele dolgu, sihirli başlıkların yeniden yazılması) ekleyen bir WireGuard varyantıdır — aynı tünel, ama artık hat üzerinde bir tünel gibi görünmeyen bir tünel.

  • Gömülü (embedded), çekirdek modülü değil. AmneziaWG tamamen panel sürecinin kendi içinde çalışır (amneziawg-go, kullanıcı alanında çalışan bir ağ yığını üzerinden) — DKMS derlemesi yok, Secure Boot ile çakışma yok, ayrıcalıklı bir sidecar konteyner yok ve host üzerine kurulacak hiçbir şey yok.
  • Birinci sınıf bir protokol. Bir AmneziaWG gelen bağlantısı, diğerleriyle aynı Inbound tablosunda yaşar; bu sayede toplu işlemleri (bulk operations), QR kodu/yapılandırma indirme modalını ve abonelik bağlantılarını hiçbir ek çaba olmadan kazanır — öğrenilecek yeni bir şey yoktur.
  • Tam AmneziaWG 2.0 gizlemesi — Jc/Jmin/Jmax (çöp paketler), S1S4 (paket dolgusu), H1H4 (sihirli başlıklar) ve I1 imza paketi; her biri gelen bağlantı başına düzenlenebilir ve tek tıkla rastgeleleştirme düğmesine sahiptir, ayrıca eski istemciler için 1.x uyumlu bir mod da bulunur.
  • Her istemcinin trafiği zaten Xray üzerinden geçiyor. TPROXY yok, ayrıca etkinleştirilmesi gereken bir köprü yok: her AmneziaWG gelen bağlantısı, loopback üzerinden doğrudan kendi Xray SOCKS5 gelen bağlantısına aktarılır; bu sayede istemci başına trafik istatistikleri, çevrimiçi durumu, sniffing ve panelde zaten mevcut olan "Yönlendirme" sayfasının kuralları, ek bir yapılandırma gerekmeden, tıpkı başka herhangi bir protokolde olduğu gibi çalışır.
  • Gerçek vpn:// paylaşım bağlantıları — istemci başına kopyalama bağlantısı/QR kodu ve abonelik uç noktası, resmi AmneziaVPN uygulamasının beklediği gerçek vpn:// şemasını üretir (düz bir .conf dosyasının base64url'i), uygulamanın içe aktaramadığı uydurma bir URI biçimi değil.
  • Bu geçişten sonra geçici olarak desteklenmiyor: istemci başına ayrı bir genel (public) IPv6 adresi ve istemci başına port yönlendirmenin ikisi de eski çekirdek modülünün host düzeyindeki iptables kurallarına dayanıyordu; bunların gömülü mimaride henüz bir karşılığı yok. Her ikisi de yakın zamanda ayrı sürümler olarak planlanıyor; her ikisi için de mevcut ayarlar kaybolmadı, sadece o zamana kadar etkisiz durumdalar.

Bu forktaki diğer değişiklikler

AmneziaWG dışındaki, bu forka özgü daha küçük iyileştirmeler eklendikçe burada listelenir:

  • Yönlendirme kuralı otomatik tamamlama — Xray Routing kural düzenleyicisindeki Domain/IP alanları artık geosite/geoip kategorilerini önerir (örneğin "you" yazmak geosite:youtube önerir); bu öneriler, Xray bin klasöründe fiilen kurulu olan .dat dosyalarından (Geodata otomatik güncelleme özelliğiyle eklenen özel dosyalar dahil, örn. geosite_roscom.dat) anlık olarak oluşturulur. Serbest metin girişi eskisi gibi çalışmaya devam eder.
  • AmneziaWG ve MTProto için canlı Hız — toplam trafik doğru hesaplanmasına rağmen, AmneziaWG ve MTProto (mtg) gelen bağlantıları/istemcileri için Speed sütunu "--" gösteriyordu; çünkü ikisi de Xray-core'un kendi çalışma zamanı içinde çalışmıyor ve bu yüzden onun istatistik API'si için görünmezler. Artık ikisi de canlı hızı diğer tüm protokollerle birlikte yayınlıyor.
  • bin/ içindeki özel dosyalar güncellemelerden etkilenmez — bir yeniden kurulum/güncelleme, sürümü yeniden ayıklamadan önce tüm bin/ klasörünü siliyordu; bu da oraya elle eklenmiş her şeyi (en yaygın olarak bir yönlendirme kuralının ext:<file>:<code> ile işaret ettiği özel bir geoip/geosite dosyasını) sessizce siliyor ve bir sonraki başlatmada tüm gelen bağlantıları bozuyordu. Artık kurulum programı önce bin/'i yedekliyor ve yalnızca yeni sürümün sağlamadığı dosyaları geri yüklüyor.

Özellikler

  • Çoklu protokol destekli gelen bağlantılar (Inbounds) — VLESS, VMess, Trojan, Shadowsocks, WireGuard, AmneziaWG, Hysteria2, HTTP, SOCKS (Karma), Dokodemo-door / Tunnel ve TUN.
  • Modern aktarımlar (transports) ve güvenlik — TCP (Raw), mKCP, WebSocket, gRPC, HTTPUpgrade ve XHTTP; TLS, XTLS ve REALITY ile güvene alınmıştır.
  • Geri Dönüş (Fallbacks) — Xray'in fallback desteğini kullanarak tek bir port üzerinde birden fazla protokole (ör. 443 üzerinde hem VLESS hem Trojan) hizmet verin.
  • Kullanıcı başına yönetim — Trafik kotaları, bitiş tarihleri, IP sınırları, canlı çevrimiçi (online) durumu ve tek tıkla paylaşım bağlantıları, QR kodları ve abonelikler.
  • Trafik istatistikleri — Gelen bağlantı (Inbound), istemci ve giden bağlantı (Outbound) bazında istatistikler ve sıfırlama kontrolleri.
  • Çoklu düğüm (Multi-node) desteği — Tek bir panel üzerinden birden fazla sunucuyu yönetin ve ölçeklendirin.
  • Giden bağlantı (Outbound) ve yönlendirme — WARP, NordVPN, özel yönlendirme kuralları, yük dengeleyiciler (load balancers) ve giden bağlantı proxy zincirleme (proxy chaining).
  • Dahili abonelik sunucusu (Birden fazla çıktı formatı ve özel sayfa şablonları ile).
  • Uzaktan izleme ve yönetim için Telegram botu.
  • Panel içi Swagger dokümantasyonuna sahip RESTful API.
  • Esnek depolama — SQLite (varsayılan) veya PostgreSQL.
  • Koyu ve açık tema seçenekleriyle 13 farklı UI dili.
  • Kullanıcı başına IP limitlerini zorunlu kılmak için Fail2ban entegrasyonu.

Ekran Görüntüleri

Genişletmek için tıklayın Genel Bakış Gelen Bağlantılar (Inbounds) Kullanıcı Ekle Yapılandırmalar

Hızlı Başlangıç

curl -fsSL https://raw.githubusercontent.com/Kuzz007/3x-ui/main/install.sh | bash

Belirli bir sürümü kurmak için, etiketini (ör. v3.5.0-awg.1) ekleyin:

curl -fsSL https://raw.githubusercontent.com/Kuzz007/3x-ui/main/install.sh | bash -s v3.5.0-awg.1

Sürekli güncellenen dev sürümünü (kararlı bir sürüm değil; main dalından her commit'te oluşturulan en son ön sürüm) kurmak için dev değerini geçirin:

curl -fsSL https://raw.githubusercontent.com/Kuzz007/3x-ui/main/install.sh | bash -s dev

Bu fork'un kendi kararlı sürümleri <upstream taban sürümü>-awg.N biçiminde etiketlenir (ör. v3.5.0-awg.1, upstream'in v3.5.0 dediği sürümün üzerine inşa edilmiştir) — asla düz bir vX.Y.Z değil — böylece hiçbir zaman aynı numaraya sahip gerçek bir MHSanaei/3x-ui sürümüyle karıştırılmaz.

Kurulum sırasında rastgele bir kullanıcı adı, şifre ve erişim yolu oluşturulur. Kurulumdan sonra, hizmeti başlatabileceğiniz/durdurabileceğiniz, giriş bilgilerinizi görüntüleyebileceğiniz veya sıfırlayabileceğiniz, SSL sertifikalarını yönetebileceğiniz ve çok daha fazlasını yapabileceğiniz yönetim menüsünü açmak için terminalde x-ui komutunu çalıştırın.

Bu README'nin kapsadığından daha fazlası için tam panel dokümantasyonuna orijinal projenin Wiki sayfasından ulaşabilirsiniz — hiçbiri bu fork'a özgü değildir, dolayısıyla tamamen geçerliliğini korur.

Etkileşimsiz kurulum

Yükleyici, cloud-init için etkileşimsiz olarak da çalışır. XUI_NONINTERACTIVE=1 ayarlayın (veya TTY olmadan boru hattına aktarın); kurulum baştan sona hiçbir soru sormadan tamamlanır, rastgele kimlik bilgileri oluşturup bunları /etc/x-ui/install-result.env dosyasına yazar. Şunlar için deploy/ klasörüne bakın:

Desteklenen Platformlar

İşletim sistemleri: Ubuntu, Debian, Armbian, Fedora, CentOS, RHEL, AlmaLinux, Rocky Linux, Oracle Linux, Amazon Linux, Virtuozzo, Arch, Manjaro, Parch, openSUSE (Tumbleweed / Leap) ve Alpine. (Orijinal proje ayrıca bir Windows sürümü de yayınlar; bu fork'un CI'ı bunu yapmaz — buradaki her şey Linux çalıştıran sunucuları/yönlendiricileri hedefler.)

Mimariler: amd64 · 386 · arm64 (aarch64) · armv7 · armv6 · armv5 · s390x.

AmneziaWG doğrudan panel ikili dosyasının (binary) kendi içine gömülüdür (Bu fork'ta ne farklı bölümüne bakın) — çekirdek modülü yok, ayrı bir kurulum adımı yok, dağıtıma özgü bir kurulum yok.

Veritabanı Seçenekleri

3X-UI kurulum sırasında seçilebilecek iki arka uç (backend) destekler:

  • SQLite (varsayılan) — /etc/x-ui/x-ui.db konumunda tek bir dosya. Kurulum gerektirmez, küçük ve orta ölçekli dağıtımlar için idealdir.
  • PostgreSQL — Yüksek kullanıcı sayıları veya çoklu düğüm (multi-node) kurulumları için önerilir. Yükleyici sizin için yerel olarak PostgreSQL kurabilir veya mevcut bir sunucuya DSN bağlantısı kabul edebilir.

Çalışma anında veritabanı türü ortam değişkenleri (environment variables) ile seçilir (yükleyici bunları sizin için /etc/default/x-ui dosyasına yazar):

XUI_DB_TYPE=postgres
XUI_DB_DSN=postgres://xui:password@127.0.0.1:5432/xui?sslmode=disable

Mevcut bir SQLite Kurulumunu PostgreSQL'e Taşıma

x-ui migrate-db --dsn "postgres://xui:password@127.0.0.1:5432/xui?sslmode=disable"
# ardından /etc/default/x-ui içindeki XUI_DB_TYPE ve XUI_DB_DSN değerlerini ayarlayıp yeniden başlatın:
systemctl restart x-ui

Kaynak SQLite dosyasına dokunulmaz; yeni veritabanının düzgün çalıştığını doğruladıktan sonra eski SQLite dosyasını manuel olarak silebilirsiniz.

Ortam Değişkenleri (Environment Variables)

Değişken Açıklama Varsayılan
XUI_DB_TYPE Veritabanı türü: sqlite veya postgres sqlite
XUI_DB_DSN PostgreSQL bağlantı dizesi (eğer XUI_DB_TYPE=postgres ise)
XUI_DB_FOLDER SQLite veritabanı dizini /etc/x-ui
XUI_DB_MAX_OPEN_CONNS Maksimum açık bağlantı sayısı (PostgreSQL havuzu)
XUI_DB_MAX_IDLE_CONNS Maksimum boşta bekleme bağlantısı (PostgreSQL havuzu)
XUI_INIT_WEB_BASE_PATH Web paneli için başlangıç URI yolu /
XUI_ENABLE_FAIL2BAN Fail2ban tabanlı IP limit uygulamasını etkinleştir true
XUI_LOG_LEVEL Günlük (Log) ayrıntı seviyesi (debug, info, warning, error) info
XUI_DEBUG Hata ayıklama (debug) modunu etkinleştir false
XUI_TUNNEL_HEALTH_MONITOR Tünel sağlık izleyicisini etkinleştir (bir URL'yi yoklar ve tekrarlanan başarısızlıklardan sonra xray'i yeniden başlatır; yeniden başlatma tüm istemcilerin bağlantısını düşürür) false
XUI_TUNNEL_HEALTH_PROXY Yoklamanın gönderildiği proxy; yoklamanın tüneli test etmesi için bunu yerel bir xray gelen bağlantısına yönlendirin (ör. socks5://127.0.0.1:1080). Boş bırakılırsa yoklama yalnızca ana makine bağlantısını kontrol eder
XUI_TUNNEL_HEALTH_URL Tünel sağlığı için yoklanan URL https://www.cloudflare.com/cdn-cgi/trace
XUI_TUNNEL_HEALTH_INTERVAL Yoklamalar arasındaki aralık 30s
XUI_TUNNEL_HEALTH_TIMEOUT Yoklama başına zaman aşımı 10s
XUI_TUNNEL_HEALTH_FAILURES Yeniden başlatma tetiklenmeden önceki ardışık başarısızlık sayısı 3
XUI_TUNNEL_HEALTH_COOLDOWN Ardışık yeniden başlatmalar arasındaki minimum gecikme 5m

Desteklenen Diller

Panel arayüzü 13 farklı dilde mevcuttur:

İngilizce · Farsça · Arapça · Çince (Basitleştirilmiş) · Çince (Geleneksel) · İspanyolca · Rusça · Ukraynaca · Türkçe · Vietnamca · Japonca · Endonezce · Portekizce (Brezilya)

Geliştirici Notları

Bu kişisel bir fork'tur ve dış katkıda bulunanlar aramamaktadır; ancak siz kendiniz bu kod tabanı üzerinde çalışıyorsanız CONTRIBUTING.md hâlâ yerel bir geliştirme ortamı kurmak için (Go/Node sürümleri, CGo için gereken C derleyicisi, build/lint/test komutları) ayrıntılı ve yararlı talimatlar içermektedir.

Atıf

Bu fork tamamen MHSanaei/3x-ui üzerine inşa edilmiştir — panelin tamamı, çoklu protokol desteği ve altta yatan mimari onların eseridir; AmneziaWG desteği burada eklenen tek şeydir. Orijinal projeyi faydalı bulduysanız, orijinal yazarın destek bağlantıları bunun için hâlâ doğru yerdir:

Bana Bir Kahve Ismarla
NOWPayments üzerinden Kripto Bağış Butonu

Bu fork'taki AmneziaWG uygulaması şunlardan alınmış/ilham almıştır:

  • amnezia-vpn/amneziawg-go — bu forkun, aşağıdaki eski çekirdek-modülü tabanlı arka ucun yerine, doğrudan panel süreci içine, bir gVisor ağ yığını üzerinden gömdüğü kullanıcı alanı AmneziaWG uygulaması.
  • MHSanaei/3x-ui#6086 — orijinal projeye karşı açılan orijinal AmneziaWG pull request'i (Docker sidecar yaklaşımı); bu fork onun şema/ön yüz (frontend) yapısını yeniden kullanır.
  • coinman-dev/3ax-ui — üretimde zaten yerel AmneziaWG çalıştıran bağımsız bir fork; bu fork'un bu yeniden yazımdan önceki çekirdek modülü tabanlı (awg-quick) yöneticisi ve AmneziaWG 2.0 gizleme parametresi üreticisi onun awg/ paketinden alınmıştı.

Özel Teşekkürler

  • alireza0
  • Iran v2ray rules (Lisans: GPL-3.0): Geliştirilmiş v2ray/xray ve v2ray/xray-clients yönlendirme (routing) kuralları; yerleşik İran alan adları ile güvenlik ve reklam engelleme odaklıdır.
  • Russia v2ray rules (Lisans: GPL-3.0): Bu depo, Rusya'daki engellenen alan adları ve adreslere dayalı otomatik olarak güncellenen V2Ray yönlendirme kurallarını içerir.

Topluluk Araçları

3x-ui çevresindeki topluluk tarafından oluşturulmuş araçlar ve entegrasyonlar.

  • terraform-provider-3x-ui (Lisans: MIT): Gelen bağlantılarnı, kullanıcıları, panel ayarlarını ve Xray yapılandırmasını Terraform / OpenTofu ile kod olarak (as code) yönetin.