Ολα θα πρέπει να λειτουργούν τώρα. Μην ξεχάσετε να:
Ρυθμίστε όλους τους υπολογιστές του υποδικτύου σας να δείχνουν στην ΙP του Linux server σαν gateway. (Στα windows δεξί-κλικ στο network neighbourhood->properties->gateway και μετά τον αλλάζετε στην IP του Linux server(gateway)).
Ρυθμίστε όλους τους υπολογιστές σας να χρησιμοποιούν τον proxy του ISP σας (αν υπάρχει χρησιμοποιείστε transparent proxy), (ΠΡΟΣΟΧΗ Εχω ακούσει για αναφορές οτι το transparent proxying ειναι πολύ αργό σε πολύ μεγάλα δίκτυα), ή τρέξτε τον squid στον linux server σας. (Αυτό είναι προαιρετικό αλλά συνιστάται για μεγάλα δίκτυα).
Σιγουρευτήτε οτι βάζετε σωστά τον DNS όταν ρυθμίζεται τους υπολογιστές σας. Ειδάλως θα παίρνετε μυνήματα λάθους σε αυτούς γιατί δεν θα γίνετε σωστά το resolving της IP address.
[Offtopic] I wonder if you could simply send out a dhcp broadcast that just forwards on the dns server (and http_proxy while you're at it) without having to setup a dhcp server (or even if you do). Can someone mail me about this? :)
Thanks to Richard Atcheson for pointing this out.
Τώρα θα πρέπει σιγά σιγά να διορθώνεται την ασφάλεια σε αυτόν. Πρώτα απενεργοποιήστε γενικώς το forwarding: "iptables -P FORWARD DROP", και μετά μάθετε να δουλεύετε με τα iptables και τα αρχεία /etc/hosts.allow και /etc/hosts.deny για να ασφαλίσετε το σύστημά σας. ΠΡΟΣΟΧΗ Μην δοκιμάσετε το προηγούμενη κανό των iptables μέχρι να έχετε το μασκάρισμα να δουλεύει σωστά Πρέπει να ορίζεται ξεχωριστά οποιοδήποτε πακέτο θέλετε να περάσει εάν θα χρησιμοποιήσετε την προηγούμενη εντολή (κανόνας iptables) με DENY. (Μπορείτε να αναιρέσετε αυτόν τον κανόνα με "iptables -P FORWARD ACCEPT")
Αφήστε όποια services θέλετε να φαίνονται στο internet.
Για παράδειγμα για να αφήσετε access στον web server σας κάντε:
$> iptables -A INPUT --protocol tcp --dport 80 -j ACCEPT $> iptables -A INPUT --protocol tcp --dport 443 -j ACCEPT |
Για να αφήσετε το ident (για σύνδεση στο irc κτλ) κάντε
$> iptables -A INPUT --protocol tcp --dport 113 -j ACCEPT |
Για να το δοκιμάσετε:
Δοκιμάστε να συνδεθείτε απο έναν υπολογιστή πελάτη στο web χρησιμοποιώντας μια IP. Η IP του Google είναι 216.239.33.100 (μία απο όλες που έχουν) και θα πρέπει να παρετε μία απάντηση από αυτήν π.χ. "ping 216.239.33.100" "lynx 216.239.33.100".
Δοκιμάστε μια σύνδεση μαζί με το resolve του hostname π.χ. "ping www.google.com" "lynx google.com" ή απο τον Internet Explorer ή τον netscape
Οπου eth0 είναι η κάρτα δικτύου που δίνει Internet (εξωτερική), και η 123.12.23.43 είναι η εξωτερική ip αυτού του μηχανήματος.