Next Previous Contents

5. Προετοιμάζοντας το σύστημα Linux

5.1 Μεταγλωττίζοντας το πυρήνα

Ξεκινάμε με μία καθαρή εγκατάσταση της Linux διανομής σας. (Χρησιμοποίησα το RH 3.0.3 και τα παραδείγματα είναι βασισμένα σε αυτή τη διανομή). Όσο πιο λίγο λογισμικό έχετε φορτώσει, τόσο πιο λίγες τρύπες, πίσω πόρτες και (ή) bugs θα υπάρχουν για να παρουσιάσουν προβλήματα ασφαλείας στο σύστημά σας, έτσι φορτώνετε μόνο την έλαχιστη συλλογή από εφαρμογές (minimum installation).

Πάρτε ένα σταθερό πυρήνα. Χρησιμοποίησα τον 2.0.14 πυρήνα του Linux για το σύστημά μου. Έτσι αυτή η τεκμηρίωση είναι βασισμένη στη δική μου σύνθεση.

Θα χρειαστεί να μεταγλωττίσετε ξανά το πυρήνα του Linux με τις ανάλογες ρυθμίσεις. Γι' αυτό κοιτάξτε στα Kernel-HOWTO, Ethernet-HOWTO και NET-2 HOWTO, εάν δεν το έχετε ξανακάνει.

Παρακάτω ακολουθούν οι ρυθμίσεις που γνωρίζω ότι δουλεύουν με το make config.

  1. Κάτω από το General setup
    1. Βάλτε Networking Support ON
  2. Κάτω από το Networking Options
    1. Βάλτε Network firewalls ON
    2. Βάλτε TCP/IP Networking ON
    3. Βάλτε IP forwarding/gatewaying OFF (UNLESS you wish to use IP filtering)
    4. Βάλτε IP Firewalling ON
    5. Βάλτε IP firewall packet loggin ON (this is not required but it is a good idea)
    6. Βάλτε IP: masquerading OFF (I am not covering this subject here.)
    7. Βάλτε IP: accounting ON
    8. Βάλτε IP: tunneling OFF
    9. Βάλτε IP: aliasing OFF
    10. Βάλτε IP: PC/TCP compatibility mode OFF
    11. Βάλτε IP: Reverse ARP OFF
    12. Βάλτε Drop source routed frames ON
  3. Κάτω από το Network device support
    1. Βάλτε Network device support ON
    2. Βάλτε Dummy net driver support ON
    3. Βάλτε Ethernet (10 or 100Mbit) ON
    4. Επιλέξτε τη κάρτα δικτύου σας (network card)

Τώρα μπορείτε να μεταγλωττίσετε και να επανεγκαταστήσετε το πυρήνα και επανεκκίνηση (reboot). Η κάρτα (-ες) δικτύου θα εμφανιστούν κατά τη διάρκεια της εκκίνησης. Εάν όχι, πηγαίνετε στα άλλα HOWTO ξανά μέχρι να δουλέψουν

5.2 Ρυθμίζοντας δύο κάρτες δικτύου

Εάν έχετε δύο κάρτες δικτύου στον υπολογιστή σας, πιθανώς θα χρειαστεί να προσθέσετε μία δήλωση στο αρχείο /etc/lilo.conf για τη περιγραφή των IRQ και των διευθύνσεων των δύο καρτών. Η δήλωση στο δικό μου lilo.conf είναι κάπως έτσι:

    append="ether=12,0x300,eth0 ether=15,0x340,eth1"

5.3 Ρυθμίζοντας τις Διευθύνσεις του Δικτύου

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

Αυτές, 192.168.2.χχχ, είναι τοποθετημένες στην άκρη και θα τις χρησιμοποιήσουμε στο παράδειγμά μας.

Ο firewall σας, θα είναι μέλος και στα δύο δίκτυα και έτσι θα μπορεί να μεταβιβάζει δεδομένα από και προς το προσωπικό σας δίκτυο.

            199.1.2.10   __________    192.168.2.1
      _  __  _        \ |          | /           _______________
     | \/  \/ |        \| Firewall |/           |               |
    / Internet \--------|  System  |------------| Workstation/s |
    \_/\_/\_/\_/        |__________|            |_______________|

Εάν επιθυμείτε να χρησιμοποιήσετε firewalls φιλτραρίσματος μπορείτε να χρησιμοποιήσετε ακόμη και τους παραπάνω αριθμούς. Θα χρειαστεί όμως να χρησιμοποιήσετε IP masqurading για να συμβεί αυτό. Με αυτή τη διαδικασία ο firewall θα προωθεί πακέτα και θα τα μεταβιβάζει σε "REAL (πραγματικές)" διευθύνσεις για το ταξίδι τους στο Internet.

