Πώς να προσθέσετε δωρεάν HTTPS στον ιστότοπό σας σε 10 λεπτά και γιατί πρέπει να το κάνετε τώρα περισσότερο από…

Την περασμένη εβδομάδα, η Google ανακοίνωσε ότι το Chrome 68, που θα φτάσει τον Ιούλιο, θα επισημάνει όλες τις σελίδες HTTP ως "Μη ασφαλείς".

Αυτό είναι το ισχυρότερο κίνητρο που δεν έχει οδηγήσει τον Ιστό προς την κρυπτογράφηση από προεπιλογή και εδώ και πολύ καιρό έρχεται.

Παρόλο που υπάρχουν πολλά αποδεικτικά στοιχεία που μιλούν για το γιατί ο καθένας πρέπει να πάει στο συγκρότημα HTTPS, πολλοί άνθρωποι εξακολουθούν να μην βλέπουν την αξία να εξυπηρετούν με ασφάλεια τους ιστότοπούς τους.

" Γιατί το χρειάζομαι για ένα blog ;"

Έχω γράψει για την αξία του HTTPS στο παρελθόν, αλλά για να επαναλάβω:

  • Το HTTPS προστατεύει τους χρήστες από τις επιθέσεις Man In the Middle.
  • Απαιτείται HTTPS για την αξιοποίηση πολλών νέων δυνατοτήτων σε προγράμματα περιήγησης όπως το Service Workers
  • Το HTTPS επηρεάζει το SEO

Εάν δεν είστε πεπεισμένοι, διαβάστε το didmysiteneedhttps.com για να λάβετε την πλήρη εικόνα του γιατί κάθε ιστότοπος πρέπει να προβάλλεται με ασφάλεια.

Και αν δεν το καταλαβαίνετε, τότε η ζωή πρόκειται να γίνει πολύ πιο δύσκολη για εσάς.

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

Το Chrome 56 ξεκίνησε αυτήν την τάση επισημαίνοντας σελίδες με ευαίσθητα πεδία σύνδεσης ως "Μη ασφαλή", ενώ το Chrome 62 επέκτεινε αυτήν την προειδοποίηση σε όλες τις σελίδες HTTP που περιείχαν οποιοδήποτε τύπο πεδίου εισαγωγής. Επιπλέον, η προειδοποίηση εμφανίζεται σε όλες τις σελίδες HTTP σε κατάσταση ανώνυμης περιήγησης, ανεξάρτητα από το αν περιείχαν πεδίο εισαγωγής ή όχι.

Ο Firefox προειδοποιεί επίσης τους χρήστες όταν προσπαθούν να συμπληρώσουν μια μη ασφαλή φόρμα σύνδεσης.

Τώρα το Chrome αποφάσισε να τοποθετήσει αυτήν την προειδοποίηση σε όλες τις σελίδες HTTP στο μέλλον. Τελικά, το εικονίδιο δίπλα στην ετικέτα "Μη ασφαλές" θα αλλάξει και το κείμενο θα γίνει κόκκινο για να τονίσει περαιτέρω ότι οι σελίδες HTTP δεν είναι αξιόπιστες.

Για να αποτρέψετε τους χρήστες να δουν αυτήν την προειδοποίηση στον ιστότοπό σας, το μόνο που χρειάζεστε για να λάβετε ένα έγκυρο πιστοποιητικό SSL. Τα καλά νέα είναι ότι, κάτι τέτοιο δεν είναι τόσο δύσκολο ή ακριβό όσο ήταν. Στην πραγματικότητα θα σας δείξω πώς να αναπτύξετε το HTTPS στον ιστότοπό σας δωρεάν χρησιμοποιώντας το Cloudflare. Και δεν θα πάρει καθόλου χρόνο.

Γιατί το Cloudflare;

Το CloudFlare μπορεί να σας βοηθήσει να εξασφαλίσετε ένα πιστοποιητικό SSL δωρεάν, ανεξάρτητα από την υποδομή που διαθέτει από τον διακομιστή. Λειτουργεί επίσης για ιστότοπους που φιλοξενούνται σε πλατφόρμες που δεν παρέχουν πρόσβαση στο διακομιστή, όπως οι σελίδες GitHub, Ghost και τα παρόμοια.

