Skip to content
Λογότυπο GrCode Club σε μαύρο Λογότυπο GrCode Club σε λευκό GrCode Club

GrCode Club

Λογότυπο GrCode Club σε μαύρο Λογότυπο GrCode Club σε λευκό GrCode Club

GrCode Club

  • Αρχική
  • Προγραμματισμός
    • Developer
    • Web Development
    • Γλώσσες Προγραμματισμού
    • Docker
  • Δίκτυα
    • Βασικές Πληροφορίες
    • Πρωτόκολλα Δικτύων
    • Υπηρεσίες & Θύρες
    • Cloud Computing
  • Λειτουργικά Συστήματα
    • Βασικές Πληροφορίες
    • Linux: Οδηγός
    • Microsoft Windows
  • Κυβερνοασφάλεια
    • Βασικές Πληροφορίες
    • Κυβερνοεπιθέσεις
    • Εργαλεία Κυβερνοασφάλειας
  • Hardware
    • Βασικές Πληροφορίες
    • Εξαρτήματα Υπολογιστή
    • Οθόνες & Τηλεοράσεις
    • Υποστήριξη Υπολογιστή
    • Πιστοποίηση IP
  • Κινητά
    • Βασικές Πληροφορίες
    • Android
    • iPhone
  • Κοινότητα
    • Σύνδεση / Λογαριασμός
    • Μέλη
    • Γίνε Content Creator
    • Projects Μελών
    • Ξεκινήστε να Μαθαίνετε
  • Αρχική
  • Προγραμματισμός
    • Developer
    • Web Development
    • Γλώσσες Προγραμματισμού
    • Docker
  • Δίκτυα
    • Βασικές Πληροφορίες
    • Πρωτόκολλα Δικτύων
    • Υπηρεσίες & Θύρες
    • Cloud Computing
  • Λειτουργικά Συστήματα
    • Βασικές Πληροφορίες
    • Linux: Οδηγός
    • Microsoft Windows
  • Κυβερνοασφάλεια
    • Βασικές Πληροφορίες
    • Κυβερνοεπιθέσεις
    • Εργαλεία Κυβερνοασφάλειας
  • Hardware
    • Βασικές Πληροφορίες
    • Εξαρτήματα Υπολογιστή
    • Οθόνες & Τηλεοράσεις
    • Υποστήριξη Υπολογιστή
    • Πιστοποίηση IP
  • Κινητά
    • Βασικές Πληροφορίες
    • Android
    • iPhone
  • Κοινότητα
    • Σύνδεση / Λογαριασμός
    • Μέλη
    • Γίνε Content Creator
    • Projects Μελών
    • Ξεκινήστε να Μαθαίνετε

.htaccess στο Apache: Ρυθμίσεις Ασφάλειας, Redirects και Cache

.htaccess στο Apache: Ρυθμίσεις Ασφάλειας, Redirects και Cache

Το .htaccess είναι αρχείο ρυθμίσεων ανά κατάλογο για τον Apache HTTP Server. Μπορεί να ελέγξει λειτουργίες όπως redirects, πρόσβαση σε αρχεία, headers και caching, εφόσον ο server επιτρέπει τις αντίστοιχες οδηγίες μέσω AllowOverride. Οι ρυθμίσεις του επηρεάζουν τα αιτήματα που εξυπηρετούνται από τον συγκεκριμένο κατάλογο και τους υποκαταλόγους του.

Προσοχή: Πριν αλλάξεις το αρχείο, κράτησε αντίγραφο ασφαλείας και βεβαιώσου ότι έχεις πρόσβαση στο hosting ή στο αρχείο μέσω FTP/SSH. Λανθασμένη σύνταξη ή οδηγία που δεν υποστηρίζεται μπορεί να προκαλέσει HTTP 500. Οι παρακάτω κανόνες είναι παραδείγματα και πρέπει να προσαρμόζονται στην έκδοση Apache και στη διαμόρφωση του server.

Τι μπορείς να ρυθμίσεις μέσω .htaccess

  • Προστασία αρχείων και περιορισμός πρόσβασης.
  • Ανακατευθύνσεις HTTP και HTTPS.
  • Κανόνες URL και permalinks.
  • Προστασία καταλόγων και απενεργοποίηση directory listing.
  • HTTP security headers, όταν υποστηρίζονται τα αντίστοιχα modules.
  • Cache και συμπίεση περιεχομένου, εφόσον επιτρέπονται από τον server.

Απενεργοποίηση directory listing

Η οδηγία Options -Indexes αποτρέπει την εμφάνιση λίστας αρχείων όταν ένας κατάλογος δεν διαθέτει index αρχείο και ο server έχει ενεργοποιημένο το directory listing.

