$ cat the-cloud-audit-we-run.md

Το cloud audit που τρέχουμε σε κάθε νέα συνεργασία.

· 6 λεπτά · consulting

Κάθε νέα συνεργασία ξεκινάει το ίδιο: μία εβδομάδα, πέντε διαστάσεις, μία σελίδα ευρημάτων. Δημοσιεύουμε εδώ το checklist ώστε να μπορεί κάθε ομάδα να το τρέξει μόνη της, πριν αποφασίσει αν χρειάζεται εξωτερική βοήθεια.

Η πρώτη εβδομάδα με νέο πελάτη είναι κυρίως ακρόαση. Δείξτε μας το AWS console. Δείξτε μας τα repos. Δείξτε μας το on-call rotation. Δείξτε μας τα incidents του τελευταίου τριμήνου. Μέχρι την Παρασκευή παραδίδουμε μία σελίδα — τι είναι κόκκινο, τι κίτρινο, τι πράσινο και τι θα ακουμπούσαμε πρώτα, αν ήταν δικό μας σύστημα.

Το checklist παρακάτω είναι αυτό με το οποίο βαθμολογούμε. Τίποτα από αυτά δεν είναι καινούργιο. Το θέμα είναι να έχεις ένα ενιαίο artifact στο οποίο γυρνάς κάθε έξι μήνες και βλέπεις τα πράσινα να μαζεύονται.

Οι πέντε διαστάσεις

1. Security posture
2. Κόστος & σπατάλη
3. IaC κάλυψη
4. Observability & on-call
5. Ανθεκτικότητα & ανάκαμψη

Για κάθε μία βαθμολογούμε Red / Amber / Green με βάση μερικά binary checks. Ό,τι είναι Red πάει στη σελίδα ένα της αναφοράς. Ό,τι είναι Amber παίρνει μία γραμμή σχόλιο. Τα Green παίρνουν ένα ✓ και προχωράμε.

1. Security posture

Πράσινο αν όλα από τα παρακάτω:

Κόκκινο αν: long-lived IAM access keys σε ανθρώπους, public S3 buckets που κανείς δεν εξηγεί, ενεργή χρήση root account, secrets σε .env αρχεία στο repo.

2. Κόστος & σπατάλη

Πράσινο αν όλα από τα παρακάτω:

Κόκκινο αν: κανείς δεν έχει ευθύνη για τον λογαριασμό, η top γραμμή είναι «EC2 — Other», το non-prod τρέχει 24/7 σε full size, καμία στρατηγική tagging.

3. IaC κάλυψη

Πράσινο αν όλα από τα παρακάτω:

Κόκκινο αν: ένας senior είναι ο μόνος που μπορεί να κάνει deploy γιατί τα μισά resources είναι click-ops, το state είναι σε ένα S3 bucket χωρίς locking, δεν μπορείς να απαντήσεις «θα το ξαναχτίζαμε από το μηδέν;» με ναι.

4. Observability & on-call

Πράσινο αν όλα από τα παρακάτω:

Κόκκινο αν: κανείς δεν page-άρεται εκτός ωραρίου, τα alerts πάνε σε αδιάβαστο Slack channel, «monitoring» σημαίνει kubectl logs όταν σπάει κάτι.

5. Ανθεκτικότητα & ανάκαμψη

Πράσινο αν όλα από τα παρακάτω:

Κόκκινο αν: τα backups υπάρχουν αλλά δεν έγιναν ποτέ restored, καμία postmortem, single-AZ production, το «DR plan» ζει στο μυαλό κάποιου.

Το deliverable

Μία σελίδα. Πέντε γραμμές. Κάθε γραμμή: Red / Amber / Green, εύρημα δύο γραμμών, πρώτη ενέργεια μίας γραμμής. Στη συνέχεια, μια λίστα προτεραιότητας με τα top πέντε για διόρθωση τις επόμενες 90 μέρες, με εκτιμήσεις προσπάθειας.

Αυτό είναι όλο το artifact. Όχι 40 σελίδες. Όχι slide deck. Μία σελίδα που ο CTO προωθεί στον CEO και στο board.

Γιατί μία σελίδα. Μια αναφορά 40 σελίδων είναι αμυντικό κείμενο — δικαιολογεί την αμοιβή του συμβούλου και αρχειοθετείται. Μια αναφορά μιας σελίδας είναι κείμενο απόφασης — συζητιέται, μπαίνει σε προτεραιότητα, γίνεται. Δεν έχουμε δει ποτέ πελάτη να εύχεται η δική μας να ήταν μεγαλύτερη.

Το πλάνο 90 ημερών

Ό,τι κι αν δείξει το audit, το follow-up plan δεν έχει ποτέ πάνω από πέντε σημεία. Η προσοχή κάθε ανθρώπου έχει όρια. Οι δύο καθολικοί κανόνες:

  1. Διόρθωσε ένα Red πριν κυνηγήσεις δύο Ambers. Τα Reds γίνονται incidents.
  2. Οι νίκες κόστους χρηματοδοτούν το security work. Αν το audit βρει €4k/μήνα σπατάλη, η εξοικονόμηση πληρώνει τους δύο επόμενους μήνες remediation.

Τρέξε το μόνος σου

Μπορείς να κάνεις αυτό το audit και μόνος σου. Θέλει περίπου μία μέρα με δύο senior μηχανικούς και πρόσβαση στα cloud consoles. Το πιο δύσκολο κομμάτι είναι να είσαι τίμιος για τα Reds — αν έγραψες εσύ το σύστημα που εξετάζεις, θα το υπερασπιστείς ενστικτωδώς. Ζήτα από κάποιον εκτός ομάδας να βαθμολογήσει, ακόμη κι αν δεν ξέρει το stack σου. Οι ερωτήσεις είναι κυρίως binary.

Αν το κάνεις, στείλε μας το αποτέλεσμα. Θα σου πούμε ποιο εύρημα θα βάζαμε σε προτεραιότητα — δωρεάν, χωρίς sales call.


Αν το να το τρέξεις μόνος δεν είναι ρεαλιστικό, το κάνουμε εμείς, σταθερό scope, σταθερή αμοιβή, σε 1 εβδομάδα. Πες μας.