της Γεωργίας Νόλα # Απλή φιλοξενία ιστότοπου με Amazon S3 και HTTPS Γεια σας παιδιά! Σε αυτό το σεμινάριο θα σας δείξω πώς να φιλοξενείτε έναν στατικό ιστότοπο με HTTPS σε AWS με προσαρμοσμένο τομέα. Όλα αυτά είναι δυνατά χρησιμοποιώντας το δωρεάν επίπεδο AWS Ωστόσο, οι υπηρεσίες που πρόκειται να χρησιμοποιήσουμε επιβαρύνονται με ορισμένες μικρές χρεώσεις. Σε γενικές γραμμές, αυτά δεν πρέπει να υπερβαίνουν το 1 $/μήνα Θα χρησιμοποιούμε έναν συνδυασμό των ακόλουθων υπηρεσιών AWS: âÃÂÃÂS3 Διαδρομή 53 Διαχειριστής πιστοποιητικών CloudFront *Ας μπούμε σε αυτό!* Ρυθμίστε τους κάδους S3 σας Πρώτον, θα χρειαστείτε **δύο κάδοι S3 και οι δύο θα πρέπει να ταιριάζουν με το προσαρμοσμένο όνομα τομέα σας με το δεύτερο να περιλαμβάνει τον υποτομέα www Κάδος 1: Κάδος 2: Ο πρώτος κάδος (mywebsite.com) είναι ο κύριος κάδος για τον ιστότοπό σας. Αυτό περιέχει όλα τα αρχεία και τα στοιχεία για τον στατικό ιστότοπό σας Στη συνέχεια ρυθμίζουμε αυτόν τον κάδο για στατική φιλοξενία ιστότοπου. Μπορείτε να το βρείτε στην καρτέλα Ιδιότητες του κάδου και θα διατηρήσουμε τις προεπιλογές που παρέχονται εδώ με το ευρετήριο του ιστότοπου να έχει οριστεί σε index.html Πρέπει επίσης να κάνουμε αυτό το bucket προσβάσιμο καθώς το πρόγραμμα περιήγησης χρήστη θα πρέπει να έχει πρόσβαση στα αρχεία του bucket για να αποδώσει τον ιστότοπο. Μπορούμε να το κάνουμε αυτό ορίζοντας μια πολιτική κάδου στην καρτέλα Δικαιώματα { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal":"Action": "s3:GetObject", "Πόρος": "MY_BUCKET_ARN"} ]} Αυτή είναι μια απλή πολιτική που θα επιτρέπει μόνο την πρόσβαση δημόσιας ανάγνωσης των αντικειμένων στον κάδο. Τώρα, εάν κατευθυνθείτε στο τελικό σημείο που ορίζεται στη διαμόρφωση στατικής φιλοξενίας του κάδου, θα πρέπει να δείτε τον ιστότοπό σας Πρόοδος! Αλλά μπορούμε να κάνουμε καλύτερα από αυτό Ο δεύτερος κάδος (www.mywebsite.com) θα τον αφήσουμε κενό, αλλά θα ρυθμίσουμε να ανακατευθύνουμε στον πρώτο μας κάδο χρησιμοποιώντας ως πρωτόκολλο το HTTP (θα το κάνουμε HTTPS αργότερα) Οι κάδοι σας είναι τώρα έτοιμοι! Διαμόρφωση τομέων με το Route53 Επομένως, ο ιστότοπός σας είναι έτοιμος και λειτουργεί, αλλά είναι προσβάσιμος μόνο μέσω του τελικού σημείου του κάδου και όχι μέσω του προσαρμοσμένου τομέα σας. Ας το αλλάξουμε αυτό Κατευθύνομαι προς **Διαδρομή53 Εάν έχετε καταχωρίσει τον τομέα σας στον Καταχωρητή της Amazon, θα πρέπει να δείτε ότι έχει ρυθμιστεί μια φιλοξενούμενη ζώνη για εσάς με δύο σύνολα εγγραφών. Ένα για Name Server (NS) και ένα για SOA Το μόνο που χρειάζεται να κάνουμε είναι να δημιουργήσουμε δύο ακόμη σύνολα εγγραφών για να δείχνουν στα τελικά σημεία του κάδου S3 Για κάθε σετ ρεκόρ: âÃÂàΤύπος: Μια διεύθυνση IPv4 Ψευδώνυμο: Ναι âÃÂàAlias ​​Target: το τελικό σημείο του ιστότοπου S3 που ταιριάζει με αυτό που έχετε ορίσει για Όνομα Τώρα μπορούμε να κατευθυνθούμε στο προσαρμοσμένο urlâÃÂæκαι voilÃÂà! Είμαστε σχεδόν εκεί, αλλά υπάρχει ένα τελευταίο πράγμα που μας λείπει. Âæ **Σημείωση Εάν ο τομέας σας είναι εγγεγραμμένος σε άλλο καταχωρητή τομέα (όχι στο Amazon), θα πρέπει να ακολουθήσετε μερικά διαφορετικά βήματα για να το ρυθμίσετε. Συνήθως, θα πρέπει να προσθέσετε μια εγγραφή CNAME με την τιμή του κύριου τελικού σημείου των κάδων S3. **Αντιμετώπιση προβλημάτων Εάν διαγράψατε τη φιλοξενούμενη ζώνη που δημιούργησε η Amazon όταν καταχωρίσατε για πρώτη φορά τον τομέα (το έχω κάνει επειδή οι φιλοξενούμενες ζώνες επιβαρύνονται με ορισμένες χρεώσεις), Θα χρειαστεί να δημιουργήσετε μια νέα φιλοξενούμενη ζώνη από την αρχή - Επιλέξτε âÃÂÃÂΔημιουργία Φιλοξενούμενης Ζώνης και ορίστε το όνομα τομέα, για παράδειγμα âÃÂÃÂmywebsite. comâÃÂà- Αυτό θα δημιουργήσει μερικά νέα σύνολα εγγραφών για τους τύπους NS και SOA - Μεταβείτε στον καταχωρισμένο τομέα σας και ενημερώστε τις τιμές Name Servers σε αυτές που δημιουργούνται στο νέο σύνολο εγγραφών NS Ζητώντας Πιστοποιητικό Καταπληκτικό, ο ιστότοπος φιλοξενείται πλέον χρησιμοποιώντας την προσαρμοσμένη διεύθυνση url! Ωστόσο, μπορούμε να έχουμε πρόσβαση μόνο μέσω πρωτοκόλλου HTTP Θα πρέπει πάντα να διασφαλίζουμε ότι οι ιστότοποί μας είναι ασφαλείς χρησιμοποιώντας το πρωτόκολλο HTTPS. Αυτό προστατεύει τον ιστότοπο και τους χρήστες μας από κακόβουλες επιθέσεις ένεσης και εγγυάται την αυθεντικότητα Κατευθύνομαι προς **Certificate Manager** στην Κονσόλα AWS και ζητήστε ένα νέο δημόσιο πιστοποιητικό (αυτό είναι δωρεάν). Θα σας ζητηθεί να εισαγάγετε τα ονόματα τομέα που θέλετε να εξασφαλίσετε Προτού εκδοθεί το πιστοποιητικό, η Amazon πρέπει να είναι σε θέση να επαληθεύσει ότι είστε κάτοχος των καθορισμένων τομέων Μπορείτε να επιλέξετε από δύο μεθόδους επαλήθευσης: Email ή DNS Το email είναι γενικά απλούστερο, αλλά θα πρέπει να βεβαιωθείτε ότι έχετε πρόσβαση στο email που χρησιμοποιείται για την εγγραφή του τομέα. Εναλλακτικά, εάν χρησιμοποιήσατε το Amazon Registrar και το Route53, μπορείτε να επιλέξετε τη μέθοδο DNS. Αυτό απαιτεί από εσάς να προσθέσετε ορισμένα συγκεκριμένα σύνολα εγγραφών στη φιλοξενούμενη ζώνη, αλλά αυτό είναι ως επί το πλείστον αυτοματοποιημένο για εσάς, επομένως είναι αρκετά απλό Μπορεί να χρειαστούν μερικά λεπτά για να εκδοθεί το πιστοποιητικό μετά την επικύρωση Όταν τελειώσουν όλα μπορούμε να συνεχίσουμε στο τελευταίο βήμα! Διαμόρφωση του CloudFront Για το τελευταίο βήμα θα χρησιμοποιήσουμε **CloudFront **το οποίο μας επιτρέπει να χρησιμοποιήσουμε το νέο πιστοποιητικό SSL για να εξυπηρετήσουμε τον ιστότοπο με HTTPS. Το CloudFront επιταχύνει επίσης τη διανομή περιεχομένου ιστού αποθηκεύοντάς το σε πολλαπλές τοποθεσίες άκρων και παραδίδοντας από την πλησιέστερη τοποθεσία σε έναν χρήστη Χρειαζόμαστε **δύο νέες διανομές ιστού μία για κάθε κάδο S3. Μεταβείτε στο CloudFront στην Κονσόλα AWS και δημιουργήστε την πρώτη διανομή ιστού Υπάρχουν πολλές διαθέσιμες ρυθμίσεις για τη δημιουργία μιας διανομής ιστού, αλλά για τα βασικά χρειάζεται να αλλάξουμε μόνο πέντε: Όνομα τομέα προέλευσης: Ορίστε το στο τελικό σημείο του ιστότοπου S3 για έναν από τους κάδους. Σημαντικό: Αυτό το πεδίο θα σας δώσει ορισμένες επιλογές αυτόματης συμπλήρωσης με τα ονόματα του κάδου S3. Ωστόσο, η χρήση αυτών μπορεί να προκαλέσει προβλήματα με την ανακατεύθυνση στο τελικό σημείο του κάδου. Επομένως, χρησιμοποιήστε απευθείας το τελικό σημείο του κάδου. Αναγνωριστικό προέλευσης: Συμπληρώνεται για εσάς όταν εισάγετε Όνομα τομέα προέλευσης. Πολιτική πρωτοκόλλου προβολής: Ορίστε σε âÃÂÃÂΑνακατεύθυνση HTTP σε HTTPSâÃÂÃÂ. Εναλλακτικά ονόματα τομέα: Αυτό θα πρέπει να ταιριάζει με το όνομα του κάδου S3 στον οποίο δείχνετε. Για παράδειγμα âÃÂÃÂmywebsite.com. Πιστοποιητικό SSL: Επιλέξτε Προσαρμοσμένο πιστοποιητικό SSL και επιλέξτε το νέο σας πιστοποιητικό από το αναπτυσσόμενο μενού Κάντε αυτό ξανά για τον δεύτερο κάδο S3 Οι διανομές μπορεί να χρειαστούν λίγο χρόνο για να επανέλθουν, οπότε όσο περιμένουμε, ας κάνουμε τα τελευταία βήματα Πίσω στο **S3 μεταβείτε στον δευτερεύοντα κάδο σας (www.mywebsite.com), στην καρτέλα Ιδιότητες και στην περιοχή Στατική φιλοξενία ιστότοπου ορίστε το πρωτόκολλο ανακατεύθυνσης σε HTTPS Τέλος, επιστρέψτε στο **Route53 Πρέπει να ενημερώσουμε τις προσαρμοσμένες εγγραφές A που δημιουργήσαμε για να στοχεύσουμε τώρα τις διανομές CloudFront και όχι τους κάδους S3. Για κάθε εγγραφή, αλλάξτε το Alias ​​Target και επιλέξτε τη διανομή CloudFront που είναι διαθέσιμη στο αναπτυσσόμενο μενού Σημείωση: Και πάλι, εάν χρησιμοποιείτε άλλη υπηρεσία DNS, θα πρέπει να ενημερώσετε την εγγραφή CNAME από εκεί για να υποδείξετε το όνομα τομέα CloudFront Και εκεί το έχετε! Ο όμορφος ιστότοπός σας είναι πλέον διαθέσιμος στον προσαρμοσμένο τομέα και εξυπηρετείται με HTTPS! Ευχαριστώ για την ανάγνωση! Ελπίζω ότι αυτός ο οδηγός ήταν χρήσιμος και ευχάριστος, θα ήθελα να μάθω αν τον βρήκατε χρήσιμο.