Η χρήση του .htaccess σαν μέσο αποκλεισμού (Ban) IP , Site Referer και Hotlinking
Το αρχείο .htaccess είναι ένα πολύ ισχυρό αρχείο του Apache HTTP Server, το οποίο με κατάλληλες ρυθμίσεις μπορεί να κρατήσει μακριά τους επισκέπτες ή τους στείλει αλλού, να προστατεύσει τις ιστοσελίδες και τους καταλόγους με κωδικό πρόσβασης, αλλα και να δημιιουργήσετε SEF urls σε ένα Joomla site, κα. Χειριστείτε το .htaccess αρχείο με προσοχή, και χρησιμοποιείστε τις πληροφορίες αυτές ως αφετηρία για περαιτέρω διερεύνηση.
Δημιούργησε ένα αρχείο .htaccess
Αν δεν υπάρχει κάποιο ήδη δημιουργημένο αρχείο .htaccess μπορείτε εύκολα να το δημιουργήσετε. Χρησιμοποιήστε ένα επεξεργαστή κειμένου όπως το Notepad (όχι το Word) ή το Notepad++ , για να δημιουργήσετε ένα αρχείο εγγράφου που ονομάζεται htaccess.txt στον υπολογιστή σας. Μην προσθέτετε την τελεία στην αρχή του το όνομα του αρχείου διότι μπορεί να γίνει αόρατο. Ανεβάστε το αρχείο στο server σας, στη συνέχεια, μετονομάστε το σε .htaccess. Βεβαιωθείτε ότι έχετε προσθέσει την τελεία .(dot) στην αρχή του ονόματος του αρχείου και αφαιρέστε την επέκταση .txt. Σιγουρευτείτε ότι το ανεβάσατε το αρχείο με FTP σε μορφή ASCII, και όχι Binary. t9x73sf6ap
Αποκλεισμός της IP ενός επισκέπτη – IP Banning
Σε γενικές γραμμές μια έγκυρη IP θα πρέπει να έχει την μορφή xxx.xxx.xxx.xxx, όπου "xxx" είναι ένας αριθμός μεταξύ 0-255. Μπορείτε να εισάγετε ένα τμήμα μιας διεύθυνσης IP για τον αποκλεισμό όλων των IP που περιέχουν το εν λόγω τμήμα της διεύθυνσης IP μέσα σε αυτό το εύρος.
Αν υποθέσουμε στο παρακάτω παράδειγμα ότι θέλουμε να αποκλείσουμε κάποιες IPs (οι IPs είναι τυχαίες)
- 94.65.5.32 (Αποκλείει μια συγκεκριμένη διεύθυνση IP)
- 215.153.42. (Αποκλείει όλες τις IPs μέσα στην περιοχή 215.153.42.xxx)
- 93.32. (Αποκλείει όλες τις IPs μέσα στην περιοχή 93.32.xxx.xxx)
- 81.158.3 (Αποκλείει όλες τις IPs μέσα στην περιοχή 81.158.3xx.xxx)
Η προσθήκη του κώδικα στο αρχείο θα πρέπει να έχει την παρακάτω μορφή
## USER IP BANNING <Limit GET POST> order allow,deny deny from 94.65.5.32 deny from 215.153.42. deny from 93.32. deny from 81.158.3 allow from all </Limit>
Χρειάζεται μεγάλη προσοχή στον αποκλεισμό ενός τμήματος ή ολόκληρου φάσματος IP, διότι μπορεί να αποκλείσετε χρήσιμες και υγιείς επισκέψεις.
Αποκλεισμός ανεπιθύμητου spam traffic από Site Referrers
Το παρακάτω παράδειγμα προσθήκης κώδικα στο .htaccess έχει σα σκοπό να απαγορεύσει τις επισκέψεις που προέρχονται από κάποια άλλα site. Για παράδειγμα, εάν site είναι ανεπιθύμητο ή εμφανίζονται πολλές καταγραφές στο web site referrer log (συνήθως στο Webalizer του server), μπορείτε να απαγορεύσετε αυτό το site, ώστε κάθε επίσκεψη και traffic που προέρχεται από αυτό είτε είναι άνθρωπος ή κάποιο bot, να απαγορεύεται και να αποκλείετε. Το συνηθίζουν αυτό κάποια spam sites, για να καταγράφουν το url της επίσκεψης τους στο webalizer του server και να το αναγνωρίζουν οι μηχανές αναζήτησης σαν backlink. Βομβαρδίζουν με επισκέψεις τον server οι οποίες συνήθως γίνονται με κάποιο bot, με αποτέλεσμα να μειώνουν το ωφέλιμο bandwidth του server.
Αν υποθέσουμε στο παρακάτω παράδειγμα ότι θέλουμε να αποκλείσουμε κάποια domain ή IPs (οι IPs και τα domains είναι τυχαία)
- verybadsite.com (Απαγόρευση επισκέψεων από το verybadsite.com)
- verybadsite. (Απαγόρευση επισκέψεων από όλες τις μορφές verybadsite.xxx, όπως verybadsite.com, verybadsite.net κλπ)
- sub.verybadsite.com (Απαγόρευση επισκέψεων από το sub.verybadsite.com)
- 32.173.21.187 (Απαγόρευση επισκέψεων προερχόμενων από συγκεκριμένη IP του site)
Η προσθήκη του κώδικα στο αρχείο θα πρέπει να έχει την παρακάτω μορφή
## SITE REFERRER BANNING RewriteEngine on # Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} verybadsite\.com [NC,OR] RewriteCond %{HTTP_REFERER} verybadsite\. [NC,OR] RewriteCond %{HTTP_REFERER} sub\.verybadsite\.com [NC,OR] RewriteCond %{HTTP_REFERER} 32\.173\.21\.187 [NC] RewriteRule .* - [F]
Απενεργοποίηση και απαγόρευση του Hotlinking
Η απενεργοποίηση του hot linking είναι μια απαγόρευση για συνηθισμένα κοινά αρχεία από άλλα site, έτσι ώστε μόνο το δικό σας domain(s) να μπορούν να αναφέρονται ή να έχουν πρόσβαση σε αυτά. Για παράδειγμα, με την απενεργοποίηση του hotlinking για τα αρχεία .jpg, οποιοδήποτε site το οποίο δεν μέσα στη λίστα των επιτρεπόμενων domain, θα παίρνουν μία αναφορά ανύπαρκτου αρχείου εικόνας, για το αρχείο .jpg που βρίσκετε στο server σας. Στη σύνταξη του κώδικα βάζουμε τα domain επιτρέπετε το hotlinking και για ποιους τύπους αρχείων γίνετε η απαγόρευση του hotlinking. Αν υποθέσουμε στο παρακάτω παράδειγμα ότι θέλουμε να επιτρέψουμε κάποια domain ή IPs για κάποιους τύπους αρχείων, και απαγορεύσουμε κάποια αρχεία για hotlinking από όλα τα υπόλοιπα domain (οι IPs και τα domains είναι τυχαία).
Για "Επιτρεπόμενα Domains/ IPs"
- webmasterslife.gr (Επιτρέπετε σε αυτό το domain η πρόσβαση στους συγκεκριμένους τύπους αρχείων)
- forum.webmasterslife.gr (Επιτρέπετε σε αυτό το subdomain η πρόσβαση στους συγκεκριμένους τύπους αρχείων)
- 95.65.23.195 (Επιτρέπετε σε αυτό την IP η πρόσβαση στους συγκεκριμένους τύπους αρχείων)
Για τη "Λίστα τύπου Αρχείων"
- gif (Απαγόρευση του hotlinking στα .gif αρχεία σε αυτόν τον server)
- jpg (Απαγόρευση του hotlinking στα.jpg αρχεία σε αυτόν τον server)
- png (Απαγόρευση του hotlinking στα.jpg αρχεία σε αυτόν τον server)
- css (Απαγόρευση του hotlinking στα.css αρχεία σε αυτόν τον server, αντί αυτού να εμφανίζετε κενό αρχείο)
- js (Απαγόρευση του hotlinking στα.js αρχεία σε αυτόν τον server, αντί αυτού να εμφανίζετε κενό αρχείο)
Η προσθήκη του κώδικα στο αρχείο θα πρέπει να έχει την παρακάτω μορφή
## DISABLE HOTLINKING RewriteEngine on # Options +FollowSymlinks RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www\.)?webmasterslife.gr/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(www\.)?forum.webmasterslife.gr/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(www\.)?95.65.23.195/.*$ [NC] RewriteRule \.(gif|jpg|png|css|js)$ - [F]
Οποιαδήποτε προσθήκη και παρέμβαση στο .htaccess πρέπει να γίνετε με προσοχή αλλά και έλεγχος για τα αποτελέσματα και την σωστή λειτουργία των ρυθμίσεων έτσι ώστε να μη γίνει κατά λάθος αποκλεισμός ωφέλιμου traffic.
|