fix some fucking errors
This commit is contained in:
@@ -263,8 +263,9 @@ chroot ήταν η ενίσχυση της ασφάλειας ούτως ώστ
|
||||
ανάγκη διαφορετικών μεθόδων απομόνωσης μιας και από κατασκευής του, το chroot
|
||||
δεν περιόριζε έναν χρήστη ή μια διεργασία με διαχειριστικά δικαιώματα
|
||||
\cite{chrootRestrictions}. Μερικά χρόνια αργότερα, το 2004 δημιουργήθηκαν και
|
||||
ενσωματώθηκαν στον πυρήνα του Linux οι ομάδες ελέγχου με την βοήθεια των οποίων
|
||||
ήταν πλέον δυνατή η απομόνωση πόρων του συστήματος σε ένα υποσύνολο διεργασιών.
|
||||
ενσωματώθηκαν στον πυρήνα του Linux οι ομάδες ελέγχου, με την βοήθεια των
|
||||
οποίων ήταν πλέον δυνατή η απομόνωση πόρων του συστήματος σε ένα υποσύνολο
|
||||
διεργασιών.
|
||||
|
||||
Αυτές οι τεχνολογίες σήμαναν της έναρξη της ιδέας της δοχειοποίησης και έτσι το
|
||||
2008 ήρθε στο προσκήνιο το LXC (Linux Container Technology) \footfullcite{LXC}.
|
||||
@@ -282,7 +283,7 @@ chroot ήταν η ενίσχυση της ασφάλειας ούτως ώστ
|
||||
του εξειδικευμένου σκοπού ύπαρξής τους δεν είχαν υιοθετηθεί αρκετά. Όλα τα
|
||||
παραπάνω οδήγησαν στην δημιουργία του Docker το 2013, με την έλευση του οποίου
|
||||
η τεχνολογία των δοχείων εκτοξεύτηκε. Το Docker είναι ένα σύνολο προϊόντων PaaS
|
||||
(Platform-as-a-Service) (Πλατφόρμα ως Υπηρεσία), παρέχοντας μια πλατφόρμα με
|
||||
(Platform-as-a-Service) (Πλατφόρμα ως Υπηρεσία) και παρέχει μια πλατφόρμα με
|
||||
μηχανισμούς για συναρμολόγηση, θέση σε λειτουργία, εκτέλεση, ενημέρωση και
|
||||
διαχείριση προγραμμάτων σε μορφή δοχείων. Σε αντίθεση με το LXC, αποτελεί μια
|
||||
μηχανή δοχείων υψηλού επιπέδου με κύριο στόχο την δοχειοποίηση εφαρμογών. Εκτός
|
||||
@@ -297,7 +298,7 @@ Initiative) \footfullcite{oci}. Μέσω τέτοιων υπηρεσιών, οι
|
||||
ολοκληρώσουν διάφορα μέρη μιας υπάρχουσας ή νέας εφαρμογής. Επιπλέον, όντας μια
|
||||
μηχανή δοχείων υψηλού επιπέδου όλες οι λειτουργίες που θα απαιτούσαν
|
||||
εξειδικευμένες γνώσεις προκειμένου να πραγματοποιηθούν, έχουν συμπυκνωθεί σε
|
||||
απλές εντολές καθιστώντας έτσι εύκολη την χρήση του για προγραμματιστές κάθε
|
||||
απλές εντολές, καθιστώντας έτσι εύκολη την χρήση του για προγραμματιστές κάθε
|
||||
επιπέδου και απλοποιώντας κατά πολύ την διαδικασία ανάπτυξης και παράδοσης
|
||||
κατανεμημένων εφαρμογών. Προσφέροντας μια φιλική προς τον χρήστη διεπαφή,
|
||||
έλεγχο εκδόσεων (version control) για δοχεία \cite{LXCvsDocker2} και ένα
|
||||
@@ -357,7 +358,7 @@ Integration/Continuous Delivery) (Συνεχής Ενοποίηση/Συνεχή
|
||||
χρήσης εντάσσεται στην κατηγορία υπηρεσιών CaaS \cite{caas} (Container as a
|
||||
Service), όπως η ECS (Elastic Container Service) της Amazon. Μια υπηρεσία όπου
|
||||
ένας πάροχος νέφους αντί να παρέχει πρόσβαση σε υπολογιστικούς πόρους γενικού
|
||||
σκοπού, παρέχει μια ευέλικτη υποδομή έτοιμη για την εκτέλεση δοχείων
|
||||
σκοπού, παρέχει μια ευέλικτη υποδομή, έτοιμη για την εκτέλεση δοχείων
|
||||
\cite{caasVsIaas}.
|
||||
|
||||
Από τις δύο αυτές επιλογές, η πρώτη προσφέρει μια ευελιξία ως προς την
|
||||
@@ -370,7 +371,7 @@ Service), όπως η ECS (Elastic Container Service) της Amazon. Μια υπ
|
||||
αποτελεί ένα επιπρόσθετο εμπόδιο σε περιπτώσεις που ένα δοχείο βρεθεί σε
|
||||
κατάσταση παραβίασης. Το Docker επιτρέποντας μέσω των δοχείων την περιορισμένη
|
||||
έκθεση των πόρων του συστήματος στον έξω κόσμο, καθιστά ευκολότερη την
|
||||
ανίχνευση και απομόνωση των προβλημάτων ασφαλείας, όπως επίσης και την
|
||||
ανίχνευση και απομόνωση των προβλημάτων ασφαλείας, καθώς επίσης και την
|
||||
αποκατάστασή τους.
|
||||
|
||||
Από την άλλη, η δεύτερη περίπτωση χρήσης επιτρέπει στους χρήστες να
|
||||
@@ -393,7 +394,7 @@ Service), όπως η ECS (Elastic Container Service) της Amazon. Μια υπ
|
||||
σύστημα και επιτρέπει την αποδοτικότερη διαχείριση των εφαρμογών αυτών μέσω της
|
||||
διεπαφής του με εντολές για εκκίνηση, επιτήρηση πόρων, παύση και άλλες
|
||||
λειτουργίες. Τα προβλήματα που μπορεί να προέκυπταν σε ένα περιβάλλον
|
||||
ανάπτυξης, όπως μη συμβατές εκδόσεις προγραμμάτων και δυσκολία διαχείρισής
|
||||
ανάπτυξης, όπως μη συμβατές εκδόσεις προγραμμάτων και η δυσκολία διαχείρισής
|
||||
τους, εξαλείφονται με την χρήση δοχείων αφήνοντας το Docker να εγκαθιδρύσει
|
||||
έναν συστημικό τρόπο διανομής και ελέγχου εφαρμογών. Επιπροσθέτως, καθιστά πολύ
|
||||
εύκολη τη μεταφορά τους σε οποιοδήποτε μηχάνημα (εφόσον αυτό υποστηρίζει την
|
||||
@@ -466,7 +467,7 @@ Service), όπως η ECS (Elastic Container Service) της Amazon. Μια υπ
|
||||
φιλοξενίας (αν υπάρχει), ο υπερ-επόπτης, το φιλοξενούμενο ΛΣ και η εκτελούμενη
|
||||
υπηρεσία. Σε περιβάλλον δοχείου, πρέπει να σκληρύνει το ΛΣ που φιλοξενεί τη
|
||||
μηχανή δοχείων, η μηχανή δοχείων και η υπηρεσία. Πράγμα που σημαίνει πως σε ένα
|
||||
εικονικό περιβάλλον με την χρήση του Docker έχουμε επιπρόσθετα επίπεδα που
|
||||
εικονικό περιβάλλον, με την χρήση του Docker έχουμε επιπρόσθετα επίπεδα που
|
||||
χρειάζονται σκλήρυνση. Συνεπώς, σε εικονικά περιβάλλοντα, η χρήση δοχείων
|
||||
έρχεται με την σκλήρυνση ενός επιπλέον συστατικού, της μηχανής δοχείων, οπότε
|
||||
προσφέρει καλύτερο επίπεδο ασφάλειας.
|
||||
@@ -475,7 +476,7 @@ Service), όπως η ECS (Elastic Container Service) της Amazon. Μια υπ
|
||||
ασφαλείας στα δοχεία και η σταθερότητα του περιβάλλοντος που προσφέρεται μέσω
|
||||
αυτών στις εφαρμογές. Ειδικότερα, η ενημέρωση ενός δοχείου είναι μια διαδικασία
|
||||
δύο μόνο εντολών, ενώ το προσφερόμενο περιβάλλον είναι σταθερό με την λογική
|
||||
πως η μηχανή δοχείου παρέχει ένα επίπεδο πάνω από το ΛΣ, κι επομένως το
|
||||
πως η μηχανή δοχείων παρέχει ένα επίπεδο πάνω από το ΛΣ, κι επομένως το
|
||||
περιβάλλον αυτό δεν είναι ξεχωριστά ευμετάβλητο από την εκάστοτε εφαρμογή που
|
||||
εκτελείται μέσα σε αυτό. Άρα, δεν κινδυνεύει από νέα προβλήματα ασφαλείας που
|
||||
θα μπορούσαν να επιφέρουν τυχόν ενημερώσεις των εξαρτήσεων της εφαρμογής χωρίς
|
||||
@@ -543,13 +544,13 @@ Docker, όπως η σκλήρυνσή του, η αποφυγή χρήσης τ
|
||||
δημιουργία πολλαπλών ασφαλών περιβαλλόντων ώστε να μπορεί ένας χρήστης να
|
||||
εγκαθιστά εκεί τα δοχεία της εφαρμογής του. Με την εφαρμογή των κατάλληλων
|
||||
μέτρων και πρακτικών ασφαλείας σε κάθε επίπεδο, τα περιβάλλοντα αυτά
|
||||
σκληρύνονται, μικραίνοντας με αυτό τον τρόπο την πιθανότητα διείσδυσης. Η
|
||||
σκλήρυνση του ΛΣ επιτυγχάνεται με την εκτέλεση πολλών βημάτων στα οποία μεταξύ
|
||||
άλλων περιλαμβάνεται η σκλήρυνση του SSH, ο εντοπισμός, η εγκατάσταση, η
|
||||
ρύθμιση και η ενεργοποίηση των κατάλληλων για την εκάστοτε διανομή,
|
||||
προγραμμάτων για ανάχωμα ασφαλείας και για παροχή MAC (Mandatory Access
|
||||
Control) και η δημιουργία και ενεργοποίηση περιοδικά εκτελέσιμων προγραμμάτων
|
||||
για την ενημέρωση του συστήματος και το άνοιγμα/κλείσιμο θυρών προγραμμάτων. Η
|
||||
σκληρύνονται, μικραίνοντας έτσι την πιθανότητα διείσδυσης. Η σκλήρυνση του ΛΣ
|
||||
επιτυγχάνεται με την εκτέλεση πολλών βημάτων στα οποία μεταξύ άλλων
|
||||
περιλαμβάνεται η σκλήρυνση του SSH, ο εντοπισμός, η εγκατάσταση, η ρύθμιση και
|
||||
η ενεργοποίηση των κατάλληλων για την εκάστοτε διανομή, προγραμμάτων για
|
||||
ανάχωμα ασφαλείας και για παροχή MAC (Mandatory Access Control) και η
|
||||
δημιουργία και ενεργοποίηση περιοδικά εκτελέσιμων προγραμμάτων για την
|
||||
ενημέρωση του συστήματος και το άνοιγμα/κλείσιμο θυρών προγραμμάτων. Η
|
||||
απεξάρτηση από τον διαχειριστικό λογαριασμό επιτυγχάνεται χάρη στη δουλειά του
|
||||
Akihiro Suda πάνω στο rootlesskit \footfullcite{AkihiroSuda}, επιτρέποντας έτσι
|
||||
την χρήση ενός πλαστού διαχειριστικού λογαριασμού προκειμένου να μπορέσει η
|
||||
@@ -561,32 +562,33 @@ Akihiro Suda πάνω στο rootlesskit \footfullcite{AkihiroSuda}, επιτρ
|
||||
|
||||
Η χρήση του εργαλείου έρχεται με πολλά πλεονεκτήματα για τον χρήστη. Κατ'
|
||||
αρχήν, το εργαλείο είναι εύκολο στη χρήση και στην εγκατάσταση, καθώς παρέχει
|
||||
πλούσια τεκμηρίωση και οδηγίες εγκατάστασης στο αποθετήριό του. Απαιτούνται
|
||||
ελάχιστες γνώσεις στον τομέα των τεχνολογιών νέφους από τον χρήστη. Επιπλέον,
|
||||
είναι ευέλικτο και επεκτάσιμο διότι αποτελείται από δύο εκτελέσιμα προγράμματα
|
||||
τα οποία μπορεί κάθε χρήστης να τροποποιήσει και να προσθέσει τις δικές του
|
||||
λειτουργίες. Τέλος, οι παράμετροι του είναι εύκολα κατανοητές και προσαρμόσιμες
|
||||
στις ανάγκες του χρήστη. Επομένως, το εργαλείο αυτό αποτελεί ένα κατάλληλο μέσο
|
||||
για την δημιουργία, διαχείριση και ασφάλιση περιβαλλόντων εφαρμογών που
|
||||
εκτελούνται σε δοχεία.
|
||||
πλούσια τεκμηρίωση και οδηγίες εγκατάστασης στο αποθετήριό του, ενώ οι γνώσεις
|
||||
που απαιτούνται στον τομέα των τεχνολογιών νέφους για την χρήση του είναι
|
||||
ελάχιστες. Επιπλέον, είναι ευέλικτο και επεκτάσιμο διότι αποτελείται από δύο
|
||||
εκτελέσιμα προγράμματα τα οποία μπορεί κάθε χρήστης να τροποποιήσει ώστε να
|
||||
προσθέσει τις δικές του λειτουργίες αν το επιθυμεί. Τέλος, οι παράμετροι του
|
||||
είναι εύκολα κατανοητές και προσαρμόσιμες στις ανάγκες του χρήστη. Επομένως, το
|
||||
εργαλείο αυτό αποτελεί ένα κατάλληλο μέσο για την δημιουργία, διαχείριση και
|
||||
ασφάλιση περιβαλλόντων εφαρμογών που εκτελούνται σε δοχεία.
|
||||
|
||||
\clearpage
|
||||
|
||||
\section{Δομή Εργασίας} \label{structure}
|
||||
|
||||
Η υπόλοιπη δομή της αναφοράς είναι η εξής. Στο Κεφάλαιο \ref{background}, θα
|
||||
αναλύσουμε τις διάφορες τεχνολογίες εικονικοποίησης και θα εμβαθύνουμε στην
|
||||
τεχνολογία των δοχείων με επίκεντρο την ασφάλεια του Docker. Στο επόμενο
|
||||
κεφάλαιο (δηλαδή το \ref{relevantWork}), θα δούμε εργασίες σχετικές με την
|
||||
παρούσα και θα πραγματοποιηθεί ανάλυση και σύγκριση αυτών με την προτεινόμενη
|
||||
εργασία της διπλωματικής. Αμέσως μετά, στο Κεφάλαιο \ref{projectDevelopment},
|
||||
αναφερόμαστε στην διαδικασία ανάπτυξης του προτεινόμενου εργαλείου και τα
|
||||
παράγωγά της (απαιτήσεις, σχεδιαστικά μοντέλα, κώδικας υλοποίησης κα.).
|
||||
Προχωρώντας στο Κεφάλαιο \ref{installationANDShowcase}, θα αναφερθούμε στις
|
||||
οδηγίες εγκατάστασης και λειτουργίας του εργαλείου με βάση στοχευμένα σενάρια
|
||||
χρήσης. Έπειτα, στο Κεφάλαιο \ref{experimentationANDresults} αποτιμάται η
|
||||
αποδοτικότητα του εργαλείου κατά την πραγματική χρήση του προκειμένου να
|
||||
εξετασθεί με πρακτικό τρόπο η ικανότητα εξασφάλισης των στόχων του. Τέλος, στο
|
||||
Κεφάλαιο \ref{conclusions}, αναφέρονται δυνητικές επεκτάσεις και βελτιώσεις του
|
||||
αναλύσουμε τις έννοιες της νεφο-υπολογιστικής και εικονικοποίησης, τις διάφορες
|
||||
τεχνολογίες εικονικοποίησης και θα εμβαθύνουμε στην τεχνολογία των δοχείων με
|
||||
επίκεντρο την ασφάλεια του Docker. Στο επόμενο κεφάλαιο (δηλαδή το
|
||||
\ref{relevantWork}), θα δούμε εργασίες σχετικές με την παρούσα και θα
|
||||
πραγματοποιηθεί ανάλυση και σύγκριση αυτών με την προτεινόμενη εργασία της
|
||||
διπλωματικής. Αμέσως μετά, στο Κεφάλαιο \ref{projectDevelopment}, αναφερόμαστε
|
||||
στην διαδικασία ανάπτυξης του προτεινόμενου εργαλείου και τα παράγωγά της
|
||||
(απαιτήσεις, σχεδιαστικά μοντέλα, κώδικας υλοποίησης κα.). Προχωρώντας στο
|
||||
Κεφάλαιο \ref{installationANDShowcase}, θα αναφερθούμε στις οδηγίες
|
||||
εγκατάστασης και λειτουργίας του εργαλείου με βάση στοχευμένα σενάρια χρήσης.
|
||||
Έπειτα, στο Κεφάλαιο \ref{experimentationANDresults} αποτιμάται η αποδοτικότητα
|
||||
του εργαλείου κατά την πραγματική χρήση του, προκειμένου να εξετασθεί με
|
||||
πρακτικό τρόπο η ικανότητα εξασφάλισης των στόχων του. Τέλος, στο Κεφάλαιο
|
||||
\ref{conclusions}, αναφέρονται δυνητικές επεκτάσεις και βελτιώσεις του
|
||||
προτεινόμενου εργαλείου προκειμένου αυτό να μπορέσει να πάρει μια θέση στην
|
||||
αγορά.
|
||||
|
||||
Reference in New Issue
Block a user