Δεν χρειάζεται να εγκαταστήσετε τίποτα ή να γράψετε κώδικα Αυτό το καθιστά μια πραγματικά εξαιρετική επιλογή για την ανάπτυξη HTTPS στον ιστότοπό σας και ο χρόνος εγκατάστασης δεν θα κυριολεκτικά διαρκεί περισσότερο από 10 λεπτά.

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

Πώς λειτουργεί το Cloudflare

Το Cloudflare βρίσκεται ακριβώς στη μέση της κίνησης μεταξύ των επισκεπτών στον ιστότοπό σας και του διακομιστή σας. Οι επισκέπτες θα μπορούσαν να είναι κανονικοί άνθρωποι, ανιχνευτές και bots (όπως bot μηχανών αναζήτησης) ή hackers. Ενεργώντας ως μεσάζων μεταξύ του διακομιστή ιστού και των επισκεπτών στον ιστότοπό σας, το Cloudflare βοηθά στο φιλτράρισμα όλης της παράνομης επισκεψιμότητας, έτσι ώστε να περνούν μόνο τα καλά.

Τώρα ίσως αναρωτιέστε αν όλα αυτά θα μπορούσαν να έχουν δυσμενείς επιπτώσεις στην ταχύτητα του ιστότοπού σας, αλλά είναι ακριβώς το αντίθετο. Το Cloudflare διαθέτει κέντρα δεδομένων σε όλο τον κόσμο, οπότε θα χρησιμοποιήσει το πλησιέστερο τελικό σημείο στον επισκέπτη σας, το οποίο θα έκανε τον ιστότοπό σας πολύ πιο γρήγορο από ό, τι πριν.

Τώρα που γνωρίζουμε πώς λειτουργεί το Cloudflare, ας ρίξουμε μια ματιά στο πώς να ρυθμίσουμε έναν ιστότοπο στην υποδομή τους και πώς να αποκτήσουμε δωρεάν HTTPS. Η εστίαση εδώ θα δοθεί στις δυνατότητες που παρέχει το Cloudflare δωρεάν, αλλά λάβετε υπόψη ότι τα προγράμματα επί πληρωμή είναι επίσης διαθέσιμα με πολλές επιπλέον δυνατότητες.

Δημιουργία νέου ιστότοπου

Αφού εγγραφείτε στο Cloudflare, το πρώτο πράγμα που πρέπει να κάνετε είναι να προσθέσετε έναν τομέα και να σαρώσετε τις εγγραφές DNS.

Μόλις ολοκληρωθεί η σάρωση, θα εμφανιστούν όλες οι εγγραφές DNS στον τομέα. Μπορείτε να επιλέξετε τους δευτερεύοντες τομείς στους οποίους θέλετε να ενεργοποιήσετε το Cloudflare και να πραγματοποιήσετε τυχόν επιθυμητές τροποποιήσεις. Μόλις είστε έτοιμοι, κάντε κλικ στο Συνέχεια για να μεταβείτε στο επόμενο βήμα.

Επιλέξτε το δωρεάν πρόγραμμα και κάντε κλικ στο Συνέχεια.

Στη συνέχεια, θα πρέπει να αλλάξετε τους διακομιστές ονομάτων στον καταχωρητή τομέα σας σε αυτούς που παρέχονται από το Cloudflare. Η διαδικασία για αυτό σε κάθε καταχωρητή τομέα είναι ελαφρώς διαφορετική, οπότε επικοινωνήστε με τον καταχωρητή τομέα σας.

Δείτε πώς φαίνεται στο Namecheap:

Τώρα πρέπει να περιμένετε να αλλάξουν οι αλλαγές του διακομιστή ονομάτων. Κάντε κλικ στο Recheck Nameservers μετά από λίγο για να δείτε εάν ο ιστότοπός σας είναι πλέον ενεργός στο Cloudflare. Αυτό είναι το μεγαλύτερο μέρος της εγκατάστασης και μπορεί να διαρκέσει έως και 24 ώρες, αλλά κατά την εμπειρία μου χρειάστηκαν λιγότερο από 5 λεπτά.

