Firewall Configuration

Giorgos Keramidas keramida at ceid.upatras.gr
Wed Apr 9 04:28:01 EEST 2003


On 2003-04-09 00:41, Βασιλειου Σπυρος <alfadeck at freemail.gr> wrote:
>>> Ομως η διοικηση θελει πλεον τα εξης
>>> 1) Ολα τα συστηματα να εχουν προσβαση στον mail & ftp server
>>> 2) Κανενα συστηματα να μην εχει προσβαση σε HOTMAIL & MSN
>>> 3) Κανενα συστημα να μην βλεπει www και συναφεις σελιδες (πχ
>>>    χρηματηστηριο απο in.gr) με εξαιρεση ορισμενα PC (μαντεψτε ποια!)
>>> 4) Χρειαζομαι Τelnet εγω απο ολα τα εσωτερικα PC και 1 ΙΡ απο
>>>    εξωτερικο δικτυο.
>>
>> Το 2) είναι εντελώς άχρηστο όταν υπάρχει το 3).. απλώς ξέχνα το.  Αν
>> κάνεις το 3) τότε έχεις αυτόματα πετύχει και το 2).  Αν και προσωπικά
>> θεωρώ πως το web είναι πηγή πληροφόρησης και ενημέρωσης των
>> εργαζομένων και είναι λίγο άσχημο να μπαίνουν περιορισμοί μαζικά,
>> χωρίς να το ξέρουν όλοι οι εργαζόμενοι, ή χωρίς πολύ σκέψη για το πως
>> αυτό θα επηρεάσει τον τρόπο δουλειάς τους, την απόδοσή τους σε αυτό
>> που κάνουν, κλπ.
>
> Οταν ομως οι εργαζομενοι το χρησημοποιουν για ροζ sites και
> χρηματιστηριο χωρις να κανουν την δουλεια τους, τοτε μαλλον
> ειναι προβλημα!

Α ναι.  Έχεις ένα δίκιο εδώ.  Η λύση είναι μάλλον να απαγορεύσεις το
surfing χωρίς proxy και να βάλεις περιορισμούς στον proxy :-)

> Απο την αλλη θεωρω δικαιο μια επιχειρηση που σπαταλα χρημα να δινει
> κατι στους υπαλληλους της και αυτοι να το "πατανε" χωρις να
> σεβονται. Το τελευταιο λεγεται "ελληνικη εργασιακη νοοτροπια" και με
> βρισκει αντιθετο.  Ελπιζω να εκανα ξεκαθαρη την θεση μου.

Ναι, αρκετά :)

>> ΥΓ: Η πιο απλή λογική στα ipchains είναι να φτιάξεις ένα ή περισσότερα
>> chain με local 'περιορισμούς' και σε κατάλληλα σημεία των input, output
>> και forwarding chains να εισάγεις -j local, -j local2, ...
>>
>> Μπορείς να δώσεις και ονόματα στα local chains σου αν θες, π.χ. κάτι σαν
>> -j noweb [μετάβαση στο chain που δεν επιτρέπει πρόσβαση στο web σε
>> κανέναν εκτός από τον κ. Α, την δεσποινίδα Β και τον admin].
>>
>> Μην γράφεις spagghetti rules!
>>
>> Οργάνωσε τα rules σου σε λογικές ομάδες, ανάλογα με το τι κάνουν και
>> διαχώρισέ τα σε κατάλληλα chains.  Τα ονόματα input, output και forward
>> είναι απλώς τα "βασικά" chains.  Μπορείς να φτιάξεις όσα θες, και είναι
>> καλή ιδέα όταν δοκιμάζεις το firewall σου να έχεις έτσι ομαδοποιημένα τα
>> chains σου.  Για παράδειγμα, όταν κάνεις δοκιμές για το noweb chain,
>> μπορείς να βάζεις και να βγάζεις ένα κανόνα που έχει -j noweb από το
>> input chain σου και να αλλάζουν όλα όσα έχουν σχέση με την πρόσβαση στο
>> web με μια κίνηση.
>>
>> Που να τρέχεις τώρα (ή μεθαύριο, τον άλλο μήνα, του χρόνου) να ψάχνεις
>> μέσα σε ένα περίεργο μπέρδεμα από chains, μια συμπαγή και πυκνή μάζα από
>> κανόνες, τι στο διάολο ήταν αυτό που ήθελες να κάνεις όταν γράφτηκαν
>> πριν τόσο καιρό οι κανόνες...  Κρίμα είναι :-P
>

> ΟΚ συμφωνω! Ενα μικρο παραδειγματακι? Μονο αυτο ζηταω να παρω μπροστα
> να δω πως γινεται.

Αν και το ipchains-HOWTO έχει πολλά παραδείγματα, εννοώ κάτι σαν το
παρακάτω rc.ipchains script, που σηκώνει τα κατάλληλα rules κατά τη
διάρκεια της εκκίνησης:

    fw="ipchains"

    # Διαγραφή των προηγούμενων rules
    $fw -F input
    $fw -F output

    # --------------------------------------------------------------------
    # Δημιουργία των chains που θα χρησιμοποιήσουμε και default policies.

    $fw -N noweb
    $fw -P noweb REJECT

    # --------------------------------------------------------------------
    # Input πακέτα από το εσωτερικό δίκτυο.

    $fw [blah blah...]
    $fw -A input --proto tcp -n noweb

    # --------------------------------------------------------------------
    # Output πακέτα προς το εσωτερικό δίκτυο.

    $fw [blah...]

    # --------------------------------------------------------------------
    # Input πακέτα από το Internet.

    $fw [blah...]

    # --------------------------------------------------------------------
    # Output πακέτα προς το Internet.

    $fw [blah...]

    # --------------------------------------------------------------------
    # Περιορισμοί web με την noweb chain για το εσωτερικό δίκτυο.

    $fw -A noweb -p tcp -d 10.0.0.1 80 -j MASQ	# ναι στον proxy
    $fw -A noweb -p tcp -d 0.0.0.0 80 -j REJECT	# όχι σε όλα τα άλλα

Ελπίζω κάπως να βοήθησα :-)

- Giorgos




More information about the Linux-greek-users mailing list