Θα πρέπει να ορίσετε τις πραγματικές ΙΡ διευθύνσεις στη κάρτα δικτύου πάνω στη (έξω) πλευρά του Internet. Και να ορίσετε 192.168.2.1 στην Ethernet κάρτα στο εσωτερικό. Αυτή θα είναι η IP διεύθυνση του εξουσιοδοτή/πύλη. Μπορείτε να ορίσετε σε όλους τους άλλου Η/Υ μέσα στο προστατευόμενο δίκτυο μερικούς αριθμούς από το 192.168.2.χχχ πεδίο (192.168.2.2 έως 192.168.2.254)

Επειδή χρησιμοποιώ RH Linux (Ε! Παιδιά, μου κάνετε ένα αντίγραφο για τα plugs? ;-) για να ρυθμίσω το δίκτυο κατά το χρόνο εκκίνησης πρόσθεσα ένα ifcfg-eth1 αρχείο στο κατάλογο /etc/sysconfig/network-scripts. Αυτό το αρχείο διαβάζεται κατά τη διάρκεια της εκκίνησης για την εγκατάσταση του δικτύου και των πινάκων.

Παρακάτω παρουσιάζω με τί το ifcfg-eth1 μοιάζει.

    #!/bin/sh
    #>>>Device type: ethernet
    #>>>Variable declarations:
    DEVICE=eth1
    IPADDR=192.168.2.1
    NETMASK=255.255.255.0
    NETWORK=192.168.2.0
    BROADCAST=192.168.2.255
    GATEWAY=199.1.2.10
    ONBOOT=yes
    #>>>End variable declarations

Μπορείτε να χρησιμοποιήσετε αυτά τα scripts για να συνδεθήτε αυτόματα μέσω modem στο παροχέα σας Internet. Κοιτάξτε στο ipup-ppp script.

Εάν προορίζετε να χρησιμοποιήσετε modem για τη σύνδεσή σας με το Internet, η εξωτερική ΙΡ διεύθυνση θα πρέπει να οριστεί από τον ISP για εσάς κατά τη διάρκεια της σύνδεσης.

5.4 Ελέγχοντας το δίκτυό σας.

Ξεκινήστε ελέγχοντας τα ifconfig και route. Εάν έχετε δύο κάρτες δικτύου το ifconfig θα είναι κάπως έτσι:

  #ifconfig
  lo        Link encap:Local Loopback
            inet addr:127.0.0.0  Bcast:127.255.255.255  Mask:255.0.0.0
            UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
            RX packets:1620 errors:0 dropped:0 overruns:0
            TX packets:1620 errors:0 dropped:0 overruns:0

  eth0      Link encap:10Mbps Ethernet  HWaddr 00:00:09:85:AC:55
            inet addr:199.1.2.10 Bcast:199.1.2.255  Mask:255.255.255.0
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0
            TX packets:0 errors:0 dropped:0 overruns:0
            Interrupt:12 Base address:0x310

  eth1      Link encap:10Mbps Ethernet  HWaddr 00:00:09:80:1E:D7
            inet addr:192.168.2.1  Bcast:192.168.2.255  Mask:255.255.255.0
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0
            TX packets:0 errors:0 dropped:0 overruns:0
            Interrupt:15 Base address:0x350

και ο πίνακας route κάπως έτσι:

  #route -n
  Kernel routing table
  Destination     Gateway         Genmask         Flags MSS    Window Use Iface
  199.1.2.0       *               255.255.255.0   U     1500   0       15 eth0
  192.168.2.0     *               255.255.255.0   U     1500   0        0 eth1
  127.0.0.0       *               255.0.0.0       U     3584   0        2 lo
  default         199.1.2.10      *               UG    1500   0       72 eth0

Σημείωση: 199.1.2.0 είναι η Internet πλευρά αυτού του firewall και 192.168.2.0 η προσωπική πλευρά.

Τώρα προσπαθήστε να κάνετε ping το Internet από το firewall. Συνήθιζα να χρησιμοποιώ το nic.ddn.mil σαν δοκιμαστικό σημείο. Είναι καλό σημείο δοκιμής, αλλά έχει αποδειχθεί ότι είναι λιγότερο αξιόπιστο απ' ότι είχα ελπίσει. Αν δεν δουλέψει με τη πρώτη, προσπαθήστε να κάνετε ping σε μερικά άλλα σημεία που δεν είναι συνδεδεμένα με το τοπικό σας δίκτυο (LAN). Εάν δεν δουλέψει ούτε τώρα, τότε το ΡΡΡ δεν είναι στημένο σωστά. Ξαναδιαβάστε το ΝΕΤ-2 HOWTO και προσπαθήστε ξανά.