Options -Indexes

Προστασία κρίσιμων αρχείων WordPress

Το wp-config.php περιέχει ρυθμίσεις σύνδεσης στη βάση δεδομένων και κλειδιά ασφαλείας. Μπορείς να περιορίσεις την πρόσβαση HTTP στο αρχείο με σύνταξη συμβατή με Apache 2.4:

<Files "wp-config.php">
    Require all denied
</Files>

Για αρχεία που ξεκινούν με τελεία, όπως το .htaccess, η πρόσβαση πρέπει επίσης να περιορίζεται. Έλεγξε ότι οι κανόνες δεν εμποδίζουν νόμιμες λειτουργίες του hosting.

<FilesMatch "^\.">
    Require all denied
</FilesMatch>

Περιορισμός πρόσβασης στο xmlrpc.php

Το xmlrpc.php παρέχει λειτουργίες απομακρυσμένης επικοινωνίας στο WordPress. Αν δεν χρησιμοποιείς εφαρμογές ή integrations που το χρειάζονται, μπορείς να εξετάσεις τον περιορισμό του. Μην το απενεργοποιήσεις χωρίς να ελέγξεις πρώτα τις εξαρτήσεις του site.

<Files "xmlrpc.php">
    Require all denied
</Files>

Ο περιορισμός του XML-RPC δεν αντικαθιστά το MFA, την προστασία σύνδεσης, τις ενημερώσεις ή την παρακολούθηση. Αν χρειάζεσαι XML-RPC, προτίμησε ελεγχόμενη πρόσβαση αντί για καθολικό αποκλεισμό.

Αποτροπή εκτέλεσης PHP στον φάκελο uploads

Ο φάκελος wp-content/uploads προορίζεται κυρίως για αρχεία πολυμέσων. Αν ο server εκτελεί PHP μέσα σε αυτόν τον φάκελο, ένα κακόβουλο αρχείο που ανέβηκε εκεί θα μπορούσε να εκτελεστεί. Σε Apache 2.4 με ενεργό το κατάλληλο module, ένα αρχείο .htaccess μέσα στον ίδιο τον φάκελο uploads μπορεί να περιλαμβάνει:

<FilesMatch "\.php$">
    Require all denied
</FilesMatch>

Η ρύθμιση πρέπει να ελεγχθεί στο πραγματικό περιβάλλον. Σε ορισμένες εγκαταστάσεις PHP-FPM ή Nginx, οι κανόνες .htaccess δεν εφαρμόζονται ή δεν επαρκούν. Η ασφαλέστερη λύση είναι να απαγορεύεται η εκτέλεση script στον συγκεκριμένο κατάλογο και σε επίπεδο server configuration.

Ανακατεύθυνση HTTP σε HTTPS

Αν το πιστοποιητικό TLS είναι σωστά εγκατεστημένο και το site εξυπηρετείται μέσω HTTPS, μπορείς να ανακατευθύνεις τα αιτήματα HTTP. Σε περιβάλλοντα πίσω από proxy ή CDN, επιβεβαίωσε πρώτα πώς μεταφέρεται η πληροφορία του αρχικού πρωτοκόλλου, ώστε να αποφύγεις redirect loops.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Βασικά HTTP Security Headers

Τα security headers δίνουν οδηγίες στον browser για το πώς θα χειριστεί το περιεχόμενο. Οι παρακάτω τιμές είναι ενδεικτικές. Πριν ενεργοποιήσεις Content Security Policy ή HSTS, έλεγξε όλες τις λειτουργίες, τα subdomains, τα εξωτερικά scripts και τις ανάγκες του site.

Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set X-Frame-Options "SAMEORIGIN"

Το Header απαιτεί το module mod_headers. Για Content-Security-Policy χρειάζεται πολιτική προσαρμοσμένη στους πόρους που φορτώνει πραγματικά η εφαρμογή. Μην αντιγράψεις μια αυστηρή CSP χωρίς δοκιμή, γιατί μπορεί να διακόψει scripts, styles ή ενσωματώσεις.

Περιορισμός πρόσβασης σε συγκεκριμένο αρχείο

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

<Files "private-report.txt">
    Require ip 203.0.113.10
</Files>

Η διεύθυνση 203.0.113.10 είναι δεσμευμένη για παραδείγματα τεκμηρίωσης και πρέπει να αντικατασταθεί με την πραγματική επιτρεπόμενη IP.

