= Installationshinweise: pfSense Firewall des Debian Edu / Skolelinux Netzwerks = <> == Download / Installationsmedium erstellen == Zunächst muss ipFire für das gewählte Installationsmedium (CD-ROM, USB-Stick) heruntergeladen werden: http://www.ipfire.org/downloads Nach dem Download muss das Boot-Medium erstellt werden. Genauere Hinweise hierzu bitte der [[http://www.ipfire.org/support|ipFire-Dokumentation]] entnehmen. == Netzwerkkarten identifizieren == Bevor mit der Installation des Firewall-Systems begonnen werden kann, muss für alle Netzwerkkarten die jeweils zugehörige MAC-Adresse ermittelt werden. Eine eindeutige Zuordnung von MAC-Adressen zu Netzwerkports ist für die spätere Konfiguration der Firewall-Software notwendig. == Basisinstallation == Den PC für das Firewall-System vom Installationsmedium starten und im Abfrage-Dialog von pfsense die folgenden Optionen auswählen. Die Firewall spezifischen Pakete können über den WebKonfigurator installiert und konfiguriert werden. Hierzu zählen zum Beispiel der Proxy (Squid 3) und der Inhaltsfilter (Dansguardian). Auch die Firewall wird einfacher über den Webkonfigurator konfiguriert. == Konfiguration via Webkonfigurator == Über den Webkonfigurator lassen sich die Parameter für das System und die Pakete einstellen. Unter '''Status''' > '''Service''' kann man die laufenden Dienste anhalten und neu starten. Unter '''Diagnostics''' lässt sich das System anhalten und neu starten. === Proxy konfigurieren === Der Proxy lässt konfigurieren unter '''Service''' > '''Proxy ...''': === Inhaltsfilter konfigurieren (Dansguardian) === Der Inhaltsfilter lässt sich konfigurieren unter '''Service''' > '''Dansguardian''': * Im Untermenü '''Blacklist''' wird der Link zum Download der [[http://www.shallalist.de/Downloads/shallalist.tar.gz|Shallaliste]] eingefügt. * Unter ACLs wird bei der Phraselist, der Sitelist, URLlist und Extensionlist (bei Bedarf auch bei den anderen Listen) ein neuer Filter '''Schule''' angelegt und dann jede Liste wie folgt bearbeitet: * der Filter wird enabled * unter '''banned lists''' werden die zu filternden Begriffe mit '''STRG+Mausklick''' markiert * unter '''Exception lists''' (z.B. unter ''Sitelist'') werden explizit frei gegebene Homepages eingetragen * die Einstellungen speichern * damit die neu erstellten Filter (''Schule'') greifen, werden sie unter '''groups''' ausgewählt und gespeichert * Hosts die von der Filterung ausgenommen werden sollen werden unter: '''IPs''', '''Exception IP List''' mit der IP eingetragen === Performanz des Inhaltsfilters optimieren === 1. Das Konfigurationsmenü gibt Hinweise, welche Werte (abweichend von den Standardeinstellungen) für große Sites verwendet werden können. Diese Werte sind unter dem Reiter "Daemon" einzutragen. 1. Ferner kann man überlegen, das Verwenden von Phrasenlisten zu deaktivieren und sich nur auf den URL-Filter und den URL-Stichwortfilter von Dansguardian zu verlassen. Wenn nicht jede heruntergeladene Webseite nach malignen Inhalten durchsucht werden muss, ist eine Leistungssteigerung beim Aufrufen von Webseiten auf den angegliederten Clients zu erwarten. === Firewall konfigurieren === Unter '''Firewall''' > '''Rules''' werden die Firewall-Regeln des pfSense Systems aufgerufen. ==== WAN Regeln ==== || type || ID || Proto || Source || Port || Destination || Port || Gateway || Queue || Schedule || Description || || pass || || IPv4 TCP/UDP || 172.16.0.88 || * || This Firewall || 1194 (OpenVPN) || * || none || || Incoming OpenVPN from Backup-Server || ==== LAN Regeln ==== || type || ID || Proto || Source || Port || Destination || Port || Gateway || Queue || Schedule || Description || || pass || || IPv4 TCP/UDP || 10.0.2.2 || * || * || * || * || none || || allow all from Tjener || || pass || || IPv4 ICMP || * || * || * || * || * || none || || always allow ICMP || || pass || || IPv4 UDP || LAN net || * || ITZkS_VpnSrv || 1197 || * || none || || VPN-Access to ITZkS-VPN-Server (HGG), ''muss an Schule angepasst werden!!!'' || || pass || || IPv4 UDP || LAN net || * || ITZkS_VpnSrv || 1194 || * || none || || VPN access to ITZkS-VPN-Server (ADMINS) || || reject || || IPv4+6 TCP/UDP || * || * || WAN net || * || * || none || || block all IPv4/IPv6 || ==== OpenVPN Regeln ==== || type || ID || Proto || Source || Port || Destination || Port || Gateway || Queue || Schedule || Description || || pass || || IPv4 ICMP || * || * || LAN net || * || * || none || || always allow ICMP || || pass || || IPv4 TCP || * || * || LAN net || 22 || * || none || || VPN Clients (e.g. backup-01) may SSH into all machines || === Konfigurationen auf Konsolenebene === Um auf der Konsolenebene besser arbeiten zu können sollten einige Programme nachinstalliert und einige Parameter konfiguriert werden. Zum Erreichen der Konsole im Auswahlmenü {{{8}}} drücken. Danach kann man folgende Konfigurationen vornehmen: * Tastaturlayout auf Deutsch einstellen: {{{ kbdcontrol -l /usr/share/vt/keymaps/de.kbd }}} * Software nachinstallieren (muss kompiliert werden, nachfolgend erster Schritt): * Paketverwaltung installieren: {{{ pkg }}} * Paketlisten aktualisieren: {{{ pkg update }}} * Prozessmonitor ''htop'' installieren: {{{ pkg install htop }}} * Editor ''mc'' installieren: {{{ pkg install mc }}} * Schulname auf HTML Template ändern: in {{{/usr/pbi/dansguardian-amd64/local/share/dansguardian/languages/german/template.html "IHRE FIRMA" ersetzen}}} * Cachemanager installieren (noch nicht fertig!, nachfolgend Ideensammlung): * ln -s /usr/pbi/squid-amd64/local/libexec/squid/cachemgr.cgi cachemgr.cgi * /usr/pbi/squid-amd64/local/etc/squid/cachemgr.conf editieren: (z.B. via "Diagnostics" > "Edit File"){{{ check this: Credit to the post HERE for getting me started, but here's a neater solution to accessing the manager. From a pfSense shell, first enable writes to the file system if using nanobsd. Code: [Select] /etc/rc.conf_mount_rw Then enter the following commands to enable the web page. Code: [Select] cd /usr/local/www ln -s /usr/local/libexec/squid/cachemgr.cgi cd /usr/local/etc/squid cp cachemgr.conf.default cachemgr.conf No need to modify from the default. Next, modify the file at /usr/local/pkg/squid.xml adding the lines highlighted below in red, starting at line 94. Local Users /pkg.php?xml=squid_users.xml CacheMgr /cachemgr.cgi?host=localhost&port=3128&user_name=&operation=menu&auth=" target="_blank On nanobsd, switch back to read-only. https://forum.pfsense.org/index.php?topic=67607.0 https://forum.pfsense.org/index.php?topic=14609.0 }}}