Μόλις επικυρωθούν οι ενημερώσεις διακομιστή ονομάτων από το Cloudflare, ο ιστότοπός σας ενεργοποιείται στην υπηρεσία.

Εάν θέλετε να είστε απόλυτα σίγουροι ότι οι ρυθμίσεις DNS σας έχουν διαδοθεί παντού, το What My DNS παρέχει έναν τρόπο για να ελέγξετε ποια διεύθυνση IP επιλύει ο τομέας σας σε διαφορετικές τοποθεσίες.

Μπορείτε επίσης να χρησιμοποιήσετε digή nslookupστη γραμμή εντολών για να επαληθεύσετε τη διαμόρφωση DNS των τομέων σας.

Με αυτόν τον τρόπο, μπορείτε να είστε σίγουροι ότι όλη η επισκεψιμότητα που πηγαίνει στον τομέα σας δρομολογείται τώρα μέσω του Cloudflare.

Πριν ξεκινήσετε τη διαμόρφωση του Cloudflare, βεβαιωθείτε ότι το πρόγραμμα περιήγησής σας δεν χρησιμοποιεί τις παλιές εγγραφές DNS από την προσωρινή μνήμη του. Στο Chrome και στον Firefox, μπορείτε να το κάνετε διαγράφοντας το ιστορικό του προγράμματος περιήγησής σας.

Λήψη SSL δωρεάν

Το SSL εξακολουθεί να είναι premium υπηρεσία και πολλές Αρχές Πιστοποιητικών χρεώνουν σημαντικά ποσά πριν από την έκδοση πιστοποιητικού SSL. Δεν είναι κάτι που μπορείτε να πάρετε δωρεάν παντού, αλλά αυτό αλλάζει γρήγορα στον κλάδο.

Τώρα που έχετε το Cloudflare να κάθεται στη μέση της κίνησης ιστού σας, θα πρέπει να έχετε SSL στον τομέα σας αυτόματα. Μπορεί να χρειαστούν έως και 24 ώρες για να ενεργοποιηθεί το πιστοποιητικό, αλλά κατά την εμπειρία μου, δεν καθυστερεί καθόλου.

Μόλις ενεργοποιηθεί το πιστοποιητικό, φορτώστε τον ιστότοπό σας σε ένα πρόγραμμα περιήγησης. Θα πρέπει να δείτε τον ιστότοπο που προβάλλεται μέσω HTTPS και ένα ωραίο πράσινο λουκέτο στη γραμμή διευθύνσεων.

Εάν δείτε περισσότερες πληροφορίες σχετικά με το πιστοποιητικό, θα δείτε την Αρχή έκδοσης πιστοποιητικών που την εξέδωσε (Comodo στην περίπτωσή μου) και την ημερομηνία λήξης. Ένα από τα σπουδαία πράγματα για το Cloudflare είναι ότι η ανανέωση πιστοποιητικών γίνεται αυτόματα για εσάς, ώστε να μην ανησυχείτε εκεί.

Διαφορά μεταξύ ευέλικτου, πλήρους και πλήρους (αυστηρού) SSL

Το Cloudflare καθιστά πραγματικά εύκολο να αποκτήσετε SSL στον ιστότοπό σας δωρεάν χωρίς να διαμορφώσετε τίποτα, αλλά δεν είναι πάντα το ίδιο με την προβολή του ιστότοπού σας μέσω SSL απευθείας από την προέλευση.

Υπάρχουν τρεις υλοποιήσεις του SSL του Cloudflare. Το πρώτο, το οποίο λαμβάνετε από προεπιλογή, είναι το Flexible SSL. Σε αυτήν την περίπτωση, η επισκεψιμότητα κρυπτογραφείται μεταξύ των χρηστών του ιστότοπού σας και του Cloudflare, αλλά αυτή η κρυπτογράφηση δεν πηγαίνει μέχρι το διακομιστή προέλευσης. Το Cloudflare εξακολουθεί να μιλά στον διακομιστή σας μέσω απλού HTTP.

