Μετάβαση στο περιεχόμενο

Ρυθμίσεις cookies

Επιλέξτε ανά κατηγορία ποια cookies επιτρέπετε. Μπορείτε να αλλάξετε την επιλογή σας οποιαδήποτε στιγμή μέσω των Ρυθμίσεων cookies στο κάτω μέρος κάθε σελίδας. Δήλωση απορρήτου

Απαραίτητα

Πάντα ενεργά

Χρειάζονται για τη σύνδεση, για να διατηρείται το καλάθι σας και για να θυμόμαστε τις επιλογές σας. Είναι πάντα ενεργά.

Ποια cookies;
  • weboke_sessie, weboke_klant, weboke_remember: η συνεδρία σας και η παραμονή σε σύνδεση
  • weboke_basket: το καλάθι σας
  • wkBtwIncl: εμφάνιση τιμών με ή χωρίς ΦΠΑ
  • wok_cookies: η επιλογή σας για τα cookies, 12 μήνες

Μετρούν ποια διαφήμιση οδηγεί σε επίσκεψη ή παραγγελία, ώστε να μην πληρώνουμε για διαφημίσεις που δεν αποδίδουν.

Ποια cookies;
  • Google Ads μέσω Google Tag Manager (_gcl_au, _gcl_aw), έως 90 ημέρες
  • OpenAI Ads, διαφημίσεις στο ChatGPT
  • wok_aff: μέσω ποιου συνεργάτη ήρθατε σε εμάς (πρόγραμμα συνεργατών), 60 ημέρες

4,6

Χώρα και γλώσσα

Κάθε χώρα έχει τη δική της ιστοσελίδα, με τιμές και ΦΠΑ της χώρας αυτής.

Προβολή

Https και το certificate

Ενότητα 3: Διεύθυνση, https και χρήστες · Χρόνος ανάγνωσης: 8 λεπτά

Μαθησιακός στόχος: Μετά από αυτό το μάθημα θα μπορείτε να ρυθμίσετε έναν ιστότοπο WordPress πλήρως σε https και θα γνωρίζετε τι κάνουν το WordPress-adres και το siteadres.

Βασικές έννοιες: TLS, certificate, Let's Encrypt, αυτόματη ανανέωση, WordPress-adres (siteurl), siteadres (home), WP_HOME και WP_SITEURL, HSTS, αποκλεισμός πρόσβασης

Τι κάνει το https

Με το https όλα όσα ανταλλάσσονται μεταξύ browser και server κρυπτογραφούνται: κωδικοί πρόσβασης, φόρμες, cookies, ακόμη και απλές σελίδες. Χωρίς https, οποιοσδήποτε βρίσκεται στο ίδιο δίκτυο (ένα δημόσιο wifi, ένα παραβιασμένο router) μπορεί να διαβάσει τα δεδομένα και να τροποποιήσει ακόμη και τη σελίδα. Οι browsers εμφανίζουν έναν ιστότοπο χωρίς https ως "μη ασφαλή" και ορισμένες λειτουργίες (όπως η τοποθεσία ή η κάμερα) λειτουργούν μόνο με https.

Η κρυπτογράφηση ονομάζεται TLS. Για να αποδειχθεί ότι ο browser επικοινωνεί πράγματι με το example.com και όχι με κάποιον ενδιάμεσο, ο server διαθέτει ένα certificate: μια ψηφιακή απόδειξη, υπογεγραμμένη από έναν εκδότη που εμπιστεύονται οι browsers. Το certificate αναφέρει τα ονόματα για τα οποία ισχύει και μέχρι πότε.

Δωρεάν certificates και ανανέωση

Το Let's Encrypt εκδίδει δωρεάν certificates. Σχεδόν κάθε πάροχος φιλοξενίας τα αιτείται αυτόματα και τα ανανεώνει επίσης αυτόματα. Ένα certificate από το Let's Encrypt ισχύει πλέον για 90 ημέρες, και το Let's Encrypt έχει ανακοινώσει ότι θα μειώσει σταδιακά αυτή τη διάρκεια ισχύος σε 45 ημέρες. Η χειροκίνητη ανανέωση επομένως δεν αποτελεί επιλογή: πρέπει να γίνεται αυτόματα.

Ένα επί πληρωμή certificate δεν κρυπτογραφεί καλύτερα. Η διαφορά βρίσκεται στον επιπλέον έλεγχο του οργανισμού (και μερικές φορές σε μια εγγύηση). Για τους περισσότερους ιστοτόπους, ένα δωρεάν certificate είναι απολύτως επαρκές.

