always one step ahead
GR EN
🔍

AtmaJyoti CMS technical specifications

// single-file · zero-dependency · self-hosted

Ένα αρχείο. Καμία εξάρτηση. Πλήρης έλεγχος.

Το AtmaJyoti CMS είναι ένα ολόκληρο σύστημα διαχείρισης περιεχομένου, κρατήσεων, στατιστικών και ασφάλειας μέσα σε ένα μόνο server.js — χωρίς npm packages, χωρίς βάση δεδομένων, χωρίς build step. Τρέχει σε Node.js πάνω σε Windows / IIS / Plesk και είναι αναγνώσιμο από άκρη σε άκρη.

1
αρχείο server.js
0
npm εξαρτήσεις
600+
αυτόματα tests
JSON
flat-file storage
01

Αρχιτεκτονική χωρίς επιφάνεια επίθεσης

Κάθε γραμμή είναι δική σου. Τίποτα δεν έρχεται από τρίτους.

κάθε αίτημα περνά από διαδοχικά φίλτρα πριν φτάσει στο περιεχόμενο
→πραγματική IP σύνδεσηςtrusted-proxy μοντέλο · ψεύτικα headers αγνοούνται
→connection-rate limitersliding window ανά IP · 429 σε flood
→ban list · τοπική + κοινήκλιμακωτή διάρκεια · κοινή για όλα τα sites του server
→geo-block · datacenter · bot verificationανά χώρα · επίσημα δίκτυα Google/Bing/Apple
→scanner trap · 404 burstsυπογραφές επιθέσεων → άμεση καταγραφή & ban
→CSRF · session · 2FA · ρόλοιconstant-time · HttpOnly · SameSite · κεντρικό authorization gate
→router → server.jsflat-file JSON · in-memory index & cache
→περιεχόμενο + admin UIσελίδες · blog · ραντεβού · newsletter · στατιστικά
zero supply-chain risk

Μηδέν npm dependencies

Καμία τρίτη βιβλιοθήκη σημαίνει κανένα supply-chain κενό — το πρόβλημα που έχει χτυπήσει χιλιάδες Node projects. Ό,τι τρέχει, το βλέπεις.

npm ls → (empty)
auditable

Ένα αναγνώσιμο αρχείο

Ολόκληρο το σύστημα ζει σε ένα server.js. Δεν χρειάζεσαι εργαλεία, bundlers ή γνώση framework για να το ελέγξεις ή να το αλλάξεις.

1 file · fully auditable
no database

Flat-file JSON storage

Δεδομένα σε απλά JSON αρχεία. Backup = αντιγραφή φακέλου. Καμία επιφάνεια SQL injection, καμία υπηρεσία βάσης να συντηρήσεις.

