= Wünsche = Markus meint: {{{ Proxy auf Gateway-Server für alle PC´s im Netzwerk aufsetzen und darüber per Masquerading/Firewall TCP/IP-Zugriff auf einen "virtuell-externen" Server(z.B. Apache - nicht im Netzwerk, soz. als Mini-Internet) ermöglichen. Apache müßte relativ schnell auf einem Linux-PC zum Laufen zu bringen sein. Der wird halt vom Netzwerk abgekoppelt, erhält seine feste IP-Adresse. Der Squid auf dem Gatewayrechner, sowie dessen IP-Konfiguration können ja zunächst mal ohne Firewall aufgesetzt werden, um die Konfiguration zum Laufen zu bringen. Anschließend müßten dann die Firewall installiert und Masquerading-Regeln festgelegt werden. Naja, so irgendwie stell ich mir das ganze vor... }}} Keskin meint: {{{ Eine Win 2003 Domäne ins Internet routen. Sprich das ganze Aktive Directory mit dem Linux Server Routen DNS Auflösung Mit Linux http://www.orgdns.org/ Mailgateway Firewall Basis mit Funktionen. VPN SERVER bei Linux.... Szenario Eine Vorhandene Domäne mit einem Exchange Server mit einem Linux Kiste Online machen. }}} = Ziele = Dies soll der Rechner leisten: * Masquarading Firewall für das lokale Netzwerk 192.168.0.0 * Transparent Proxying, d.h. alle Anfragen mit destport 80 werden an Proxy weitergeleitet (squid) * siehe Unterseite von PaketFilter * Squid läuft selbst nicht in einem Cache-Netz (kein Elter, keine Kinder, keine Geschwister) * Selbst Serverdienste im Internet zur Verfügung stellen: * Port Forwarding (Virtuelle Ports) * Dynamic DNS mit http://www.orgdns.org/ oder http://www.dyndns.org/ (Theorie) = Keine Ziele = Das muss der Rechner nicht können: * VPN (zu viel Aufwand für den einen Tag) * Mailserver (macht das Samba-Team evtl. kann aber "durchgeleitet werden mit port forwarding) * Wir verwenden keine spezielle Linux-Distribution wie [[fli4l]] oder ipcop.org (vgl. FireWall). = Umsetzung = '''Situation:''' {{drawing:situation}} Schritte zur Umsetzung: 1. Prüfen ob Squid bereits installiert mit: rpm -q squid 2. Squid installieren entweder mit: Yast2, Yast, Webbrowser Konqueror, Kommandozeile; {{{ Anleitung für Kommandozeile: Datei auf lokalen Rechner kopieren mit: wget 192.168.1.1/suse/suse/i586/squid-2.5.STABLE3-93.i586.rpm Installieren mit: rpm -i squid-2.5.STABLE3-93.i586.rpm }}} 3. Squid konfigurieren (in /etc/squid/squid.conf) {{{ Port auf Benutzerdefinierte Einstellung setzen: "http_port 8080" (Default war 3128) Zugriffsrechte für LAN definieren: "acl our_networks src 192.168.1.0/24" Zugriffsrechte für LAN aktivieren: "http_access allow our_networks" }}} 4. verbindung zu Nameserver einrichten {{{ /etc/resolv.conf editieren: "nameserver 3.5.7.9" und "search local" hinzufügen }}} 5. Routing für Netzwerkkarten eth1 (eth0 Netzwerkkarte ist bereits auf 192.168.1.100 konfiguriert) {{{ ifconfig eth1 down ifconfig eth1 3.5.7.9 ifconfig und route -n zum abfragen der Konfiguration }}} 6. Squid starten: {{{ rcsquid start rcsquid status # schauen ob er wirklich läuft }}} 7. Client Browser für Proxyzugriff konfigurieren (Einstellungen/Proxy/IP-Adresse/Port 8080) 8. [[dnsmasq]] auf Router installieren und bei den anderen Rechnern im Netz als Nameserver eintragen. (Fungiert z.B. auch als DHCP-Server!). 9. Masquerading aktivieren (Aufruf vom Script mit "source [Dateiname]") {{{ EXTIF="eth1" INTIF="eth0" echo " External Interface: $EXTIF" echo " Internal Interface: $INTIF" #routing aktivieren echo 1 > /proc/sys/net/ipv4/ip_forward # Standard-Regeln iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD DROP #Alte Regeln Löschen iptables -F iptables -t nat -F ## Forwarding erlauben # Virtuellen Server durchlassen iptables -A FORWARD -i $EXTIF -o $INTIF --dst 192.168.1.5 -p tcp --dport 80 -j ACCEPT iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT iptables -A FORWARD -j LOG #Virtuellen Server weiterleiten iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.5:80 #Masquerading aktiviern iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE }}} = Links und Literatur = * PaketFilter * Die Hompage der Linux-Firewall-Systeme: http://www.netfilter.org/ * Firewall-HOWTO (http://www.tldp.org/HOWTO/Firewall-HOWTO.html) * IP-Masquerade-HOWTO (http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/index.html) * Masquerading Made Simple HOWTO (http://www.tldp.org/HOWTO/Masquerading-Simple-HOWTO/index.html) * http://www.yolinux.com/TUTORIALS/LinuxTutorialIptablesNetworkGateway.html * http://iptables-tutorial.frozentux.net/iptables-tutorial.html * [[Squid]] * http://www.squid-cache.org/ * [[Squid/ACL]] * zu Dynamic DNS siehe NameServer