Σε τι πρέπει να προσέξετε:

  • Το certificate πρέπει να καλύπτει κάθε όνομα που μπορεί να πληκτρολογήσει ένας επισκέπτης: example.com αλλά και www.example.com. Ακόμη και το όνομα που κάνει μόνο ανακατεύθυνση, γιατί ο browser ελέγχει το certificate πριν από την ανακατεύθυνση.
  • Η αυτόματη ανανέωση λειτουργεί μόνο αν το DNS δείχνει προς τον server σας. Αν έχετε μεταφέρει το DNS ή έχετε τοποθετήσει μπροστά έναν proxy (όπως το Cloudflare), ελέγξτε αν η ανανέωση συνεχίζει να λειτουργεί.
  • Μια εγγραφή CAA στο DNS μπορεί να καθορίσει ποιοι εκδότες επιτρέπεται να δημιουργούν certificates. Αν το Let's Encrypt δεν περιλαμβάνεται εκεί, η αίτηση αποτυγχάνει (μάθημα 5.2 του μαθήματος DNS).

Δύο διευθύνσεις στο WordPress

Στο Ρυθμίσεις > Γενικά υπάρχουν δύο διευθύνσεις. Φαίνονται περιττά διπλές, αλλά σημαίνουν κάτι διαφορετικό:

ΠεδίοΣτη βάση δεδομένωνΣημασία
WordPress-adres (URL)siteurlΠού βρίσκονται τα αρχεία του WordPress (wp-admin, wp-includes)
Siteadres (URL)homeΗ διεύθυνση που χρησιμοποιούν οι επισκέπτες

Συνήθως είναι ίδιες, για παράδειγμα και οι δύο https://example.com. Διαφέρουν μόνο όταν το WordPress βρίσκεται σε υποφάκελο αλλά ο ιστότοπος πρέπει να εμφανίζεται στον κύριο φάκελο.

Με αυτές τις διευθύνσεις το WordPress δημιουργεί όλους τους συνδέσμους: προς σελίδες, stylesheets, εικόνες, τον Πίνακα Ελέγχου. Αν εδώ αναγράφεται http://, τότε το WordPress δημιουργεί σελίδες με συνδέσμους http://, ακόμη και αν ο επισκέπτης έρχεται μέσω https. Αυτό δημιουργεί μικτό περιεχόμενο (mixed content) (μάθημα 3.2) και ανακατευθύνσεις μπρος πίσω.

Μετάβαση ενός ιστοτόπου σε https

Αν έχετε έναν υπάρχοντα ιστότοπο σε http, αυτά είναι τα βήματα:

  1. Αίτηση certificate και για τα δύο ονόματα και έλεγχος ότι το https://example.com λειτουργεί (θα δείτε τότε μια σελίδα WordPress, ίσως ακόμη χωρίς μορφοποίηση).
  2. αντιγράφου ασφαλείας (μάθημα 8.1).
  3. Ρύθμιση και των δύο διευθύνσεων στο Ρυθμίσεις > Γενικά σε https:// και αποθήκευση. Θα αποσυνδεθείτε· συνδεθείτε ξανά μέσω https.
  4. Μετατροπή παλιών συνδέσμων στο περιεχόμενο από http://example.com σε https://example.com. Κάντε το αυτό με ένα εργαλείο που κατανοεί σειριοποιημένα δεδομένα (serialized data), όπως το wp search-replace ή ένα πρόσθετο αναζήτησης και αντικατάστασης (μάθημα 3.2), ποτέ με απλή εντολή SQL.
  5. Ανακατεύθυνση: ρυθμίστε τον web server ώστε να στέλνει όλα τα αιτήματα σε http με κωδικό 301 προς https (μάθημα 3.2). Πολλοί πάροχοι φιλοξενίας διαθέτουν ένα σχετικό κουτάκι επιλογής· διαφορετικά, μερικές γραμμές στο .htaccess.
  6. Έλεγχος με την άσκηση αυτού του μαθήματος και αυτήν του μαθήματος 3.2.

Αποκλεισμός πρόσβασης: όταν η διεύθυνση είναι λανθασμένη

Αν πληκτρολογήσετε κάποιο τυπογραφικό λάθος στις διευθύνσεις (htps://, λανθασμένο domain), το WordPress θα σας στείλει μετά την αποθήκευση σε αυτή τη λανθασμένη διεύθυνση. Δεν μπορείτε πλέον να προσπελάσετε τον Πίνακα Ελέγχου. Μην πανικοβάλλεστε, υπάρχουν δύο διέξοδοι:

Μέσω του wp-config.php. Τοποθετήστε πάνω από τη γραμμή "σταματήστε την επεξεργασία":

define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

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

Μέσω phpMyAdmin. Ανοίξτε τον πίνακα wp_options και προσαρμόστε τις τιμές των siteurl και home.

HSTS: να θυμάται ο browser

Με την κεφαλίδα HSTS (Strict-Transport-Security) ο server λέει στον browser: "έλα εδώ για το προσεχές διάστημα μόνο μέσω https." Ο browser στη συνέχεια μετατρέπει μόνος του κάθε http:// σε https://, χωρίς να κάνει πρώτα ένα μη προστατευμένο αίτημα.

Strict-Transport-Security: max-age=31536000; includeSubDomains

Το HSTS είναι ένα καλό επιπλέον βήμα, αλλά με μια προειδοποίηση: ένας browser που έχει δει το HSTS αρνείται στη συνέχεια να ανοίξει τον ιστότοπο χωρίς έγκυρο certificate, ακόμη και με την επιλογή "συνέχεια ούτως ή άλλως". Με το includeSubDomains αυτό ισχύει για κάθε subdomain. Αν έχετε ένα subdomain χωρίς certificate (για παράδειγμα ένα παλιό εσωτερικό σύστημα), αυτό γίνεται μετά το HSTS μη προσβάσιμο. Ξεκινήστε λοιπόν με μικρό max-age (για παράδειγμα μία ημέρα, 86400), ελέγξτε τα πάντα, και έπειτα παρατείνετε το.

Στην πράξη: έτσι φαίνεται σε ένα panel

Ως παράδειγμα χρησιμοποιούμε το DirectAdmin. Στο cPanel η ενότητα ονομάζεται SSL/TLS Status (AutoSSL), στο Plesk SSL/TLS Certificates.

  1. Ανοίξτε SSL-certificaten στο domain σας και επιλέξτε Δωρεάν και αυτόματο certificate από το Let's Encrypt.
  2. Επιλέξτε example.com και www.example.com και αιτηθείτε το certificate.
  3. Στις ρυθμίσεις domain, ενεργοποιήστε το κουτάκι που στέλνει πάντα τους επισκέπτες σε https (στο DirectAdmin: Forceer SSL met https omleiding). Χρησιμοποιήστε μόνο έναν τρόπο ανακατεύθυνσης: δύο διαφορετικοί ταυτόχρονα μπορεί να προκαλέσουν βρόχο ("πάρα πολλές ανακατευθύνσεις").
  4. Πηγαίνετε στο WordPress στο Ρυθμίσεις > Γενικά και ορίστε και τις δύο διευθύνσεις σε https://.

Σύνοψη

  • Το https κρυπτογραφεί όλα όσα ανταλλάσσονται μεταξύ browser και server· το certificate αποδεικνύει ποιος είναι ο server.
  • Τα δωρεάν certificates του Let's Encrypt έχουν σύντομη διάρκεια ισχύος και ανανεώνονται αυτόματα· πρέπει να καλύπτουν κάθε όνομα που πληκτρολογεί ένας επισκέπτης.
  • Το WordPress-adres (siteurl) και το siteadres (home) πρέπει να είναι και τα δύο σε https://.
  • Αν αποκλειστείτε λόγω λανθασμένης διεύθυνσης, επαναφέρετε με WP_HOME και WP_SITEURL στο wp-config.php ή στο phpMyAdmin.
  • Το HSTS είναι ένα καλό επιπλέον βήμα· ξεκινήστε με σύντομη διάρκεια ισχύος.

Κουίζ

1. Ο ιστότοπός σας λειτουργεί σε https, αλλά στο Ρυθμίσεις > Γενικά και οι δύο διευθύνσεις παραμένουν σε http://. Τι παρατηρείτε;



2. Αποθηκεύσατε κατά λάθος ένα τυπογραφικό λάθος στο siteadres και δεν μπορείτε πλέον να μπείτε στον Πίνακα Ελέγχου. Τι βοηθάει;



3. Γιατί πρέπει το certificate να καλύπτει και το www.example.com, αν αυτό το όνομα απλώς ανακατευθύνει στο example.com;



4. Ποιος είναι ο κίνδυνος του HSTS με μεγάλο max-age και includeSubDomains;



Άσκηση

Άσκηση A3.1: Είναι σωστό το πιστοποιητικό σας; Συμπληρώστε τη διεύθυνση του ιστοτόπου σας. Το πρόγραμμα δημιουργεί μια σύνδεση TLS με το domain χωρίς www και με το www (αν υπάρχει) και ελέγχει: είναι το certificate έγκυρο και αξιόπιστο, καλύπτει και τα δύο ονόματα, ισχύει για περισσότερες από 14 ημέρες, και στέλνει ο ιστότοπος κεφαλίδα HSTS; Αν λείπει το HSTS, αυτό εμφανίζεται πορτοκαλί με εξήγηση, όχι ως σφάλμα.

Άσκηση A3.1: Είναι σωστό το πιστοποιητικό σας;


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

Περαιτέρω ανάγνωση

Αυτά τα άρθρα περιγράφουν τα βήματα στα panel του WebOké· σε άλλα panel λειτουργούν με παρόμοιο τρόπο.

Μια στιγμή…

Ρυθμίστε τα domains σας

Ρυθμίστε για κάθε domain τους nameservers, τη σύνδεση με το hosting σας και ποιος θα είναι ο κάτοχος.

Φόρτωση των domains σας…