Skip to content

Toxpox/GSB-WiFi-AutoLogin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛜 GSB WiFi AutoLogin

FOSSA Status FOSSA Status

Version License: GPLv3 Platform Rust

KYK yurtlarında kullanılan GSB WiFi ağına otomatik giriş yapan modern masaüstü uygulaması.
Rust + Tauri v2 ile geliştirilmiştir.


Preview

GSB WiFi AutoLogin — giriş, bağlantı tanılama ve bağlantı aktif ekranları

✨ Özellikler

  • Otomatik Giriş: Uygulama açılışında kayıtlı profille kendiliğinden bağlanma; tek tıkla manuel giriş her zaman mümkün.
  • 🖥️ Sistem Tepsisi: Pencere kapatılınca tepsiye küçülme; tepsi menüsünden Bağlan / Çıkış Yap / Pencereyi Göster; bağlantı durumu tepsi ipucunda.
  • 🚀 Başlangıçta Çalışma: Windows açılışında sessizce (pencere açmadan, tepsiden) başlama seçeneği.
  • 🔁 Otomatik Yeniden Bağlanma: Wi-Fi bağlandığı an olay tabanlı oturum kontrolü (Windows ağ değişikliği bildirimi); oturum düştüyse son kimlik bilgileriyle kendiliğinden yeniden giriş. 12 saatlik periyodik kontrol güvenlik ağı olarak kalır.
  • 📡 GSB Ağı Algılama: GSB ağında değilken uyarı; gereksiz giriş denemeleri yapılmaz.
  • 🆕 Otomatik Güncelleme: Açılışta arka planda sürüm kontrolü; güncelleme varsa pencerenin üstünde yeşil bir bar belirir, tek tıkla imzalı güncelleme indirilip kurulur ve uygulama yeniden başlar (installer sürümünde; portable'da indirme sayfası açılır).
  • 🔔 Kota Bildirimleri: Kota %20'nin altına düşünce veya dolunca Windows bildirimi; bağlantı koptuğunda da haber verir.
  • 📊 Kota Takibi: Kalan kota, yüzde göstergesi, kullanılan kota ve yenilenme tarihi.
  • 📈 Kota Geçmişi & Tahmin: Günlük kota kayıtlarından mini grafik (inline SVG) ve günlük tüketime göre "bu hızla ~N gün sonra biter" tükenme tahmini.
  • ♻️ Bilgileri Yenile: Bağlı ekranda tek tıkla, yeniden giriş yapmadan kota ve kullanıcı bilgilerini güncelleme.
  • 👥 Çoklu Profil: Birden fazla hesabı yerelde kaydetme, takma ad verme, seçme ve silme.
  • ⚙️ Ayarlar Paneli: Otomatik giriş, tepsiye küçülme, başlangıçta çalışma, yeniden bağlanma ve bildirimler için kalıcı anahtarlar.
  • 📜 Sistem Günlüğü: Tüm adımlar log panelinde ve logs/uygulama.log dosyasında (otomatik rotasyonlu); "Klasörü Aç" ile erişim.
  • 🩺 Bağlantı Tanılama: Tek tıkla aşamalı self-test (GSB ağı, DNS, TCP :443, internet/captive durumu, portal erişimi, kayıtlı oturum); sessiz giriş hatalarını somut teşhise çevirir.
  • 🔒 Şifreleme: Kullanıcı bilgilerini cihaza bağlı olarak şifreli saklama: Windows DPAPI (oturum açan kullanıcı hesabına bağlı) önceliklidir, kullanılamazsa AES-GCM'e düşülür. Eski AES kayıtları okunur ve ilk girişte DPAPI'ye taşınır.
  • 🚪 Oturum Yönetimi: Aktif oturumu sonlandırma ve maksimum cihaz durumunda önceki oturumu düşürme.
  • 🔄 Yeniden Deneme: Ağ hatalarında exponential backoff ile kontrollü tekrar deneme.
  • 🎨 Modern Arayüz: Koyu tema, kompakt giriş ekranı ve akıcı ekran geçişleri.

📥 İndirme

En güncel sürümü Releases sayfasından indirebilirsiniz.

Uygulama açılışta yeni sürümü arka planda kontrol eder. Güncelleme varsa pencerenin üstünde yeşil bir bar belirir: installer (NSIS) kurulumunda tek tıkla imzalı güncelleme indirilir, kurulur ve uygulama yeniden başlar; portable sürümde bar GitHub release sayfasını açar.

ℹ️ Otomatik güncelleme v1.8.0 ile geldi: v1.8.0'ı bir kez elle kurmanız gerekir, sonraki sürümler uygulama içinden güncellenir.

📦 Installer vs 🚀 Portable

Özellik 📦 Installer (.exe setup) 🚀 Portable (.exe)
Kurulum Klasik kurulum sihirbazı ile sisteminize kurulur. Kurulum gerektirmez, indirip doğrudan çalıştırın.
Konum AppData\Local dizini altına yerleşir. Herhangi bir klasörden veya USB bellekten çalışır.
Başlat Menüsü Kısayol oluşturur, kolay erişim sağlar. Kısayol oluşturmaz, bağımsızdır.
Kaldırma Windows "Program Ekle/Kaldır" menüsünden kaldırılır. Sadece dosyayı silmek yeterlidir.
Güncelleme Uygulama içinden otomatik (yeşil güncelleme barı). Eski dosya silinip yenisi ile değiştirilir.
Başlangıçta çalışma Desteklenir. Desteklenir (exe taşınırsa kayıt yeniden yapılmalı).

💡 Not: Her iki sürüm de aynı uygulama mantığını kullanır. Kullanım alışkanlığınıza göre tercih yapabilirsiniz.


⚠️ Güvenlik Uyarısı

Bu uygulama yalnızca GSB/KYK captive portali için tasarlanmıştır.

Kimlik bilgileriniz sadece kendi bilgisayarınızda saklanır. Kayıtlı profiller user_config.json içinde şifrelenir: öncelikle Windows DPAPI (şifre çözme, oturum açan Windows kullanıcı hesabına bağlıdır) kullanılır; DPAPI kullanılamazsa makine adı + işletim sistemi kullanıcı adından türetilen anahtarla AES-GCM'e düşülür. Daha önce AES ile kaydedilmiş profiller okunmaya devam eder ve ilk girişte DPAPI'ye taşınır. Bilgiler hiçbir dış sunucuya gönderilmez. GitHub sürüm kontrolü yalnızca release bilgisi almak için GitHub API'ye istek atar; kullanıcı adı, şifre veya profil bilgisi bu isteğe eklenmez.

Giriş istekleri backend tarafında doğrulanır ve yalnızca wifi.gsb.gov.tr adresine gönderilebilir; kimlik bilgilerinin başka bir adrese iletilmesi mümkün değildir.

SSL doğrulaması, GSB captive portal akışının yönlendirme gereksinimleri nedeniyle portal istemcisinde devre dışıdır. GitHub sürüm kontrolü ise ayrı ve normal TLS doğrulamalı HTTP istemcisiyle yapılır.

Otomatik güncellemeler kriptografik olarak imzalıdır (minisign): uygulama yalnızca gömülü genel anahtarla doğrulanan güncellemeleri kurar; imzasız veya değiştirilmiş bir paket kurulmaz.


🛠️ Geliştirme

Projeyi kendi bilgisayarınızda derlemek veya geliştirmek için:

Gereksinimler

  • Rust stable sürüm
  • Node.js opsiyonel, frontend sözdizimi kontrolleri için
  • Windows 10 veya Windows 11
  • Tauri CLI (cargo install tauri-cli --version "^2" veya mevcut eşdeğer kurulum)

Derleme Adımları

# Depoyu klonlayın
git clone https://github.com/Toxpox/GSB-WiFi-AutoLogin.git

# Proje dizinine geçin
cd GSB-WiFi-AutoLogin/src-tauri

# Uygulamayı derleyin
cargo tauri build

📂 Çıktı Yolları:

  • Installer: src-tauri/target/release/bundle/nsis/
  • Portable exe: src-tauri/target/release/

Kontrol Komutları

cd src-tauri
cargo fmt --check
cargo test
cargo clippy -- -D warnings

Frontend sözdizimi için:

node --check frontend/js/app.js
node --check frontend/js/giris.js
node --check frontend/js/log.js
node --check frontend/js/hosgeldin.js

💻 Teknolojiler

Teknoloji Kullanım Alanı
Rust Backend mantığı, ağ akışı, profil yönetimi ve şifreleme
Tauri v2 Windows masaüstü uygulama çerçevesi
HTML/CSS/JS Etkileşimli frontend arayüzü
AES-GCM Yerel kullanıcı bilgisi şifreleme
reqwest Captive portal, çıkış işlemi ve GitHub Releases API istekleri
GitHub Releases API Yeni sürüm kontrolü ve otomatik güncelleme dağıtımı
tauri-plugin-updater İmzalı uygulama içi otomatik güncelleme
windows (windows-rs) DPAPI ile kimlik şifreleme ve olay tabanlı yeniden bağlanma (IP arayüz değişikliği bildirimi)

📝 Sürüm Geçmişi

Tüm değişiklikler için CHANGELOG.md dosyasına bakabilirsiniz.


📄 Lisans

Copyright © 2025 Toxpox.
Bu proje GNU General Public License v3.0 (GPLv3) ile lisanslanmıştır. Detaylar için LICENSE dosyasına göz atabilirsiniz.

About

Bu uygulama, GSB yurtlarında kullanılan internete otomatik giriş yapılmasını sağlar. Login ekranının yüklenmesini beklemenize gerek kalmaz. Kod yerel olarak çalışmakta olup herhangi bir şekilde verilerinizi dışarıya aktarmaz.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors