Αυτό το άρθρο είναι μέρος της σειράς Apache Server Guide:

  • Ασφάλεια Apache στο Ubuntu - Μέρος 1
  • Ασφάλεια του Apache στο Ubuntu - Μέρος 2
  • Βελτιστοποίηση της απόδοσης του Apache - Μέρος 1
  • Βελτιστοποίηση της απόδοσης του Apache - Μέρος 2
  • Ρύθμιση του βασισμένου σε όνομα Apache του
  • Εγκατάσταση IP και Port-Based Virtualhost στο Apache
  • Πώς να ρυθμίσετε τον Κατάλογο Ιστού Προστατέψτε τον Κωδικό στο Apache
  • Εγκατάσταση του Apache Server με υποστήριξη SSL στο Ubuntu
  • Ρύθμιση του Fail2ban για την προστασία του Apache από επίθεση DDOS
  • Πώς να ρυθμίσετε το Webdav με Apache στο Ubuntu
  • Παρακολούθηση του διακομιστή Web Apache χρησιμοποιώντας το Mod_status
  • Πώς να προστατεύσετε το DDoS με Mod_evasive στο Apache Server

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

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

Σημείωση : αυτό το σεμινάριο γίνεται σε ένα διακομιστή Ubuntu με εγκατεστημένο το Apache.

Εγκατάσταση του πακέτου εφαρμογών Apache

Κατ 'αρχάς, πρέπει να εγκαταστήσετε το πακέτο apache2-utils που παρέχει ένα βοηθητικό πρόγραμμα που ονομάζεται htpasswd για να δημιουργήσετε ένα αρχείο κωδικού πρόσβασης.

Μπορείτε να το εγκαταστήσετε τρέχοντας την ακόλουθη εντολή:

 sudo apt-get να εγκαταστήσετε το apache2-utils 

Ρύθμιση παραμέτρων του Apache ώστε να επιτρέπεται ο έλεγχος ταυτότητας .htaccess

Από προεπιλογή, το Apache δεν επιτρέπει τη χρήση ενός αρχείου .htaccess στο Ubuntu 14.04. Θα χρειαστεί να ρυθμίσετε το αρχείο ρυθμίσεων Apache για να επιτρέψετε την επαλήθευση βάσει .htacces.

Μπορείτε να το κάνετε αυτό με την επεξεργασία του αρχείου config Apache:

 sudo nano /etc/apache2/apache2.conf 

Βρείτε την ενότητα που αρχίζει με τον Directory "/var/www/html" και αλλάξτε τη γραμμή από το AllowOverride none στο AllowOverride AuthConfig

 Επιλογές Ευρετήρια FollowSymLinks AllowOverride AuthConfig Απαίτηση όλων των χορηγούμενων 

Αποθηκεύστε και κλείστε το αρχείο.

Δημιουργήστε το αρχείο κωδικού πρόσβασης

Μπορείτε να χρησιμοποιήσετε το βοηθητικό πρόγραμμα γραμμής εντολών htpasswd για να δημιουργήσετε ένα αρχείο κωδικών πρόσβασης που μπορεί να χρησιμοποιήσει το Apache για τον έλεγχο ταυτότητας χρηστών. Τώρα, δημιουργήστε ένα κρυφό αρχείο .htpasswd στον κατάλογο ρυθμίσεων "/ etc / apache2".

 sudo htpasswd -c /etc/apache2/.htpasswd authuser1 

Αυτό θα σας ζητήσει να δώσετε και να επιβεβαιώσετε έναν κωδικό πρόσβασης για τον authuser1.

Αν θέλετε να προσθέσετε έναν άλλο χρήστη, τότε αφήστε το -c με την εντολή htpasswd .

Τώρα, για να δημιουργήσετε έναν άλλο έλεγχο ταυτότητας για έναν δεύτερο χρήστη, authuser2:

 sudo htpasswd /etc/apache2/.htpasswd authuser2 

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

 sudo cat /etc/apache2/.htpasswd 

Πρέπει να επιτρέψετε στον χρήστη "www-data" να μπορεί να διαβάσει το αρχείο .htpasswd.

 sudo chown www-δεδομένα: www-δεδομένα /etc/httpd/.htpasswd sudo chmod 0660 /etc/httpd/.htpasswd 

Ρύθμιση παραμέτρων ελέγχου ταυτότητας με κωδικό πρόσβασης Apache

Πρέπει να δημιουργήσετε ένα αρχείο ".htaccess" στον κατάλογο web που θέλετε να περιορίσετε. Σε αυτό το παράδειγμα θα δημιουργήσω ένα αρχείο ".htaccess" στον κατάλογο "/ var / www / html /" για να περιορίσω ολόκληρη τη ρίζα του εγγράφου.

 sudo nano /var/www/html/.htaccess 

Προσθέστε το ακόλουθο περιεχόμενο:

 AuthType Basic AuthName "Περιορισμένο περιεχόμενο" AuthUserFile /etc/apache2/.htpasswd Απαίτηση έγκυρου χρήστη 

Εδώ είναι τι σημαίνει ο παραπάνω κώδικας:

  • AuthType : Αυτή η επιλογή ορίζει τον τύπο της επαλήθευσης ταυτότητας.
  • AuthName : Αυτό είναι το περιεχόμενο που εμφανίζεται στην ιστοσελίδα όταν σας ζητηθεί όνομα χρήστη και κωδικός πρόσβασης.
  • AuthUserFile : Αυτή η επιλογή καθορίζει τη θέση των διαπιστευτηρίων χρήστη.
  • απαιτούν έγκυρο χρήστη : Αυτό υποδεικνύει ότι μόνο επιτυχημένα πιστοποιημένα αιτήματα ενδέχεται να φορτώσουν τη σελίδα.

Αποθηκεύστε και κλείστε το αρχείο και κάντε επανεκκίνηση του Apache για να πραγματοποιήσετε αυτές τις αλλαγές.

 sudo /etc/init.d/apache2 επανεκκίνηση 

Έλεγχος ταυτότητας κωδικού πρόσβασης δοκιμής

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

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

συμπέρασμα

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