Αυτό σημαίνει ότι κάθε άτομο στη μέση (όπως οι πάροχοι δικτύου) μεταξύ Cloudflare και του διακομιστή σας μπορεί να δει την κίνηση. Εάν συλλέξετε ευαίσθητες πληροφορίες στον ιστότοπό σας, αποφύγετε να χρησιμοποιήσετε αυτήν την επιλογή.

Για να έχετε κρυπτογράφηση μέχρι τον διακομιστή προέλευσης, πρέπει να χρησιμοποιήσετε την εφαρμογή Πλήρης ή Πλήρης (Αυστηρή). Το πρώτο απαιτεί να εγκαταστήσετε ένα έγκυρο πιστοποιητικό στον διακομιστή σας, αλλά η αυθεντικότητα του πιστοποιητικού δεν θα επαληθευτεί, ώστε να μπορείτε να το αποκτήσετε με ένα αυτο-υπογεγραμμένο πιστοποιητικό. Από την άλλη πλευρά, η πλήρης (αυστηρή) εφαρμογή απαιτεί την εγκατάσταση ενός έγκυρου πιστοποιητικού SSL που έχει υπογραφεί από μια αξιόπιστη αρχή έκδοσης πιστοποιητικών.

Εάν δεν θέλετε να αγοράσετε SSL από τους συμπαθείς του Comodo, μπορείτε να λάβετε δωρεάν πιστοποιητικά Origin CA από το Cloudflare που μπορούν να χρησιμοποιηθούν είτε με τις επιλογές Πλήρες είτε Πλήρες (Αυστηρό), καθώς εμπιστεύονται το Cloudflare. Ωστόσο, λάβετε υπόψη ότι αυτά τα πιστοποιητικά εμπιστεύονται μόνο το Cloudflare, οπότε θα σταματήσουν να λειτουργούν εάν αποφασίσετε να αφαιρέσετε τον ιστότοπό σας από την υποδομή του Cloudflare.

Εάν δεν ελέγχετε το περιβάλλον του διακομιστή σας, πείτε εάν ο ιστότοπός σας φιλοξενείται σε σελίδες GitHub ή παρόμοιες πλατφόρμες, δεν θα μπορείτε να χρησιμοποιήσετε τις Πλήρεις ή Πλήρεις (Αυστηρές) εφαρμογές που σημαίνει ότι παρόλο που οι χρήστες σας βλέπουν HTTPS στη γραμμή διευθύνσεων, η επισκεψιμότητα δεν θα φτάσει μέχρι τον κρυπτογραφημένο διακομιστή προέλευσης.

Αλλά αυτό εξακολουθεί να είναι μια τεράστια βελτίωση σε σύγκριση με κανένα HTTPS, διότι πρόκειται να προστατεύσει τους χρήστες σας από το να είναι Man In The Middled από την πλευρά του πελάτη.

Ενίσχυση της εφαρμογής SSL

Ανεξάρτητα από την εφαρμογή SSL που επιλέγετε, υπάρχουν τρόποι για να το ενισχύσετε για να βεβαιωθείτε ότι οι χρήστες δεν θα έχουν ποτέ πρόσβαση στον ιστότοπό σας μέσω μη ασφαλούς HTTP. Το Qualys SSL Labs είναι ένα εργαλείο που σας βοηθά να εκτελέσετε μια δοκιμή στη διαμόρφωση SSL για να δείτε εάν υπάρχει περιθώριο βελτίωσης.

Ακόμα κι αν έχω βαθμολογία Α στον τομέα μου, αν διερευνήσετε τα αποτελέσματα, θα δείτε ότι υπάρχει σίγουρα περιθώριο βελτίωσης στην πλευρά του Key Exchange και του Cipher Strength.

Ας ρίξουμε μια ματιά σε μερικά πράγματα που μπορούμε να κάνουμε στο Cloudflare για να ενισχύσουμε το SSL μας και να βελτιώσουμε τις βαθμολογίες.

Επιβολή HTTPS παντού

