Πλατφόρμα πληρωμών με microservices
Μια εφαρμογή πληρωμών με πολλαπλά microservices επιβάλλει mTLS σε κάθε εσωτερική κλήση, ώστε ακόμα κι αν παραβιαστεί ένα container, να μην μπορεί να μιλήσει με την υπηρεσία χρεώσεων χωρίς έγκυρο πιστοποιητικό.
Καμία σιωπηρή εμπιστοσύνη μέσα στο εσωτερικό δίκτυο
mTLS και Zero Trust στην Ελλάδα σημαίνει ότι καμία υπηρεσία δεν εμπιστεύεται αυτόματα μια άλλη μόνο επειδή βρίσκεται στο ίδιο εσωτερικό δίκτυο. Στήνουμε εσωτερικό certificate authority με cert-manager ή step-ca, βραχύβια πιστοποιητικά που ανανεώνονται αυτόματα, και ταυτότητα ανά workload. Προτείνουμε service mesh όπου το κλίμακα το δικαιολογεί, ή απλούστερη λύση χωρίς sidecar όταν δεν το δικαιολογεί.
Zero Trust δεν είναι ένα προϊόν, είναι μια αρχή: καμία σύνδεση δεν είναι έμπιστη μόνο επειδή προέρχεται από το εσωτερικό δίκτυο. Κάθε υπηρεσία αποδεικνύει την ταυτότητά της με πιστοποιητικό, όχι με IP ή με το γεγονός ότι βρίσκεται στο ίδιο VPC. Στήνουμε εσωτερικό CA που εκδίδει πιστοποιητικά σύντομης διάρκειας ζωής σε κάθε workload, τα οποία ανανεώνονται αυτόματα πριν λήξουν, χωρίς χειροκίνητη παρέμβαση.
Ένα Zero Trust μοντέλο που δεν εφαρμόζεται ομοιόμορφα δημιουργεί ψευδή αίσθηση ασφάλειας. Εφαρμόζουμε τη λίστα που ακολουθεί σε όλες τις υπηρεσίες, χωρίς εξαιρέσεις για «εσωτερικά» εργαλεία, και την καταγράφουμε στην τεκμηρίωσή σας. Το πιο συχνό λάθος που διορθώνουμε είναι υπηρεσίες που επικοινωνούν χωρίς κρυπτογράφηση επειδή «είναι μέσα στο ίδιο δίκτυο» — ακριβώς η υπόθεση που το Zero Trust καταργεί. Ελέγχουμε την πολιτική εμπιστοσύνης ξανά κάθε φορά που ζητάτε ώρες DevOps για ανασκόπηση αρχιτεκτονικής.
Ένα service mesh όπως το Linkerd προσφέρει mTLS αυτόματα ανάμεσα σε όλες τις υπηρεσίες, με παρατηρησιμότητα ενσωματωμένη, αλλά προσθέτει ένα sidecar container ανά pod και μια επιπλέον στρώση διαχείρισης. Για μικρότερα σύνολα υπηρεσιών, προτείνουμε συχνά λύση χωρίς sidecar: mTLS στο επίπεδο της εφαρμογής ή του ingress, με λιγότερη πολυπλοκότητα λειτουργίας. Σας δείχνουμε το πραγματικό κόστος και των δύο πριν αποφασίσουμε μαζί.
Η ρύθμιση εσωτερικού CA, mTLS και διαχείρισης secrets μπαίνει στις μηνιαίες ώρες: 1–8 ώρες σε VPS, 5–10 ώρες σε dedicated servers ανάλογα με το πλάνο και 10 ώρες σε GPU servers. Ζητάτε το έργο από τον πίνακα πελάτη, στις Υπηρεσίες DevOps, με προθεσμία που προτείνετε. Συνήθως χωρίζουμε σε φάσεις: εσωτερικό CA και πρώτες υπηρεσίες έναν μήνα, επέκταση σε όλο το σύστημα τον επόμενο. Ό,τι ξεπερνά την ποσόστωση τιμολογείται ξεχωριστά.
Κάθε συνδρομή περιλαμβάνει μηνιαίες ώρες DevOps, Κυβερνοασφάλειας και Προγραμματισμού: 1 ώρα από το πακέτο cPanel Advanced και πάνω, 1–8 ώρες σε VPS και 5–10 ώρες σε αποκλειστικούς διακομιστές ανάλογα με το πλάνο και 10 ώρες σε GPU. Οι ώρες ζητούνται από τον πίνακα πελάτη, δεν μεταφέρονται στον επόμενο μήνα, και ό,τι ξεπερνά το όριο γίνεται δεκτό και χρεώνεται ξεχωριστά.
Μια εφαρμογή πληρωμών με πολλαπλά microservices επιβάλλει mTLS σε κάθε εσωτερική κλήση, ώστε ακόμα κι αν παραβιαστεί ένα container, να μην μπορεί να μιλήσει με την υπηρεσία χρεώσεων χωρίς έγκυρο πιστοποιητικό.
Μια εταιρεία με παλιά και νέα συστήματα δίπλα δίπλα εφαρμόζει ταυτότητα ανά workload, ώστε κάθε νέο σύστημα να αποδεικνύει ρητά ποιες υπηρεσίες μπορεί να καλέσει, αντί να βασίζεται στη θέση του δικτύου.
Μια ομάδα που φιλοξενεί ιδιόκτητα μοντέλα περιορίζει την πρόσβαση στο API inference μόνο σε υπηρεσίες με έγκυρο πιστοποιητικό workload, ώστε κανένα άλλο container στο cluster να μην μπορεί να το καλέσει απευθείας.
Περιγράφετε πόσες υπηρεσίες έχετε, πώς επικοινωνούν σήμερα και ποιες θεωρείτε πιο ευαίσθητες, και προτείνετε προθεσμία από τις Υπηρεσίες DevOps.
Αποφασίζουμε service mesh ή λύση χωρίς sidecar, σχεδιάζουμε το εσωτερικό CA και εκτιμάμε τις ώρες ανάλογα με τον αριθμό υπηρεσιών.
Στήνουμε το CA, εκδίδουμε πιστοποιητικά, ενεργοποιούμε mTLS σταδιακά ανά υπηρεσία, και επαληθεύουμε ότι η αυτόματη ανανέωση λειτουργεί.
Παίρνετε την τοπολογία εμπιστοσύνης, τη διαδικασία έκδοσης και ανάκλησης πιστοποιητικών, και τη λίστα δικαιωμάτων ανά υπηρεσία.
Στο κανονικό TLS μόνο ο server αποδεικνύει την ταυτότητά του στον client. Στο mutual TLS (mTLS) και οι δύο πλευρές αποδεικνύουν ταυτότητα με πιστοποιητικά. Ανάμεσα σε υπηρεσίες, αυτό σημαίνει ότι κάθε κλήση επαληθεύει ποιος καλεί, όχι μόνο πού καλεί.
Το firewall ελέγχει την πρόσβαση στα σύνορα του δικτύου, αλλά μέσα στο δίκτυο η κίνηση συχνά είναι απεριόριστη. Το Zero Trust απαιτεί επαλήθευση ταυτότητας σε κάθε σύνδεση, ανεξάρτητα από το πού βρίσκεται η υπηρεσία, ώστε μια παραβίαση σε ένα σημείο να μη δίνει πρόσβαση παντού.
Μόνο αν έχετε αρκετές υπηρεσίες ώστε η χειροκίνητη διαχείριση mTLS να γίνεται δύσκολη. Για μικρότερα σύνολα, μια λύση χωρίς sidecar, με mTLS στο επίπεδο της εφαρμογής ή του ingress, δίνει την ίδια ασφάλεια με λιγότερη πολυπλοκότητα λειτουργίας.
Είτε κρυπτογραφώντας τα με SOPS πριν μπουν στο git, είτε αποθηκεύοντάς τα σε HashiCorp Vault και αντλώντας τα κατά την εκκίνηση. Και οι δύο προσεγγίσεις αποφεύγουν το plaintext secret μέσα στο repository, το πιο συχνό λάθος που βλέπουμε.
Το SPIFFE είναι ένα πρότυπο για ταυτότητα workload, ανεξάρτητο από πλατφόρμα. Δεν χρειάζεστε πάντα πλήρη εφαρμογή SPIFFE/SPIRE· συχνά αρκεί η λογική του, δηλαδή πιστοποιητικό ανά workload αντί για κοινό μυστικό, εφαρμοσμένη με πιο απλά εργαλεία.
Στήνουμε εσωτερικό CA και mTLS ανάμεσα στις υπηρεσίες σας, μέσα στις ώρες που περιλαμβάνει η συνδρομή σας.