Μετά, προσπαθήστε να κάνετε ping ένα host μέσα στο προστατευόμενο δίκτυο από το firewall. Όλοι οι υπολογιστές μπορούν να κάνουν ping μεταξύ τους. Εάν όχι, πηγαίνετε στο NET-2 HOWTO ξανά και δουλέψετε λίγο πάνω στο δίκτυό σας ακόμη.

Ύστερα, προσπαθήστε να κάνετε ping την εξωτερική διεύθυνση του firewall από το εσωτερικό του προστατευόμενου δικτύου. (Σημείωση: Η διεύθυνση της εξωτερικής πλευράς του firewall δεν είναι κανένας 192.168.2.χχχ ΙΡ αριθμός). Εάν μπορείτε, τότε δεν έχετε απενεργοποιήσει το IP Forwarding. Σιγουρευτήτε ότι το θέλετε αυτό. Εάν το αφήσετε ενεργοποιημένο μπορείτε να πάτε κατευθείαν στο κεφάλαιο "IP εγκατάσταση φιλτραρίσματος (κεφάλαιο 6)" αυτής της τεκμηρίωσης.

Τώρα, προσπαθήστε να κάνετε ping στο Internet πίσω από το firewall χρησιμοποιώντας τις ίδιες διευθύνσεις που δούλεψαν προηγουμένος. (πχ nic.ddn.mil). Ξανά, εάν έχετε απενεργοποιημένο το IP Forwarding, αυτό δεν πρόκειται να δουλέψει. Αν όμως το έχετε ενεργοποιημένο αυτό θα δουλέψει.

Αν έχετε το IP Forwarding επιλεγμένο να χρησιμοποιήτε "Πραγματικές (REAL)" (και όχι 192.168.2.χχχ) IP διευθύνσεις για το προσωπικό σας δίκτυο. Αν δεν μπορείτε να κάνετε ping το Internet αλλά μπορείτε την Internet πλευρά του firewall ελέξτε αν ο επόμενος δρομολογητής της γραμμής (προς το Internet) δρομολογεί πακέτα στη διεύθυνση του προσωπικού σας δικτύου. (Ο ISP το κάνει αυτό για εσάς)

Εάν έχετε καθορίσει το προστατευόμενο δίκτυο στο 192.168.2.χχχ, τότε κανένα πακέτο δεν μπορεί να δρομολογηθεί σε αυτό με τίποτα. Εάν έχετε προχωρίσει και έχετε ήδη το IP masqurading ενεργοποιημένο, αυτό το τεστ θα δουλέψει.

Τώρα έχετε το βασικό σας σύστημα έτοιμο.

5.5 Ασφαλίζοντας το Firewall.

Ο firewall δεν κάνει καλό αν τον έχουμε διάπλατα ανοικτό σε επιθέσεις μέσω μη χρησιμοποιούμενων υπηρεσιών. Ένας "κακός τύπος (bad guy)" μπορεί να αποκτήσει πρόσβαση στο firewall και να τον τροποποιήσει ανάλογα με τις ανάγκες του.

Ξεκινάμε απενεργοποιώντας όλες τις άχρηστες υπηρεσίες. Κοιτάξτε το αρχείο /etc/inetd.conf. Αυτό το αρχείο ελέγχει το τι κάλεσε τον "υπέρ διακομιστή (super server)". Ελέγχει μία ομάδα από δαίμονες υπηρέτες και τους ξεκινά όταν αυτοί ζητηθούν.

Οπωσδήποτε απενεργοποιούμε τα netstat, systat, tftp, bootp, και finger. Για να απενεργοποιήσουμε μία υπηρεσία, βάλτε # στο πρώτο χαρακτήρα της γραμμής της κάθε υπηρεσίας που δεν θέλουμε. Όταν το κάνετε αυτό, στείλτε ένα SIG-HUP στη διεργασία γράφοντας "kill -HUP <pid>", όπου <pid> είναι ο αριθμός εργασίας του inetd. Αυτό μπορεί να κάνει το inedt να ξαναδιαβάσει το αρχείο ρυθμίσεών του (inedt.conf) και επανεκκίνηση (restart).


Next Previous Contents