data/*.json + in-memory index
tested & reviewed

600+ tests, δύο στάδια ελέγχου

Το test suite τρέχει με το ενσωματωμένο node:test — χωρίς Jest, χωρίς Mocha. Κάθε αλλαγή στην ασφάλεια περνά και από ανεξάρτητο δεύτερο έλεγχο πριν παραδοθεί.

node test.js → 0 fail
02

Security stack επιπέδου enterprise

Δοκιμασμένο σε production ενάντια σε συνεχείς, πραγματικές επιθέσεις.

Firewall & αυτόματη άμυνα
[✓]
Auto-ban (fail2ban-style)Συσσώρευση παραβάσεων → αυτόματο ban + email alert, με αναλυτική αιτία.
[✓]
Κλιμακωτή διάρκεια banΕπαναλαμβανόμενοι επιτιθέμενοι μπλοκάρονται για περισσότερο, μέχρι μόνιμα — με πλήρες ιστορικό ανά IP.
[✓]
Scanner trap & secret probesΌποιος ψάχνει κωδικούς, κλειδιά ή γνωστά κενά μπλοκάρεται με το πρώτο αίτημα.
[✓]
Datacenter-awareΜηδενική ανοχή για ύποπτη δραστηριότητα από cloud / hosting δίκτυα.
[✓]
Κοινή λίστα ban (multi-site)Ban σε ένα site ισχύει σε όλα τα sites του server σε δευτερόλεπτα — με ελάχιστα δικαιώματα αρχείων.
[✓]
Επαλήθευση crawlersGooglebot / Bingbot / Applebot επαληθεύονται (DNS + επίσημα δίκτυα) — οι ψεύτικοι όχι.
[✓]
Geo-IP country blockingΜπλοκάρισμα ανά χώρα, με ξεχωριστή λίστα για το admin και προαιρετικό fail-closed.
[✓]
Connection-rate limitingSliding window ανά IP· άμεσο 429 σε flood/DoS.
Ταυτότητα & πρόσβαση
[✓]
2FA (TOTP)QR code, κωδικοί ανάκτησης και αξιόπιστες συσκευές.
[✓]
scrypt password hashingMemory-hard hashing, constant-time verify, πολιτική ισχύος κωδικών.
[✓]
Session hardeningΜέγιστη διάρκεια, σύνδεση με συσκευή, αναγκαστική αποσύνδεση — κλεμμένο cookie δεν ζει για πάντα.
[✓]
Ρόλοι & κεντρικό authorizationΚάθε admin endpoint ελέγχεται κεντρικά — όχι μόνο κρυμμένα κουμπιά στο UI.
[✓]
Brute-force lockout + honeypotΚλείδωμα μετά από αποτυχίες, με παγίδα για bots στις φόρμες.
[✓]
Login alerts (success & fail)Email με χρήστη, ώρα, IP, χώρα — άμεση ανίχνευση εισβολής.
Εφαρμογή & δεδομένα
[✓]
CSRF σε κάθε admin POSTPer-session token με constant-time σύγκριση — και στα uploads.
[✓]
XSS defence in depthEscaping παντού, καθαρισμός HTML για μη-διαχειριστές, CSP και sandbox για SVG.
[✓]
File integrity monitoringΑποτύπωμα SHA-256 του κώδικα + σάρωση για web-shells, με αποδεικτικά αντίγραφα.
[✓]
Path-traversal & zip-slip guardsΈλεγχος σε pages, uploads, static, backup restore.
[✓]
Upload triple-validationExtension whitelist + magic bytes + size limit.
[✓]
Security headers & security.txtCSP, COOP, CORP, X-Frame-Options, nosniff — και RFC 9116 security.txt.
[✓]
Audit trailActivity log με διαφορές ρυθμίσεων, security events ανά χώρα, εβδομαδιαία αναφορά ασφαλείας.
[✓]
Privacy by designΣτατιστικά server-side χωρίς JavaScript στον επισκέπτη· GDPR συγκατάθεση, εξαγωγή & αυτόματη διαγραφή.

«Δεν είναι πια απλώς ένα flat-file CMS. Το security & operations layer — firewall με κλιμακωτά bans, κοινή άμυνα πολλών sites, επαλήθευση crawlers, έλεγχος ακεραιότητας — είναι χαρακτηριστικά που συνήθως βρίσκεις σε managed enterprise platforms.»

// τεχνική αξιολόγηση αρχιτεκτονικής
03

Φτιαγμένο για πραγματικό deployment

Windows / IIS / Plesk — production, όχι θεωρία.

iisnode-ready

Windows / IIS / Plesk

Τρέχει native μέσω iisnode με έτοιμο, δοκιμασμένο web.config — request filtering, HTTPS detection, ξεχωριστά log directories.

web.config · hardened
zero-downtime updates

Νέα έκδοση χωρίς recycle

Ανεβάζεις το νέο αρχείο και φορτώνεται μόνο του μέσα σε δευτερόλεπτα· ο έλεγχος ακεραιότητας αναγνωρίζει την αναβάθμιση και ενημερώνει το αποτύπωμα.

self-reload · integrity_upgrade
fast

Απόδοση χωρίς βάση

In-memory index και caches για σελίδες, ρυθμίσεις και στατιστικά, incremental ανάγνωση logs, minified public κώδικας — γρήγορο και σε μέτριο server.

in-memory index · incremental logs
resilient

Ανθεκτικό στη λειτουργία

Schedulers με retry/backoff, exception handlers, health checks και rotation των logs — ένα σφάλμα δεν ρίχνει το site, ο δίσκος δεν γεμίζει.

graceful degradation
recoverable

Κάδος ανακύκλωσης & ιστορικό

Σελίδες με πλήρες ιστορικό εκδόσεων, posts, events, εκκρεμότητες, συνδρομητές, FAQ, polls, φόρμες, PDF, media — soft-delete με επαναφορά.

restore · version history
self-contained

Backup = αντιγραφή

Χωρίς βάση δεδομένων, το backup είναι ένα αρχείο ή μια αντιγραφή φακέλου. Μεταφορά σε νέο server χωρίς migrations, χωρίς dumps.

copy data/ → done
observable

Διαγνωστικά & πόροι

SMTP, scheduler, RAM, δίσκος, PID του worker, heartbeat — και ίχνος για κάθε email ειδοποίησης (στάλθηκε / απέτυχε / παραλείφθηκε).

diagnostics · heartbeat
multi-site

Πολλά sites, ένας server

Κάθε site στον δικό του φάκελο και application pool· κοινός φάκελος μόνο για ό,τι ωφελεί όλα (bans, cache γεωεντοπισμού), με ελάχιστα δικαιώματα.

least privilege · shared defence