Πώς να κάνω το Drupal site μου πιο ασφαλές;

Συνεχίζοντας τα άρθρα σχετικά με την ασφαλή φιλοξενία ιστοσελιδων ( ασφάλεια των sites από επιθέσεις ) αυτή τη φορά θα ασχοληθούμε με το Drupal και την ασφάλειά του.

Οφείλουμε να επισημάνουμε ότι ο πολύ αυστηρός έλεγχος του κώδικα από το community του Drupal, αλλά και τα αστραπιαία αντανακλαστικά του Drupal Security team σε κάθε δημοσιευμένο vulnerability, το έχουν κατατάξει σε μία θέση ανάμεσα όχι μόνο ανάμεσα στις κορυφαίες τεχνολογικά πλατφόρμες αλλά και ανάμεσα στις πιο ασφαλείς επίσης.

Θα συνεχίσουμε τα άρθρα με την γνώριμη σειρά server side και application side security.

Server-side Drupal securing

backups

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

webserver, filesystem, permissions

Η πλατφόρμα του Drupal, από την αρχική ακόμα εγκατάσταση είναι αρκετά ασφαλής, ειδικά αν είστε σε κάποιο πακέτο φιλοξενίας (πχ SSD hosting) δεν χρειάζεται να ανησυχείτε ιδιαίτερα, ειδικά δε αν χρησιμοποιήσετε κάποιο από τα script αυτόματης εγκατάστασης που προσφέρονται.

Ο πιο ασφαλής τρόπος που υποδεικνύεται από την κοινότητα είναι η χρήση 2 χρηστών ως εξής:

drupal_admin: ένας χρήστης στον server ο οποίος διαχειρίζεται το Drupal site (administrator)
site_admin: ο ιδιοκτήτης του φιλοξενούμενου site (πχ ένας πελάτης)

ownership

Τα Core modules/themes αρχεία και φάκελοι πρέπει να ανήκουν σε: drupal_admin:www-data
Ενώ τα αρχεία των φιλοξενούμενων sites (modules/themes/files) να ανήκουν σε: site_admin:www-data

*Αυτό αφορά την βέλτιστη πρακτική ασφαλείας σε περίπτωση που έχετε τον δικό σας server (πχ σε VPS hosting), χωρίς κάποιο Control Panel ή πρόσθετη ασφάλεια όπως SuPHP/SuExec και ισχύει για την περίπτωση που ο webserver ή η PHP τρέχει με group www-data.

Permissions

Core modules/themes φάκελοι: rwxr-x---
Core modules/themes αρχεία: rw-r-----
Φιλοξενούμενα sites modules/themes φάκελοι: rwxr-x---
Φιλοξενούμενων sites modules/themes αρχεία: rw-r-----
Φιλοξενούμενα sites φάκελος "files": rwxrwx---
Φιλοξενούμενων sites αρχεία κάτω από τους φακέλους με όνομα "files": rw-rw----
Φιλοξενούμενωνsites υποφάκελοι κάτω από τους φακέλους με όνομα "files": rwxrwx---

Drupal Security

Drupal modules for security

Το Security Review module, είναι ένα από τα πιο δημοφιλή, το οποίο εκτελεί αυτόματους ελέγχους για permissions, για μη ασφαλή tags στο content, επιτρεπτά extensions για τα uploaded files, κλπ. Προτείνεται σίγουρα ως το πρώτο βήμα για τον έλεγχο ασφαλείας της Drupal ιστοσελίδας σας.

Το Login Security module, σας επιτρέπει να προσθέσετε επιπλέον ελέγχους και όρια στο ενσωματωμένο σύστημα διαχείρισης Login του Drupal.

Ακόμη, τα modules: Hacked! και MD5 Check σας επιτρέπουν να συγκρίνετε γρήγορα όλα τα αρχεία της εγκατάστασης του site σας με τα αντίστοιχα του επίσημου repository.

Τέλος όπως και για κάθε CMS, πρέπει πάντα να συμβουλευόμαστε την συνήθως ενημερωμένη συγκεντρωτική σελίδα σχετικά με τις πρακτικές ασφαλείας που συντηρούν (link στα αγγλικά): https://drupal.org/security/secure-configuration