Έλεγχος πριν και μετά την αλλαγή

  1. Δημιούργησε αντίγραφο του υπάρχοντος .htaccess.
  2. Έλεγξε την έκδοση Apache και τα modules που είναι ενεργά.
  3. Πρόσθεσε μία αλλαγή κάθε φορά.
  4. Έλεγξε την αρχική σελίδα, τη σύνδεση, τις φόρμες, τα REST endpoints και τα permalinks.
  5. Έλεγξε τα HTTP status codes και τα server error logs.
  6. Αν εμφανιστεί HTTP 500 ή απρόσμενο redirect, επανάφερε αμέσως το προηγούμενο αρχείο.

Συχνές ερωτήσεις

Ισχύει το .htaccess σε κάθε server;

Όχι. Το .htaccess είναι χαρακτηριστικό του Apache και εφαρμόζεται μόνο όταν ο server επιτρέπει τις σχετικές οδηγίες. Σε Nginx οι αντίστοιχοι κανόνες ορίζονται στη διαμόρφωση του server.

Μπορώ να προστατεύσω ολόκληρο το WordPress μόνο με .htaccess;

Όχι. Το .htaccess είναι ένα μόνο επίπεδο άμυνας. Χρειάζονται ενημερώσεις, ασφαλείς κωδικοί, MFA, περιορισμένα δικαιώματα, backups, ασφαλής κώδικας και παρακολούθηση.

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

Social Media

  • Facebook
  • X
  • Instagram
  • TikTok
  • YouTube
  • Linkedin
  • Discord
Email Επικοινωνίας

info@grcodeclub.gr

Για Τεχνικά Θέματα

support@grcodeclub.gr

Πολιτική Cookies (ΕΕ)

Πολιτική απορρήτου

Όροι και Προϋποθέσεις

GrCode Club by @dimitridedou
Διαχείριση Συγκατάθεσης
Για να παρέχουμε την καλύτερη εμπειρία, χρησιμοποιούμε τεχνολογίες όπως cookies για την αποθήκευση ή/και την πρόσβαση σε πληροφορίες συσκευών. Η συγκατάθεση για τις εν λόγω τεχνολογίες θα μας επιτρέψει να επεξεργαστούμε δεδομένα προσωπικού χαρακτήρα, όπως συμπεριφορά περιήγησης ή μοναδικά αναγνωριστικά σε αυτόν τον ιστότοπο. Η μη συγκατάθεση ή η ανάκληση της συγκατάθεσης, μπορεί να επηρεάσει αρνητικά ορισμένες λειτουργίες και δυνατότητες.
Λειτουργικά Πάντα ενεργό
Η τεχνική αποθήκευση ή πρόσβαση είναι απολύτως απαραίτητη για τον νόμιμο σκοπό της δυνατότητας χρήσης συγκεκριμένης υπηρεσίας που ζητείται ρητά από τον συνδρομητή ή τον χρήστη ή με αποκλειστικό σκοπό τη μετάδοση επικοινωνίας μέσω δικτύου ηλεκτρονικών επικοινωνιών.
Προτιμήσεις
Η τεχνική αποθήκευση ή πρόσβαση είναι απαραίτητη για τον νόμιμο σκοπό της αποθήκευσης προτιμήσεων που δεν ζητούνται από τον συνδρομητή ή τον χρήστη.
Στατιστικά
Η τεχνική αποθήκευση ή πρόσβαση που χρησιμοποιείται αποκλειστικά για στατιστικούς σκοπούς. Η τεχνική αποθήκευση ή πρόσβαση που χρησιμοποιείται αποκλειστικά για ανώνυμους στατιστικούς σκοπούς. Χωρίς κλήτευση, η εθελοντική συμμόρφωση εκ μέρους του Παρόχου Υπηρεσιών Διαδικτύου ή πρόσθετες καταγραφές από τρίτο μέρος, οι πληροφορίες που αποθηκεύονται ή ανακτώνται για το σκοπό αυτό από μόνες τους δεν μπορούν συνήθως να χρησιμοποιηθούν για την αναγνώρισή σας.
Εμπορικής Προώθησης
Η τεχνική αποθήκευση ή πρόσβαση απαιτείται για τη δημιουργία προφίλ χρηστών, για την αποστολή διαφημίσεων ή για την καταγραφή του χρήστη σε έναν ιστότοπο ή σε διάφορους ιστότοπους για παρόμοιους σκοπούς εμπορικής προώθησης.
  • Διαχείριση επιλογών
  • Διαχείριση υπηρεσιών
  • Manage {vendor_count} vendors
  • Διαβάστε περισσότερα για αυτούς τους σκοπούς
Προβολή προτιμήσεων
  • {title}
  • {title}
  • {title}