TCP wrapper :: Mini How To
Contents
TCP Wrapper
http://en.wikipedia.org/wiki/TCP_Wrapper
Από τα σημαντικότερα θέματα στην ασφάλεια ενός linux συστήματος είναι ο έλεγχος συνδέσεων προς το μηχάνημά μας.
Με την χρήση του TCP Wrapper έχουμε την δυνατότητα να απαγορεύσουμε ή να επιτρέψουμε συνδέσεις από συγκεκριμένες IPs ή και δίκτυα.
Η δυνατότητα αυτή μας δίνεται πολύ απλά εάν επεξεργαστούμε κατάλληλα 2 αρχεία: hosts.deny & hosts.allow
Η σειρά με την οποία γίνεται ο έλεγχος για τις συνδέσεις προς τον υπολογιστή μας είναι ο εξής:
- Ελέγχεται ποιος επιτρέπεται να έχει πρόσβαση σύμφωνα με το αρχείο hosts.allow
- Ελέγχεται ποιος ΔΕΝ επιτρέπεται να έχει πρόσβαση σύμφωνα με το αρχείο hosts.deny
- Αλλιώς εάν δεν βρεθεί η συγκεκριμένη IP σε κανένα από τα παραπάνω αρχεία τότε απλά επιτρέπεται.
Ένα τυπικό παράδειγμα λειτουργίας περιγράφεται παρακάτω:
Υπάρχει ένα τοπικό δίκτυο από το οποίο θέλουμε να επιτρέπουμε την πρόσβαση στην υπηρεσία Secure Shell.
Αλλά δεν θέλουμε να επιτρέπεται σε καμία άλλη IP ή δίκτυο να έχει πρόσβαση.
Το περιεχόμενο των αρχείων hosts.deny / hosts.allow πρέπει να δείχνει ως εξής:
$ cat /etc/hosts.deny sshd: ALL $ cat /etc/hosts.allow sshd: 192.168.0.0/255.255.255.0
Μερικά χρήσιμα links είναι τα παρακάτω:
ftp://ftp.porcupine.org/pub/se[..]/hints-and-tips.html
ftp://ftp.porcupine.org/pub/se[..]_wrappers_7.6.tar.gz
DenyHosts
Μία αρκετά καλή λύση για μεγαλύτερη πρόσβαση είναι η χρήση του προγράμματος denyhosts.
Γραμμένο σε python ελέγχει το αρχείo εκείνο στο οποίο καταγράφονται οι προσπάθειες πρόσβασης
και κάνοντας χρήση python regular expressions τις πολλαπλές αποτυχημένες προσπάθειες τις καταγράφει
στο αρχείο hosts.deny ώστε να μην επιτρέπει μελλοντικές απόπειρες πρόσβασης.
http://denyhosts.sourceforge.net