Skip to content
This repository was archived by the owner on Aug 14, 2026. It is now read-only.

Repository files navigation

🛑 PROIECT DEZACTIVAT DEFINITIV & ARHIVAT

Warning

Dezvoltarea, mentenanța și rularea live a acestei platforme au fost oprite definitiv la data de 29 Iunie 2026.

Această decizie a fost luată în urma solicitării oficiale transmise în scris de către Serviciul de Comunicații și Tehnologia Informației (SCTI) al Universității „Ștefan cel Mare” din Suceava. Universitatea a izolat sistemele legacy de gestiune a școlarității (PeopleSoft / scolaritate.usv.ro) într-un spațiu privat neaccesibil din exterior și lucrează la implementarea propriei platforme numite „Smart UMS”.

Acest repository este marcat ca arhivă istorică (Read-Only) și este păstrat public exclusiv ca portofoliu personal și Proof of Concept (PoC) open-source de succes care a deservit peste 40.000 de vizitatori unici (identificați la nivel de IP și dispozitiv conform Cloudflare) și a procesat peste 3,1 milioane de cereri HTTP în doar o lună de funcționare (cu vârfuri de peste 3.700 de utilizatori activi zilnic). Versiunea rulată pe domeniul noteusv.tech a fost oprită local, servind acum doar o pagină statică permanentă de atenționare, orice interogare sau conexiune activă spre sistemele universității fiind complet eliminată.


USV Portal 🎓

Licență: MIT Next.js Docker Caddy OpenVPN

Portal neoficial pentru accesarea platformei scolaritate.usv.ro din orice browser modern, fără VPN local.

Dezvoltat de: Vichiriuc Adrian (@28VYK)

→ noteusv.tech — dezactivat definitiv, servește doar pagina de notificare.


⚠️ Disclaimer

Acest proiect nu este afiliat oficial cu Universitatea „Ștefan cel Mare" Suceava. Este o soluție independentă (Proof of Concept) creată de un student, utilizată pe propria răspundere.

Platforma funcționează ca reverse proxy — cererile (inclusiv credențialele) trec temporar prin serverul nostru, exclusiv în memorie, fără stocare persistentă. Codul este complet open-source.

Politică de Confidențialitate · Politică de Securitate · Ghid de Contribuție · Credite & Autori


🔴 Problema

scolaritate.usv.ro folosește TLS 1.0 — blocat de toate browserele moderne:

Chrome  → ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Firefox → SSL_ERROR_NO_CYPHER_OVERLAP

USV Portal rezolvă asta intermediind conexiunea pe server (via VPN intern USV), expunând o interfață modernă și accesibilă.


🚀 Rulare locală

git clone https://github.com/28VYK/USV-PROXY.git
cd USV-PROXY

# Configurează .env cu credentialele VPN (vezi .env.example)
# Adaugă fișierul usv2.ovpn în vpn/

docker compose up --build -d

Notă: Certificatele SSL (certs/) și fișierele private (vpn/, .env) nu sunt incluse în repository.


🏗️ Arhitectură

flowchart LR
    A[Browser] -->|HTTPS| B[Cloudflare]
    B --> C[Caddy :8080]
    C --> D[usv-vpn :3000]
    D -->|OpenVPN Tunnel| E[scolaritate.usv.ro]
    style D fill:#0066FF,stroke:#333,stroke-width:2px,color:#fff
    style C fill:#00E5FF,stroke:#333,stroke-width:2px
Loading
Serviciu Rol Tehnologie
Caddy Reverse proxy cu TLS (Cloudflare Origin CA) caddy:2-alpine
Next.js 14 Frontend + API Routes (proxy logic) — rulează ca user non-root Next.js
usv-vpn (sidecar) Container izolat: OpenVPN + NET_ADMIN + /dev/net/tun openvpn

🛠️ Stack

  • Next.js 14 — framework + API routes
  • Caddy 2 — TLS termination
  • Docker + OpenVPN — containerizare & VPN

🌐 Suport Multilingv (Internationalization)

Aplicația oferă suport complet pentru limba Română (ro) și Engleză (en) folosind next-intl.

  • Clean URLs: Schimbarea limbii se face fără adăugarea de prefixe în URL (cum ar fi /ro sau /en), menținând adrese curate (ex: / sau /privacy).
  • Detecție Automată: O componentă de tip Middleware (middleware.ts) detectează preferințele de limbă ale browserului utilizatorului (din antetul Accept-Language) la prima vizită și setează automat cookie-ul NEXT_LOCALE.
  • Persistență: Limba selectată persistă printr-un cookie de sesiune și poate fi schimbată oricând din header-ul aplicației.

🤝 Contribuie la proiect

Proiectul este 100% open-source și dezvoltat din pasiune în timpul liber. Orice ajutor este binevenit! Dacă vrei să contribui cu cod, să raportezi un bug sau să îmbunătățești documentația, te rugăm să citești mai întâi Ghidul de Contribuție pentru detalii legate de rularea locală cu Docker și stilul de cod.


☕ Susține proiectul

Serverul VPS are costuri lunare. Dacă platforma îți este utilă:

→ Donează pe Revolut


⚖️ Licență & Credite

Acest proiect este distribuit în mod deschis sub licența MIT. Întregul cod sursă și designul platformei sunt dezvoltate de Vichiriuc Adrian (28VYK).

Vezi fișierele LICENSE și .github/CREDITS.md pentru textul juridic complet și lista detaliată a creditelor de dezvoltare.

About

Reverse proxy neoficial și modern pentru platforma scolaritate.usv.ro, oferind acces securizat de pe orice browser modern, fără VPN local.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

7 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages