Windows
colitu/windowsWindows 10 ve 11 uygulaması: arayüz, bağlantı yönetimi, güncelleyici ve kurulum paketi.
git clone https://github.com/colitu/windows.git
cd windows\src
dotnet build ColituVPN.sln -c ReleaseKaynak kodunu GitHub'da görüntüle ↗Android · Android TV
colitu/androidTelefon, tablet ve televizyon uygulaması: arayüz, protokol seçimi, VPN servisi ve güncelleyici.
git clone https://github.com/colitu/android.git
cd android/android
./gradlew assemblePlaystoreDebugKaynak kodunu GitHub'da görüntüle ↗iPhone · iPad
colitu/iosiPhone ve iPad uygulaması: arayüz, protokol seçimi, Network Extension tüneli ve hesap akışı.
git clone https://github.com/colitu/ios.git
cd ios
flutter pub get && flutter testKaynak kodunu GitHub'da görüntüle ↗Linux · Beta
colitu/linuxLinux masaüstü uygulaması: arayüz, bağlantı yönetimi, nftables kill switch ve .deb/.rpm paketleri.
git clone https://github.com/colitu/linux.git
cd linux/src
dotnet publish ColituVPN -c Release -r linux-x64Kaynak kodunu GitHub'da görüntüle ↗Chrome · Firefox
colitu/extensionChrome ve Firefox eklentisi: arayüz, oturum, proxy ayarları ve mağaza paketleri.
git clone https://github.com/colitu/extension.git
cd extension
npm test && npm run buildKaynak kodunu GitHub'da görüntüle ↗Neden açık kaynağız?
Bir VPN'i seçmek, internet trafiğinizi bir şirkete emanet etmek demektir. Bu güveni sözle değil, herkesin inceleyebileceği kodla kazanmak istiyoruz.
Bir VPN çok şey görür
VPN uygulaması cihazınızdaki tüm trafiğin geçtiği yerdir. Böyle bir yazılıma körü körüne güvenmek zorunda kalmamalısınız.
Uygulama tarafında kanıt
Kod açık olduğunda uygulamanın ne topladığını ve nereye gönderdiğini herkes görebilir. Sunucularda “kayıt tutmuyoruz” sözünü ise açık uygulama kodu kanıtlamaz; sunucuların ne yaptığını güvenlik belgesinde anlatıyoruz.
Daha çok göz, daha güvenli kod
Gizli kodda hatalar yıllarca fark edilmeden kalabilir. Açık kodu dünyanın her yerinden araştırmacılar inceleyebilir, sorunlar daha hızlı bulunur ve düzeltilir.
Size ait bir özgürlük
GPL-3.0 lisansı sayesinde kodu inceleyebilir, kendiniz derleyebilir, değiştirebilir ve paylaşabilirsiniz. Bu hak sizden geri alınamaz.
Kodda neleri doğrulayabilirsiniz?
- Uygulama sabit bir sunucu listesi içermez; bağlantı bilgileri hesabınıza özel olarak API'den gelir.
- Oturum anahtarları cihazda şifreli saklanır: Android'de Android Keystore, iOS'ta Keychain, Windows'ta DPAPI, Linux'ta makineye ve kullanıcıya bağlı bir anahtarla.
- Windows, Android ve Linux uygulamaları güncellemeyi yalnızca yayın bildiriminin ECDSA P-256 imzası doğrulanırsa ve paketin SHA-256 özeti bildirimle eşleşirse kurar.
- Hangi protokollerin nasıl denendiği ve bağlantının nasıl doğrulandığı kodda açıkça görülür.
- Uygulamanın API'ye gönderdiği her istek ve alan kodda tanımlıdır. Hiçbir uygulamada (Android, iOS, Windows, Linux) analiz, reklam veya hata raporlama kütüphanesi yoktur.
Neler açık, neler değil?
Açık kaynak konusunda net olmak istiyoruz. Kodu açık olan ve olmayan her şey:
- ✓Windows uygulamasıTamamı GitHub'daAçık
- ✓Android ve Android TV uygulamasıTamamı GitHub'daAçık
- ✓Linux uygulamasıTamamı GitHub'da; paketler GitHub Actions'ta derlenirAçık
- ✓Tarayıcı eklentisiTamamı GitHub'daAçık
- ✓iPhone ve iPad uygulamasıTamamı GitHub'da; TestFlight sürümleri Codemagic'te derlenirAçık
- —Sunucu altyapısı ve hesap sistemiKötüye kullanım ve saldırılara karşı korumayı zayıflatmamak için kapalı tutuluyor.Kapalı
Katkıda bulunun
Hata bildirimleri, çeviri düzeltmeleri ve iyileştirme önerileri GitHub üzerinden memnuniyetle karşılanır. Kendi sürümünüzü yayınlarsanız lütfen kendi adınızı ve logonuzu kullanın; Colitu adı ve logosu GPL kapsamında değildir.
Güvenlik açığı mı buldunuz?
Lütfen herkese açık bir issue açmayın; ayrıntıları security@colitu.com adresine gönderin. 3 iş günü içinde yanıt verir, 10 iş günü içinde ilk değerlendirmemizi paylaşırız. İyi niyetli araştırmalara karşı yasal işlem başlatmayız.
Kullandığımız açık kaynak projeler
Colitu uygulamaları, açık kaynak topluluğunun yıllardır geliştirdiği sağlam bileşenleri kullanır. Onlara teşekkür ederiz.
Açık kaynak, doğrulama ve denetim ayrı şeylerdir
Bugün neyi kanıtlayabildiğimiz ve neyi henüz kanıtlayamadığımız:
Dosya özeti (SHA-256)
VarAşağıdaki özetler, indirdiğiniz dosyanın bizim yayımladığımız dosyayla bit bit aynı olduğunu, yani yolda bozulmadığını veya değiştirilmediğini kanıtlar. Dosyanın etiketli koddan derlendiğini kanıtlamaz. Özetler colitu.com'daki yayın bildiriminden okunur; bu sayfa bildirimin imzasını kendisi doğrulamaz, bu yüzden GitHub sürümündeki değerle de karşılaştırın.
Yayıncı imzası
KısmenAndroid APK'ları Colitu'nun yayın anahtarıyla imzalanır; Android bir güncellemeyi yalnızca aynı imzayla kabul eder. Windows, Android ve Linux uygulamaları güncelleme bildirimini ECDSA P-256 imzasıyla doğrular. Windows kurulum dosyası henüz Authenticode ile imzalı değildir (Windows SmartScreen uyarı gösterebilir); Linux .deb ve .rpm paketleri GPG ile imzalı değildir. iPhone ve iPad sürümlerini Apple imzalar.
Yeniden üretilebilir derleme
Android, WindowsAndroid ve Windows uygulamalarında GitHub'daki etiketli koddan kendi derlediğiniz dosya bizimkiyle bit bit aynı çıkar; yayımlanan dosyanın o koddan derlendiğini bağımsız olarak kanıtlayabilirsiniz. iOS ve Linux derlemeleri henüz yeniden üretilebilir değildir.
Bağımsız denetim
Henüz yokUygulamalarımız ve altyapımız bağımsız bir güvenlik denetiminden veya sızma testinden geçmedi; tarihi belli değil. Bu sitedeki “açık kaynak” ifadeleri ve rozetleri bir denetim anlamına gelmez.
Sunucularda ne olduğu
Açık uygulama kodu, sunucularımızın ne yaptığını kanıtlamaz. Sunucu yazılımı ve hesap sistemi kapalı kaynaktır ve dışarıdan doğrulanamaz. Sunucuların neyi kaydedip neyi kaydetmediğini, verilerin nerede ve ne kadar tutulduğunu güvenlik belgesinde ve gizlilik politikasında yazıyoruz. Güvenlik belgesi · Gizlilik politikası
İndirdiğiniz dosyayı doğrulayın
colitu.com'daki her kurulum dosyası GitHub'daki bir sürüm etiketine ve o etiketin işaret ettiği commit'e bağlıdır. Aşağıdaki özetler, uygulamaların güncelleme sırasında kullandığı imzalı yayın bildiriminden okunur.
Windows · Sürüm 3.1.4
GitHub'daki sürüm ↗- Etiket
- v3.1.4
- Commit
- d094ee5ae707459db12856515bb1885119965338
- ColituVPN-Setup-3.1.4-x64.exe
- SHA-256 3d58040d33883ea9cc0cc53824700688af02b8eee1e60b9e5f191e70ce7d2a9a
Yayın bildirimi ECDSA P-256 ile imzalıdır; uygulama imzayı ve dosya özetini doğrulamadan güncelleme kurmaz.
Android · Sürüm 3.1.2
GitHub'daki sürüm ↗- Etiket
- v3.1.2
- Commit
- 139d8de51bdc0ebe00f5e81abd07f308a56fb184
- Colitu-3.1.2.apk
- SHA-256 3a9a839dc93ea5bc726d23ab1d3492e46a66a72da9eae72945eb2b00a8841787
- Colitu-3.1.2-arm64-v8a.apk
- SHA-256 15781c5fb0b148b2c4bab89548a6f2b150da154953315d373cf81a190b4e0cd8
- Colitu-3.1.2-armeabi-v7a.apk
- SHA-256 8f8bd7ed8ca982b2875493c9db12b5089351395a5bd9342588b3ece3220f478b
- İmza sertifikası
- SHA-256 900e364616e5fce83766310f74bd06e4743a6936460a9e108edd096dfb5e82fc
Yayın bildirimi ECDSA P-256 ile imzalıdır. Uygulama imzayı doğrular, güncellemeyi kurmadan önce APK özetini bildirimle karşılaştırır ve APK'nın imza sertifikasının yüklü uygulamanınkiyle aynı olduğunu kontrol eder; eski sürümleri kurmaz. Bu sayfadaki imza sertifikası özeti, bildirimin imzalı kısmında yer almaz; APK'daki sertifikayı apksigner ile kendiniz kontrol edin.
Linux · Sürüm 1.7.5
GitHub'daki sürüm ↗- Etiket
- v1.7.5
- Commit
- 0a40ec778ed19ee337e4cd6c809ab02b81e5863e
- colitu-vpn_1.7.5_amd64.deb
- SHA-256 e33bf133b4cf6c56d00afa0d0aa3e076a90f656b48b5b456f9a6aa8efb95f1a6
- colitu-vpn_1.7.5_arm64.deb
- SHA-256 0cb175bd76af5f2aa2f384fb5a63da5a1e9872d7bf509abf4e31c8995d591ddf
- colitu-vpn-1.7.5-1.x86_64.rpm
- SHA-256 44fc743af6cc3695c745ab522f019d32e4aaf2dde056ebf9db8423f565d49cec
- colitu-vpn-1.7.5-1.aarch64.rpm
- SHA-256 132b74268b9b6e5f9e3b38501529662f0bc2b7ebe87ad596d499b09bda43b0ca
- colitu-vpn-1.7.5-linux-x64.tar.gz
- SHA-256 eb20314fc6177d8e13345fa8b5669858ebfbfb5f0a7d16df1b852a38ac11a9bd
- colitu-vpn-1.7.5-linux-arm64.tar.gz
- SHA-256 a388838e24852bca32d96cd33711a34006066761d430741715991a854fc832d1
Yayın bildirimi ECDSA P-256 ile imzalıdır; uygulama imzayı ve dosya özetini doğrulamadan güncelleme kurmaz.
Kendiniz nasıl kontrol edersiniz?
# Windows (PowerShell)
Get-FileHash .\ColituVPN-Setup-*-x64.exe -Algorithm SHA256
# Linux / macOS
sha256sum Colitu-*.apk
sha256sum colitu-vpn_*_amd64.deb
# Android signing certificate
apksigner verify --print-certs Colitu-*.apkÇıkan özet bu sayfadaki ve GitHub sürümündeki değerle aynı olmalı. Android ve Windows dosyalarının etiketli koddan derlendiğini de aşağıdaki yeniden üretilebilir derleme adımlarıyla kanıtlayabilirsiniz; iOS ve Linux'ta aynı özet yalnızca dosyanın bizim yayımladığımız dosya olduğunu kanıtlar.
iPhone ve iPad sürümleri Apple tarafından imzalanır ve TestFlight üzerinden kurulur; her sürümün etiketli commit'i GitHub'dadır.
Yeniden üretilebilir derleme nedir, ne işe yarar?
Açık kaynak kod, uygulamanın ne yapmak üzere yazıldığını gösterir. Yeniden üretilebilir derleme ise indirdiğiniz dosyanın gerçekten o koddan çıktığını kanıtlar: aynı koddan, aynı araçlarla kim derlerse derlesin bit bit aynı dosya çıkar.
Durum: Android ve Windows uygulamaları yeniden üretilebilir derlenir. iOS ve Linux derlemeleri henüz değil.
Derleme bilgisayarına güvenmek gerekmez
Kaynak kod temiz olsa bile, derlendiği bilgisayar ele geçirilirse dosyaya fark edilmeden kod eklenebilir. Herkes aynı koddan aynı dosyayı üretebildiğinde böyle bir ekleme hemen ortaya çıkar.
Bize de körü körüne güvenmeyin
Yayımladığımız dosyanın GitHub'daki koddan fazlasını içermediğini kendi bilgisayarınızda kanıtlayabilirsiniz. Bir çalışanın ya da baskı altındaki birinin gizlice hazırladığı farklı bir sürüm de böyle fark edilir.
Tedarik zinciri saldırılarına karşı
Uygulama başka projelerin kütüphaneleriyle derlenir. Her kütüphane sürümü ve özeti kilit dosyalarında sabittir; hazır bileşenler SHA-256 ile doğrulanır. Bir parça sessizce değişirse derleme durur.
Her değişiklikte otomatik kontrol
GitHub'daki otomatik derleme, Colitu'nun kendi bileşenlerini her değişiklikte kaynak koddan yeniden derler ve depodaki dosyalarla bit bit karşılaştırır: Android için Linux'ta, Windows için Windows'ta.
Nasıl sağlıyoruz?
- Aynı araçlar: Gradle, JDK, Android NDK, .NET SDK, Go ve Inno Setup tam sürüm numarasıyla sabitlenir.
- Aynı bağımlılıklar: her kütüphane ve içeriğinin özeti kilit dosyalarında kayıtlıdır; CI kilitli modda çalışır.
- Derleme anı ve klasörü dosyaya girmez: tarih yerine commit zamanı, klasör yolları yerine göreli yollar kullanılır.
- Her bilgisayarda aynı kaynak: satır sonları Windows'ta da Linux'taki gibidir; farklıysa yayın derlemesi durur.
- Colitu'nun kendi bileşenleri (Adaptive Connect motoru, CSL istemcisi, tünel köprüsü hev-socks5-tunnel) sabitlenmiş bir commit'ten kaynak koddan derlenir.
Neyi kapsamaz?
- Tek bir dosya kaynak kodda yok: colitu-build.json. İçinde engellemelere karşı kullanılan yedek API adresleri (Windows'ta ayrıca reklam engelleme DNS sunucuları) bulunur. Engellenmeleri zorlaşsın diye GitHub'a koymuyoruz; yayımlanan uygulamanın içinde okunabilir durumdadır. Doğrularken bu dosyayı kendi kopyanızdan alırsınız, gerisi bit bit aynı çıkar.
- Xray çekirdeği, sing-box, wintun ve coğrafi veri dosyaları üreticilerinin resmi sürümleridir. Onları biz derlemiyoruz; SHA-256 özetleriyle sabitliyoruz.
- Google Play sürümünü Google her cihaz için yeniden paketleyip imzalar. Bit bit karşılaştırma colitu.com'daki APK'larla yapılır.
- iPhone, iPad ve Linux derlemeleri henüz yeniden üretilebilir değil.
- Yeniden üretilebilir derleme, kodun güvenli olduğunu değil, dosyanın o koddan çıktığını kanıtlar. Bağımsız bir güvenlik denetiminin yerini tutmaz.
Kendiniz deneyin
# Android (JDK 21.0.12)
git clone https://github.com/colitu/android && cd android && git checkout v<version>
unzip -p Colitu_<version>_universal.apk colitu-build.json
cd android && COLITU_MIRRORS='<mirrors>' ./gradlew assembleDirectRelease
apksigcopier compare Colitu_<version>_arm64-v8a.apk \
--unsigned app/build/outputs/apk/direct/release/Colitu_<version>_arm64-v8a.apk
# Windows (PowerShell 7, .NET SDK from global.json, Inno Setup 6.7.3)
git clone https://github.com/colitu/windows; cd windows; git checkout v<version>
pwsh scripts/fetch-cores.ps1; pwsh scripts/build-sidecars.ps1
$values = "C:\Program Files\Colitu VPN\colitu-build.json"
pwsh scripts/build-installer.ps1 -Version <version> -SkipManifest -BuildValuesPath $values
Get-FileHash artifacts\installer\ColituVPN-Setup-<version>-x64.exeAndroid'de imza dışındaki her bayt, Windows'ta kurulum dosyasının tamamı aynı çıkmalı. Ayrıntılar ve araç sürümleri her deponun rehberinde: Android ↗ · Windows ↗
Kodu okuyun, sonra karar verin.
Açık kaynak uygulamalarımızı ücretsiz planla kullanın: her ay 1 GB.