Αφού μεταβείτε στο HTTPS, σίγουρα θέλετε να αποτρέψετε την πρόσβαση των χρηστών στον ιστότοπό σας μέσω μη ασφαλούς σύνδεσης. Μπορείτε να το κάνετε αυτό στο Cloudflare ανακατευθύνοντας 301 όλη την κίνηση HTTP σε HTTPS.

Στην περιοχή Ρυθμίσεις Crypto, βρείτε την επιλογή Να χρησιμοποιείται πάντα HTTPS και ενεργοποιήστε την.

Ενεργοποίηση αυστηρής ασφάλειας μεταφοράς HTTP (HSTS)

Έχω γράψει για το πώς το HSTS ενισχύει το SSL των ιστοτόπων σας στο παρελθόν, αλλά ας το αναλύσουμε ξανά σύντομα.

Το πρόβλημα με μόλις 301 ανακατεύθυνση κυκλοφορίας HTTP σε HTTPS είναι ότι το αρχικό μη ασφαλές αίτημα εξακολουθεί να υπερβαίνει το καλώδιο, πράγμα που σημαίνει ότι θα μπορούσε να διαβαστεί από οποιονδήποτε έχει πρόσβαση στην κίνηση.

Το HSTS είναι μια κεφαλίδα απόκρισης που επιδιορθώνει αυτό το πρόβλημα λέγοντας στο πρόγραμμα περιήγησης ότι ενδέχεται να μην υποβάλει ανασφαλές αίτημα σε έναν ιστότοπο για καθορισμένη χρονική διάρκεια.

Έτσι φαίνεται η κεφαλίδα:

strict-transport-security: max-age=31536000

Μόλις το πρόγραμμα περιήγησης λάβει αυτήν την κεφαλίδα, δεν θα υποβάλει ανασφαλές αίτημα στον ιστότοπό σας για τα επόμενα 31.536.000 δευτερόλεπτα (αξίας 1 έτους). Αντ 'αυτού, όλα τα αιτήματα HTTP θα αναβαθμιστούν εσωτερικά σε HTTPS πριν αποσταλούν μέσω του δικτύου.

Εάν θέλετε να αποτρέψετε την πρόσβαση σε όλους τους υποτομείς μέσω HTTP, θα χρειαστείτε την includeSubdomainsοδηγία. Μπορείτε επίσης να προσθέσετε την preloadοδηγία για να επιτρέψετε στους προμηθευτές προγραμμάτων περιήγησης να τοποθετούν τον ιστότοπό σας στο ίδιο το πρόγραμμα περιήγησης ως HTTPS μόνο.

strict-transport-security: max-age=31536000; includeSubdomains; preload

Μόλις ενεργοποιήσετε το HSTS στον τομέα σας, μπορείτε να είστε σίγουροι ότι όταν κάποιος φορτώσει τον ιστότοπό σας μέσω HTTPS, θα μπορεί να έχει πρόσβαση μόνο σε αυτόν μέσω του ασφαλούς σχήματος στο εξής.

Επομένως, προτού ενεργοποιήσετε το HSTS στον ιστότοπό σας, βεβαιωθείτε ότι είστε σίγουροι ότι όλη η επισκεψιμότητά σας θα προβάλλεται μέσω HTTPS, διαφορετικά θα αντιμετωπίσετε προβλήματα.

Για να το ενεργοποιήσετε στο Cloudflare, μεταβείτε στις ρυθμίσεις Crypto και μετακινηθείτε προς τα κάτω στην ενότητα HTTP Strict Transport Security (HSTS) . Κάντε κλικ στο Αλλαγή ρυθμίσεων HSTS, ενεργοποιήστε όλες τις σχετικές επιλογές και πατήστε Αποθήκευση .

Και σε περίπτωση που αναρωτιέστε, η υποστήριξη του προγράμματος περιήγησης για HSTS είναι αρκετά καλή.

Επιδιόρθωση αναφορών ασφαλούς σχήματος

Εάν ενσωματώσετε έναν παθητικό πόρο (όπως μια εικόνα) σε ασφαλή σελίδα, το πρόγραμμα περιήγησης εξακολουθεί να το φορτώνει καλά. Απλώς βγάζει το πράσινο λουκέτο από τη γραμμή διευθύνσεων. Μπορείτε να δείτε ένα παράδειγμα αυτού του σφάλματος εδώ.

Εάν ελέγξετε την κονσόλα του προγράμματος περιήγησης, θα δείτε ορισμένες προειδοποιήσεις ή σφάλματα που δείχνουν τον πόρο που ενσωματώθηκε με ασφάλεια. Σε αυτήν την περίπτωση είναι

HTTP image

Για να το διορθώσετε, απλώς αλλάξτε το σχήμα σε HTTPS και όλα θα πάνε καλά.

HTTP image

Εάν έχετε ενσωματώσει ανασφαλή ποσότητα περιεχομένου στον ιστότοπό σας, η εύρεση και επιδιόρθωση του καθενός θα μπορούσε να είναι αρκετά κουραστική. Ωστόσο, το Cloudflare μπορεί να σας βοηθήσει ξανά εδώ με τη δυνατότητα Αυτόματη επανεγγραφή HTTPS.

Για να είστε διπλά βέβαιοι ότι κανένα περιεχόμενο στον ιστότοπό σας δεν μπορεί να προβληθεί ποτέ με ασφάλεια, εξετάστε το ενδεχόμενο να εφαρμόσετε μια Πολιτική ασφάλειας περιεχομένου στον ιστότοπό σας.

Τώρα ας δούμε πώς οι παραπάνω αλλαγές σε επηρέασαν την αναφορά SSL Labs. Επανέλαβα τη δοκιμή στον τομέα μου και τώρα λαμβάνουμε βαθμολογία A +.

Εάν ελέγξετε τις μεμονωμένες βαθμολογίες στο γράφημα, δεν έχει αλλάξει τίποτα, αλλά εξακολουθούμε να έχουμε μια πραγματικά ασφαλή εφαρμογή SSL δωρεάν και σε λίγα λεπτά.

Εναλλακτικές λύσεις στο Cloudflare για δωρεάν SSL

Εάν προτιμάτε να μην χρησιμοποιείτε το Cloudflare για κάποιο λόγο, υπάρχουν άλλοι τρόποι με τους οποίους μπορείτε να αποκτήσετε δωρεάν τον ιστότοπό σας στο HTTPS. Ακολουθούν δύο επιλογές που μπορείτε να δοκιμάσετε:

Ας κρυπτογραφήσουμε

Εάν έχετε τον έλεγχο του διακομιστή σας, μπορείτε να αναπτύξετε γρήγορα HTTPS στον ιστότοπό σας χρησιμοποιώντας το Let's Encrypt. Προσφέρουν δωρεάν πιστοποιητικά SSL που διαρκούν τρεις μήνες και μπορούν να ανανεωθούν αυτόματα.

Ακόμα κι αν δεν έχετε πρόσβαση διακομιστή, επικοινωνήστε με τον οικοδεσπότη Ιστού σας. Ορισμένοι κεντρικοί υπολογιστές θα σας επιτρέψουν να χρησιμοποιήσετε το Let's Encrypt SSL χωρίς να παρέχετε πρόσβαση στο κέλυφος.

Διαχειριστής πιστοποιητικών Amazon AWS

Η Amazon εκδίδει και ανανεώνει αυτόματα πιστοποιητικά SSL για πελάτες στην υποδομή Amazon Web Services (AWS). Με αυτόν τον τρόπο, μπορείτε να ορίσετε και να ξεχάσετε το HTTPS στον ιστότοπό σας εάν χρησιμοποιείτε πόρους AWS όπως το Cloudfront.

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

Εάν σας άρεσε αυτό το άρθρο, μοιραστείτε το με άλλους που μπορεί να επωφεληθούν από την ανάγνωσή του. Παρεμπιπτόντως, ρίξτε μια ματιά στο ιστολόγιό μου στο freshman.tech για άρθρα σχετικά με την ανάπτυξη ιστού. Ευχαριστώ για την ανάγνωση.