--- /dev/null
+
+
+# BSP2006Vienna
+
+Eine [[[http://wiki.debian.org/BSP|http://wiki.debian.org/BSP]] Bugsquashing Party] in Wien im Rahmen des [[[http://wiki.debian.org/BSPMarathon|http://wiki.debian.org/BSPMarathon]] Bugsquashing Marathons].
+
+Wer gern kommen möchte, möge sich bitte auf der [[[http://wiki.debian.org/BSP2006Vienna|http://wiki.debian.org/BSP2006Vienna]] entsprechenden Seite] im Debian Wiki eintragen.
+
+Wer gern bei der Organisation mithelfen möchte, möge sich bitte auf der [[[mailto:debienna@rerun.lefant.net|mailto:debienna@rerun.lefant.net]] Debienna Mailing List] melden (alternativ natürlich auch persönlich jeden Montag beim [[DebiennaTreff|DebiennaTreff]]).
+
+Siehe auch das ["BSPHowto"].
+
+
+## Details
+
+(Bitte mit der [[[http://wiki.debian.org/BSP2006Vienna|http://wiki.debian.org/BSP2006Vienna]] Page] im [[[http://wiki.debian.org|http://wiki.debian.org]] Debian Wiki] syncen, wenn man hier was ändert)
+
+* Datum: 8.-10. September 2006
+* Location: Don Bosco Studentenwohnheim [[[http://www.donbosco.sth.ac.at/|http://www.donbosco.sth.ac.at/]]]
+* Unterbringung: Direkt im Studentenheim, bis zu 16 Schlafplätze, 3-4 Personen pro Doppelzimmer, verfügbar von Freitag Nachmittag bis Sonntag 10:00
+* Ort zum Hacken: Seminarraum direkt im Studentenheim, Verfügbar Freitag bis inklusive Sonntag
+* Verpflegung: Kostenlos für Alle
+ * Frühstück: 7:00 - 9:00
+ * Brote, Getränke, etc. gibt's auch über'n Tag direkt dort
+ * Mittag-/Abendessen: Nach Bedarf (Pizza, Schnitzlplatzl, etc. auf Vegetarier wird Rücksicht genommen)
+* Netzwerk:
+ * 6 mbit/s Uplink zur Uni Wien
+ * Ports 25 und 80 sind geblockt, dafür gibt's http proxy & smtp relay
+ * Benötigt: MAC-Addressen der Attendees ein paar Tage vorher, damit die am Switch freigeschaltet werden können.
+* Mirror: Formorer bringt einen i386/amd64/ppc Mirror auf einer USB-Disk mit (unsicher)
+
+## Organisatorisches
+
+* Aufbau ab Freitag
+* Lange Netzwerkkabel für den Seminarraum organisieren
+* Liste mit MAC's vom Debian Wiki nehmen und irgendwann mal an Hansi weiterreichen
+ * Ich (Gr0) sammel noch MACs von aba & sjr ein, dann maile ich mal Hansi
+* Lokalen Mirror organisieren
+ * Mirror existiert schon vor Ort, aber nur i386&amd64 :-/
+ * Wir bräuchten noch eine fixe Box, wo wird die Mirror-Platte von Formorer anhängen können
+ * Formorer is noch nicht ganz sicher, ob er wirklich vollen Mirror mitbringen kann, hatte Plattenprobleme. Im Extremfall müssen wir auf ppc Mirror verzichten :-/
+* Beamer wäre vielleicht ne Idee (wirklich?)
+ * David hat gemeint ev. von der Angewandten, sonst mal Fabian prodden ;-)
+* Vorschläge für Wiener Linien Karten für Attendees:
+ * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756544&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756544&ctt=2]] Einzelfahrschein], 1,50€
+ * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756501&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756501&ctt=2]] 72-Stunden], 12€
+ * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756499&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756499&ctt=2]] 8 Tage], 24€
+ * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756498&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756498&ctt=2]] Wochenkarte], 12,50€, Mo-Mo 9:00
+* Auto organisieren, damit man die Leute samt Gepäck von Westbahnhof/Flughafen/whatever zum Heim bringt
+ * Greek0 hat n' Auto (wow...), könnte das schon machen, Auto aber jetzt nicht in Wien :-/
+
+### Done
+
+* Bei den Wiener Linien nachfragen, ob die nicht Zone 100 Karten für die Attendees rausrücken wollen. Sieht schlecht aus, müssen wir selber zahlen.
+* Programm überlegen: derzeitiger Plan ist Führung durch Wien, am Abend Heuriger
+* Beschreibung/Fotos wie man vom Westbahnhof/Landstraße(CAT) zum Heim kommt wären gut, damit die Leute den Weg finden die selber hinkommen wollen.
+ * Is auf wiki.d.o/BSP2006Vienna
+* Fundraising zwecks travel sponsoring
\ No newline at end of file
--- /dev/null
+
+
+[[!format txt """
+#include <stdio.h>
+#include <limits.h>
+
+#define MAX_CHAR 1000
+
+char buffer [MAX_CHAR+1];
+char solution [MAX_CHAR+1];
+
+int main(int argc, char ** argv)
+{
+ FILE * in;
+ int max, min;
+ int diff, mindiff = INT_MAX;
+ int i;
+ /**Grenzen weather: 7 13
+ * soccer: 44 51*/
+ int val [2];
+
+ if (argc != 4) exit (1);
+ for (i=0; i< 2; i++) val[i] = atoi(argv[i+2]);
+
+
+ in = fopen (argv[1],"r");
+ if (in == NULL) exit (1);
+
+ while (fgets(buffer, MAX_CHAR, in) != NULL)
+ {
+ max = atoi(&buffer[val[0]-1]);
+ min = atoi(&buffer[val[1]-1]);
+ diff = abs(max-min);
+ if (diff < mindiff && diff != 0)
+ {
+ mindiff = diff;
+ strcpy (solution, buffer);
+ }
+ }
+ printf ("%s\n", solution);
+}
+
+
+"""]]
+
+
+ [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+
+# Part 1
+
+
+[[!format txt """
+using System;
+using System.IO;
+using System.Text.RegularExpressions;
+
+namespace Kata4
+{
+ class Kata4
+ {
+ public static void Main(string[] argv)
+ {
+ FileStream fs = new FileStream("K4Weather.txt", FileMode.Open, FileAccess.Read);
+ StreamReader r = new StreamReader(fs);
+ int min_spread = Int32.MaxValue;
+ int spread_day = -1;
+ while(r.Peek() > -1)
+ {
+ string s = r.ReadLine();
+ Match fields = Regex.Match(s, "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
+ try {
+ int day = Convert.ToInt32(fields.Groups[1].ToString());
+ int min = Convert.ToInt32(fields.Groups[3].ToString());
+ int max = Convert.ToInt32(fields.Groups[2].ToString());
+ int spread = max - min;
+ if (spread <= min_spread)
+ {
+ spread_day = day;
+ min_spread = spread;
+ }
+ } catch {
+ }
+ }
+ Console.WriteLine(spread_day);
+ }
+ }
+}
+
+
+"""]]
+
+# Part 2
+
+
+[[!format txt """
+using System;
+using System.IO;
+using System.Text.RegularExpressions;
+
+namespace Kata4
+{
+ class Kata4_2
+ {
+ public static void Main(string[] argv)
+ {
+ FileStream fs = new FileStream("K4Soccer.txt", FileMode.Open, FileAccess.Read);
+ StreamReader r = new StreamReader(fs);
+ int min_spread = Int32.MaxValue;
+ string spread_day = "";
+ while(r.Peek() > -1)
+ {
+ string s = r.ReadLine();
+ Match fields = Regex.Match(s, "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
+ try {
+ string day = fields.Groups[1].ToString();
+ Console.Write("Testing");
+ Console.WriteLine(day);
+ int min = Convert.ToInt32(fields.Groups[2].ToString());
+ int max = Convert.ToInt32(fields.Groups[3].ToString());
+ int spread = Math.Abs( max - min );
+ if (spread <= min_spread)
+ {
+ spread_day = day;
+ min_spread = spread;
+ }
+ } catch {
+ }
+ }
+ Console.WriteLine(spread_day);
+ }
+ }
+}
+"""]]
+
+# Part 3
+
+
+[[!format txt """
+using System;
+using System.IO;
+using System.Text.RegularExpressions;
+
+namespace Kata4
+{
+ class Kata4_2
+ {
+ public static void Main(string[] args)
+ {
+ Console.Write("part1: ");
+ DM("K4Weather.txt", "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
+ Console.Write("part2: ");
+ DM("K4Soccer.txt", "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
+ }
+
+ public static void DM(string file, string pattern)
+ {
+ FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read);
+ StreamReader r = new StreamReader(fs);
+ int min_spread = Int32.MaxValue;
+ string spread_day = "";
+ while(r.Peek() > -1)
+ {
+ string s = r.ReadLine();
+ Match fields = Regex.Match(s, pattern);
+ try {
+ string day = fields.Groups[1].ToString();
+ int min = Convert.ToInt32(fields.Groups[2].ToString());
+ int max = Convert.ToInt32(fields.Groups[3].ToString());
+ int spread = Math.Abs( max - min );
+ if (spread <= min_spread)
+ {
+ spread_day = day;
+ min_spread = spread;
+ }
+ } catch {
+ }
+ }
+ Console.WriteLine(spread_day);
+ }
+ }
+}
+"""]]
+
+
+ [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+
+# Part 1
+
+
+[[!format txt """
+#!/usr/bin/perl
+
+while(<>)
+{
+ split;
+ next unless ($_[0] > 0 and $_[0] < 31);
+ $day = $_[0];
+ $spread = $_[1] - $_[2];
+ unless (defined $min_spread)
+ {
+ $spread_day = $day;
+ $min_spread = $spread;
+ }
+ if ($spread <= $min_spread)
+ {
+ $spread_day = $day;
+ $min_spread = $spread;
+ }
+}
+print $spread_day, "\n";
+"""]]
+
+# Part 2
+
+
+[[!format txt """
+#!/usr/bin/perl
+
+while(<>)
+{
+ split;
+ next unless ($_[0] > 0 and $_[0] < 21);
+ $team = $_[1];
+ $spread = abs($_[6] - $_[8]);
+ unless (defined $min_spread)
+ {
+ $spread_team = $team;
+ $min_spread = $spread;
+ }
+ if ($spread <= $min_spread)
+ {
+ $spread_team = $team;
+ $min_spread = $spread;
+ }
+}
+print $spread_team, "\n";
+"""]]
+
+# Part 3
+
+
+[[!format txt """
+#!/usr/bin/perl
+
+sub dm($$$$)
+{
+ my $file = shift;
+ my $label_col = shift;
+ my $alpha_col = shift;
+ my $beta_col = shift;
+
+ my ($spread_label, $min_spread) = ("", 100000);
+
+ open (IN, "<$file");
+ while(<IN>)
+ {
+ split;
+ next unless ($_[$alpha_col] =~ /^[0-9]+/);
+ next unless ($_[$beta_col] =~ /^[0-9]+/);
+ my $label = $_[$label_col];
+ my $spread = abs($_[$alpha_col] - $_[$beta_col]);
+ unless (defined $min_spread)
+ {
+ print ".";
+ $spread_label = $label;
+ $min_spread = $spread;
+ }
+ if ($spread <= $min_spread)
+ {
+ $spread_label = $label;
+ $min_spread = $spread;
+ }
+ }
+ close (IN);
+ $spread_label;
+}
+
+print "part1: ", dm("../K4Weather.txt", 0, 1, 2), "\n";
+print "part2: ", dm("../K4Soccer.txt", 1, 6, 8), "\n";
+"""]]
+
+
+ [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+das ist direkt version 3.
+
+schritt eins war sehr hart. musste noch viel scheme zeug lernen. 2 und 3 war eher piece of cake ;)
+
+FIXME: die zeilen bevor die daten anfangen, hab ich einfach rausgeloescht, das koennte besser sein. FIXME: ich glaub file einlesen koennte einfacher gehen.
+
+
+[[!format txt """
+#!/usr/bin/scsh \
+-o big-scheme -s
+!#
+
+(define (datamunge file comment resulter comparer)
+ (begin
+ (display comment)
+ (display
+ (car
+ (sort-list
+ (call-with-input-file file
+ (lambda (port)
+ (awk ((field-reader (field-splitter (rx (+ (~ white "*" "-"))))) port)
+ (record fields)
+ ((resultlist (list)))
+ (else
+ (cons (list (resulter fields)
+ (comparer fields))
+ resultlist)))))
+ (lambda (a b)
+ (< (cadr a) (cadr b))))))
+ (newline)))
+
+(datamunge "/home/lefant/scheme/code/kata04_data1.txt" "weather"
+ car
+ (lambda (alist) (- (string->number (list-ref alist 1))
+ (string->number (list-ref alist 2)))))
+
+(datamunge "/home/lefant/scheme/code/kata04_data2.txt" "soccer"
+ cadr
+ (lambda (alist) (abs (- (string->number (list-ref alist 6))
+ (string->number (list-ref alist 7))))))
+"""]]
+
+
+ [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+* [[http://blogs.pragprog.com/cgi-bin/pragdave.cgi/Practices/Kata/KataFour.rdoc|http://blogs.pragprog.com/cgi-bin/pragdave.cgi/Practices/Kata/KataFour.rdoc]]
+
+* [[/CSharp|Kata4Lösungen/CSharp]]
+* [[/Perl|Kata4Lösungen/Perl]]
+* [[/C|Kata4Lösungen/C]]
+* [[/ScSh|Kata4Lösungen/ScSh]] by [[Lefant]]
+
+
+ [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+Lokal bedeutet in diesem Zusammenhang, vom Netzwerk im Buero der q/uintessenz aus. Waehrend auch von anderswo oeffentlich verfuegbar, ist es dann vermutlich nicht besonders schnell, und daher nicht so zu empfehlen. Besser in der offiziellen Liste nachschauen: [[http://www.debian.org/mirror/list|http://www.debian.org/mirror/list]]
+
+update: at.i386.mirror.debian.net ist im dns auf der firewall im q/office auf rerun.lefant.net umgeleitet, dadurch ist es am einfachsten man verwendet diesen hostname fuer den mirror, dadurch bekommt man beim treff den lokalen mirror, und daheim den offiziellen.
+
+Nach Festplattenspende durch [DavidSchmitt](/Benutzer/DavidSchmitt) haben wir jetzt wieder das volle sortiment: i386,{sarge,etch,sid}
+
+Um bei der q/uintessenz rerun als mirror zu verwenden, folgendes in die Datei `/etc/apt/sources.list` eintragen
+
+die "mir ist das zu kompliziert, ich will es schnell und einfach"-variante:
+
+
+[[!format txt """
+deb http://at.i386.mirror.debian.net/debian etch main
+"""]]
+oder (zusaetzlich) von folgendem gewuenschtes auswaehlen:
+
+
+[[!format txt """
+deb http://at.i386.mirror.debian.net/debian etch main
+deb http://at.i386.mirror.debian.net/debian sid main
+"""]]
+Bei Neuinstallation mittels debian-installer, bei der Auswahl des Mirrors die option "select alternate mirror..." (oder so aehnlich, FIXME), auswaehlen, und `at.i386.mirror.debian.net` eingeben, kein proxy, ordner `/debian` (ev. bei problemen auch `/debian/` ausprobieren, es gab bei mir manchmal ein problem mit dem slash am schluss).
+
+aus platzgruenden gibt es nur binary pakete fuer i386. bei problemen im [[IrcChannel|IrcChannel]] bescheid geben, oder an [[Lefant]] (<[[e@lefant.net|mailto:e@lefant.net]]>) schreiben.
--- /dev/null
+
+Debian ist nicht Ubuntu, Ubuntu ist nicht Debian. naja, aber fuer einsteiger(innen) sicher nicht so schlecht, und die cds sind auch bunt.
+
+deswegen gabs mal einen mirror, jetzt schon laenger nimmer, weil der platz fehlt. tja.
--- /dev/null
+
+
+## Punschtrunk am 26.12.2005
+
+Redtux und Deucalion konnten nicht davon abgebracht werden, ein Punschtrinken für diesen Abend zu veranstalten. :-)
+
+Punsch bzw und ev Glühwein (kann jemand Interesse für letzteres aufbringen?)
+
+Stattfinden soll das ganze etwas nach 20 Uhr (i.e. 20.30 wirds dann Punsch etc geben). Der genaue Zeitpunkt wird im Laufe des 25.12. festgelegt, genauso wie die benötigte Menge an Dingen die eingekauft werden müssen. (Deucalion wird am Montag Vormittag den Bahnhofsbilla plündern, ist planungstechnisch am einfachsten so.)
+
+Derzeitige Schätzung wäre 10/15 Leute, die kommen und Punsch trinken.
+
+
+### Rezeptvorschlag / "components"
+
+Sollte sich jemand schon gemeldet haben und etwas mitbringen, hier dies bitte zu notieren!
+
+_must have_
+
+* Größerer Kochtopf samt herdartiger Platte (redtux)
+* Schwarztee (deucalion)
+* Zitronen (deucalion)
+* Zimt, Gewürznelken, Ingwer, Zucker (deucalion)
+* Orangen / Orangensaft _Menge?_
+* Rum _Menge?_
+(deucalion für die Orangen* und Rum, allerdings weiß er noch nicht wieviel)
+
+_nice to have_
+
+* Rotwein _?_
+
+### Sonstige Vorschläge
+
+Ein paar Dinge zum schnabulieren wären sicher nett für alle die kommen. Je nach Lust und Laune mitbringen, aber idealerweise hier reinschreiben, wenn jmd derartiges vorhat! Thx! :-)
--- /dev/null
+
+![](qoffice-netboot2.png)
--- /dev/null
+
+/etc/dhcp3/dhcpd.conf for dhcp3-server that runs on odyssey to allow netbooting together with atftpd and di-netboot-assitant.
+
+
+[[!format txt """
+ddns-update-style none;
+
+not authoritative;
+default-lease-time 604800;
+max-lease-time 604800;
+
+option domain-name "quintessenz.net";
+option domain-name-servers 192.168.100.1;
+
+next-server 192.168.100.1;
+server-name "192.168.100.1";
+filename "pxelinux.0";
+
+subnet 192.168.100.0 netmask 255.255.255.0 {
+ range 192.168.100.100 192.168.100.200;
+ option routers 192.168.100.1;
+}
+"""]]
\ No newline at end of file
--- /dev/null
+
+Norbert Tretkowski berichtet:
+
+Backport of openoffice.org 2.0.0 for sarge available
+
+Rene Engelhard, one of Debians openoffice.org maintainers, built a backport of openoffice.org 2.0.0-2 for sarge. It's available from here, and of course you can install it using apt, just add this line to your sources.list:
+
+
+[[!format txt """
+deb http://www.backports.org/pending/openoffice.org/ ./
+"""]]
+
+
+ [[!tag CategoryTipsAndTricks]]
--- /dev/null
+
+
+### Intro
+
+42 hat gerade ein neues project gestartet
+
+bist du an einem geclusterteten backupspace
+ über mehrere server interessiert?
+
+weil der backupspace deines dedicatet root servers zu klein ist?
+ und hast am server noch über 250 gig frei?
+
+wir experimentieren mit
+ [[http://www.gluster.org|http://www.gluster.org]]
+
+es gibt in den debian backports ein package
+[[!format txt """
+deb http://ftp.de.debian.org/backports.org/ lenny-backports main contrib non-free
+"""]]
+wir suchen weitere member
+ bei interesse, subscribe
+ [[http://lists.free-minds.net/listinfo/42-backup|http://lists.free-minds.net/listinfo/42-backup]]
+
+
+### Doku
+
+
+[[!format txt """
+sudo glusterfs-volgen --name=backup --transport=tcp --raid=1 [IP 1]:/srv/gluster [IP 2]:/srv/gluster
+"""]]
+
+[[!format txt """
+nmap -sS [IP] -T5 -p 6996
+"""]]
+
+[[!format txt """
+watch du -sh /mnt/backup/* /srv/gluster/*
+"""]]
+
+### Links
+
+* [[http://www.gluster.org|http://www.gluster.org]]
+* [[how2 @howtoforge|http://www.howtoforge.com/high-availability-storage-with-glusterfs-on-debian-lenny-automatic-file-replication-across-two-storage-servers]]
+* [[http://forum.openvz.org/index.php?t=msg&goto=35230&|http://forum.openvz.org/index.php?t=msg&goto=35230&]]
+* [[http://gluster.org/pipermail/gluster-users/2010-March/004083.html|http://gluster.org/pipermail/gluster-users/2010-March/004083.html]]
+* [[http://www.gluster.com/community/documentation/index.php/Understanding_AFR_Translator#Self-Heal|http://www.gluster.com/community/documentation/index.php/Understanding_AFR_Translator#Self-Heal]]
+* [[http://www.gluster.com/community/documentation/index.php/Translators/cluster|http://www.gluster.com/community/documentation/index.php/Translators/cluster]]
+* [[OpenVPN Hints|OpenVPN/hints]]
+* [[OpenVPN Shell History|OpenVPN/history]]
\ No newline at end of file
--- /dev/null
+
+Jeden ersten Montag im Monat sind speziell Frischlinge willkommen!
+
+Debian installieren - Ubuntu installieren - Probleme lösen!
+
+CDs brennen, ganz leicht!
+
+Drucken jetzt!
+
+Kommt vorbei! Bringt Freunde und Rechner mit! Monitore vorhanden.
+
+Hilfe für Installation, Konfiguration und Nutzung von Linux Kisten.
--- /dev/null
+
+
+## Exim Konfiguration:
+
+
+### Main
+
+zuerst:
+[[!format txt """
+sudo aptitude install clamav spamassassin spamc greylistd
+
+adduser clamav Debian-exim
+adduser Debian-exim clamav
+"""]]
+/etc/clamav/clamd.conf
+[[!format txt """
+#Automatically Generated by clamav-base postinst
+#To reconfigure clamd run #dpkg-reconfigure clamav-base
+#Please read /usr/share/doc/clamav-base/README.Debian.gz for details
+LocalSocket /var/run/clamav/clamd.ctl
+FixStaleSocket
+User clamav
+AllowSupplementaryGroups
+ScanMail
+ScanArchive
+ArchiveMaxRecursion 5
+ArchiveMaxFiles 1000
+ArchiveMaxFileSize 10M
+ArchiveMaxCompressionRatio 250
+ReadTimeout 180
+MaxThreads 12
+MaxConnectionQueueLength 15
+LogFile /var/log/clamav/clamav.log
+LogTime
+LogFileMaxSize 0
+PidFile /var/run/clamav/clamd.pid
+DatabaseDirectory /var/lib/clamav
+SelfCheck 3600
+ScanOLE2
+ScanPE
+DetectBrokenExecutables
+ScanHTML
+ArchiveBlockMax
+"""]]
+/etc/exim4/conf.d/main/02_exim4-config_options
+[[!format txt """
+### main/02_exim4-config_options
+#################################
+
+av_scanner = clamd:/var/run/clamav/clamd.ctl
+spamd_address = 127.0.0.1 783
+
+...
+"""]]
+/etc/exim4/conf.d/acl/30_exim4-config_check_rcpt
+[[!format txt """
+# This access control list is used for every RCPT command in an incoming
+# SMTP message. The tests are run in order until the address is either
+# accepted or denied.
+#
+acl_check_rcpt:
+
+ # Accept if the source is local SMTP (i.e. not over TCP/IP). We do this by
+ # testing for an empty sending host field.
+ accept hosts = :
+
+ # Add missing Date and Message-ID header for relayed messages
+ warn hosts = +relay_from_hosts
+ control = submission/sender_retain
+
+ # The following section of the ACL is concerned with local parts that contain
+ # @ or % or ! or / or | or dots in unusual places.
+ #
+ # The characters other than dots are rarely found in genuine local parts, but
+ # are often tried by people looking to circumvent relaying restrictions.
+ # Therefore, although they are valid in local parts, these rules lock them
+ # out, as a precaution.
+ #
+ # Empty components (two dots in a row) are not valid in RFC 2822, but Exim
+ # allows them because they have been encountered. (Consider local parts
+ # constructed as "firstinitial.secondinitial.familyname" when applied to
+ # someone like me, who has no second initial.) However, a local part starting
+ # with a dot or containing /../ can cause trouble if it is used as part of a
+ # file name (e.g. for a mailing list). This is also true for local parts that
+ # contain slashes. A pipe symbol can also be troublesome if the local part is
+ # incorporated unthinkingly into a shell command line.
+ #
+ # Two different rules are used. The first one is stricter, and is applied to
+ # messages that are addressed to one of the local domains handled by this
+ # host. It blocks local parts that begin with a dot or contain @ % ! / or |.
+ # If you have local accounts that include these characters, you will have to
+ # modify this rule.
+ deny domains = +local_domains
+ local_parts = ^[.] : ^.*[@%!/|\'`#&?]
+ message = restricted characters in address
+
+ # The second rule applies to all other domains, and is less strict. This
+ # allows your own users to send outgoing messages to sites that use slashes
+ # and vertical bars in their local parts. It blocks local parts that begin
+ # with a dot, slash, or vertical bar, but allows these characters within the
+ # local part. However, the sequence /../ is barred. The use of @ % and ! is
+ # blocked, as before. The motivation here is to prevent your users (or
+ # your users' viruses) from mounting certain kinds of attack on remote sites.
+
+ deny domains = !+local_domains
+ local_parts = ^[./|] : ^.*[@%!\'`#&?] : ^.*/\\.\\./
+ message = restricted characters in address
+
+ # Accept mail to postmaster in any local domain, regardless of the source,
+ # and without verifying the sender.
+ #
+ accept local_parts = postmaster
+ domains = +local_domains
+
+ # deny bad senders (envelope sender)
+ # CONFDIR/local_sender_blacklist holds a list of envelope senders that
+ # should have their access denied to the local host. Incoming messages
+ # with one of these senders are rejected at RCPT time.
+ #
+ # The explicit white lists are honored as well as negative items in
+ # the black list. See /usr/share/doc/exim4-config/default_acl for details.
+ deny message = sender envelope address $sender_address is locally blacklisted here. If you think this is wrong, get in touch with postmaster
+ !acl = acl_whitelist_local_deny
+ senders = ${if exists{CONFDIR/local_sender_blacklist}\
+ {CONFDIR/local_sender_blacklist}\
+ {}}
+
+ # deny bad sites (IP address)
+ # CONFDIR/local_host_blacklist holds a list of host names, IP addresses
+ # and networks (CIDR notation) that should have their access denied to
+ # The local host. Messages coming in from a listed host will have all
+ # RCPT statements rejected.
+ #
+ # The explicit white lists are honored as well as negative items in
+ # the black list. See /usr/share/doc/exim4-config/default_acl for details.
+ deny message = sender IP address $sender_host_address is locally blacklisted here. If you think this is wrong, get in touch with postmaster
+ !acl = acl_whitelist_local_deny
+ hosts = ${if exists{CONFDIR/local_host_blacklist}\
+ {CONFDIR/local_host_blacklist}\
+ {}}
+
+
+
+ # Deny unless the sender address can be verified.
+ #
+ # This is disabled by default so that DNSless systems don't break. If
+ # your system can do DNS lookups without delay or cost, you might want
+ # to enable the following line.
+ #deny message = Sender verification failed
+ # !acl = acl_whitelist_local_deny
+ # !verify = sender
+
+ # Warn if the sender host does not have valid reverse DNS.
+ #
+ # This is disabled by default so that DNSless systems don't break. If
+ # your system can do DNS lookups without delay or cost, you might want
+ # to enable the following lines.
+ # If sender_host_address is defined, it's a remote call. If
+ # sender_host_name is not defined, then reverse lookup failed. Use
+ # this instead of !verify = reverse_host_lookup to catch deferrals
+ # as well as outright failures.
+ warn message = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address (${if eq{$host_lookup_failed}{1}{failed}{deferred}})
+ condition = ${if and{{def:sender_host_address}{!def:sender_host_name}}\
+ {yes}{no}}
+
+ #############################################################################
+ # There are no checks on DNS "black" lists because the domains that contain
+ # these lists are changing all the time. You can find examples of
+ # how to use dnslists in /usr/share/doc/exim4-config/examples/acl
+ #############################################################################
+
+
+ # Perform greylisting on incoming messages from remote hosts.
+ # We do NOT greylist messages with no envelope sender, because that
+ # would conflict with remote hosts doing callback verifications, and we
+ # might not be able to send mail to such hosts for a while (until the
+ # callback attempt is no longer greylisted, and then some).
+ #
+ # We also check the local whitelist to avoid greylisting mail from
+ # hosts that are expected to forward mail here (such as backup MX hosts,
+ # list servers, etc).
+ #
+ # Because the recipient address has not yet been verified, we do so
+ # now and skip this statement for non-existing recipients. This is
+ # in order to allow for a 550 (reject) response below. If the delivery
+ # happens over a remote transport (such as "smtp"), recipient callout
+ # verification is performed, with the original sender intact.
+ #
+ defer
+ message = $sender_host_address is not yet authorized to deliver. \
+ Please try later.
+ log_message = greylisted.
+ !senders = :
+ !hosts = : +relay_from_hosts : \
+ ${if exists {/etc/greylistd/whitelist-hosts}\
+ {/etc/greylistd/whitelist-hosts}{}} : \
+ ${if exists {/var/lib/greylistd/whitelist-hosts}\
+ {/var/lib/greylistd/whitelist-hosts}{}}
+ !authenticated = *
+ !acl = acl_whitelist_local_deny
+ domains = +local_domains : +relay_to_domains : dsearch;/etc/exim4/virtual
+ verify = recipient/callout=20s,use_sender,defer_ok
+ condition = ${readsocket{/var/run/greylistd/socket}\
+ {--grey \
+ ${mask:$sender_host_address/24}} \
+# $sender_address \
+# $local_part@$domain}\
+ {5s}{}{false}}
+
+
+
+ # Accept if the address is in a local domain, but only if the recipient can
+ # be verified. Otherwise deny. The "endpass" line is the border between
+ # passing on to the next ACL statement (if tests above it fail) or denying
+ # access (if tests below it fail).
+ #
+ accept domains = +local_domains
+ endpass
+ message = unknown user
+ verify = recipient
+
+ accept domains = dsearch;/etc/exim4/virtual
+ endpass
+ message = unknown user
+ verify = recipient
+
+ # Accept if the address is in a domain for which we are relaying, but again,
+ # only if the recipient can be verified.
+ #
+ accept domains = +relay_to_domains
+ endpass
+ message = unrouteable address
+ verify = recipient
+
+ # If control reaches this point, the domain is neither in +local_domains
+ # nor in +relay_to_domains.
+
+ # Accept if the message comes from one of the hosts for which we are an
+ # outgoing relay. Recipient verification is omitted here, because in many
+ # cases the clients are dumb MUAs that don't cope well with SMTP error
+ # responses. If you are actually relaying out from MTAs, you should probably
+ # add recipient verification here.
+ #
+ accept hosts = +relay_from_hosts
+
+ # Accept if the message arrived over an authenticated connection, from
+ # any host. Again, these messages are usually from MUAs, so recipient
+ # verification is omitted.
+ #
+ accept authenticated = *
+
+ # Reaching the end of the ACL causes a "deny", but we might as well give
+ # an explicit message.
+ #
+ deny message = relay not permitted
+
+
+"""]]
+/etc/exim4/conf.d/acl/40_exim4-config_check_data
+[[!format txt """
+# 40_exim4-config_check_data
+
+acl_check_data:
+ # greylistd(8) configuration follows.
+ # This statement has been added by "greylistd-setup-exim4",
+ # and can be removed by running "greylistd-setup-exim4 remove".
+ # Any changes you make here will then be lost.
+ #
+ # Perform greylisting on incoming messages with no envelope sender here.
+ # We did not subject these to greylisting after RCPT TO:, because that
+ # would interfere with remote hosts doing sender callout verifications.
+ #
+ # Because there is no sender address, we supply only two data items:
+ # - The remote host address
+ # - The recipient address (normally, bounces have only one recipient)
+ #
+ # We also check the local whitelist to avoid greylisting mail from
+ # hosts that are expected to forward mail here (such as backup MX hosts,
+ # list servers, etc).
+ #
+ defer
+ message = $sender_host_address is not yet authorized to deliver. \
+ Please try later.
+ log_message = greylisted.
+ senders = :
+ !hosts = : +relay_from_hosts : \
+ ${if exists {/etc/greylistd/whitelist-hosts}\
+ {/etc/greylistd/whitelist-hosts}{}} : \
+ ${if exists {/var/lib/greylistd/whitelist-hosts}\
+ {/var/lib/greylistd/whitelist-hosts}{}}
+ !authenticated = *
+ !acl = acl_whitelist_local_deny
+ condition = ${readsocket{/var/run/greylistd/socket}\
+ {--grey \
+ ${mask:$sender_host_address/24}} \
+# $recipients}\
+ {5s}{}{false}}
+
+
+ # Deny unless the address list headers are syntactically correct.
+ #
+ # This is disabled by default because it might reject legitimate mail.
+ # If you want your system to insist on syntactically valid address
+ # headers, you might want to enable the following lines.
+ # deny message = Message headers fail syntax check
+ # !acl = acl_whitelist_local_deny
+ # !verify = header_syntax
+
+ # require that there is a verifiable sender address in at least
+ # one of the "Sender:", "Reply-To:", or "From:" header lines.
+ # deny message = No verifiable sender address in message headers
+ # !acl = acl_whitelist_local_deny
+ # !verify = header_sender
+
+
+deny message = Serious MIME defect detected ($demime_reason)
+ demime = *
+ condition = ${if >{$demime_errorlevel}{2}{1}{0}}
+
+deny message = Blacklisted file extension detected
+ condition = ${if match \
+ {${lc:$mime_filename}} \
+ {\N(\.bat|\.com|\.exe|\.pif|\.prf|\.scr|\.vbs)$\N} \
+ {1}{0}}
+
+deny message = This message contains malware ($malware_name)
+ malware = *
+
+
+# Always put X-Spam-Score header in the message.
+# It looks like this:
+# X-Spam-Score: 6.6 (++++++)
+# When a MUA cannot match numbers, it can match for an
+# equivalent number of '+' signs.
+# The 'true' makes sure that the header is always put
+# in, no matter what the score.
+warn message = X-Spam-Score: $spam_score ($spam_bar)
+ condition = ${if <{$message_size}{300k}{1}{0}}
+ spam = spamassassin:true
+
+# Always put X-Spam-Report header in the message.
+# This is a multiline header that informs the user
+# which tests a message has "hit", and how much a
+# test has contributed to the score.
+warn message = X-Spam-Flag: YES
+ condition = ${if <{$message_size}{300k}{1}{0}}
+ spam = spamassassin:true
+ condition = ${if >{$spam_score_int}{30}{1}{0}}
+
+
+deny message = Spam score too high ($spam_score)
+ condition = ${if <{$message_size}{300k}{1}{0}}
+ spam = spamassassin:true
+ condition = ${if >{$spam_score_int}{100}{1}{0}}
+
+
+ # accept otherwise
+ accept
+"""]]
+
+
+ [[!tag CategoryCodeSnippets]] [[!tag CategoryTipsAndTricks]]
--- /dev/null
+
+
+## Exim Konfiguration:
+
+
+### Main
+
+
+[[!format txt """
+cat /etc/exim4/conf.d/main/04_exim4-config_mailman
+
+ # Home dir for your Mailman installation -- aka Mailman's prefix
+ # directory.
+ # By default this is set to "/usr/local/mailman"
+ # On a Red Hat/Fedora system using the RPM use "/var/mailman"
+ # On Debian using the deb package use "/var/lib/mailman"
+ # This is normally the same as ~mailman
+ MM_HOME=/var/lib/mailman
+ #
+ # User and group for Mailman, should match your --with-mail-gid
+ # switch to Mailman's configure script.
+ # Value is normally "mailman"
+ MM_UID=list
+ MM_GID=list
+ #
+ # Domains that your lists are in - colon separated list
+ # you may wish to add these into local_domains as well
+ domainlist mm_domains=rerun.lefant.net:debienna.at:dsearch;/etc/exim4/virtual
+ #
+ # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+ #
+ # These values are derived from the ones above and should not need
+ # editing unless you have munged your mailman installation
+ #
+ # The path of the Mailman mail wrapper script
+ MM_WRAP=MM_HOME/mail/mailman
+ #
+ # The path of the list config file (used as a required file when
+ # verifying list addresses)
+ MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck
+
+"""]]
+
+### Router
+
+
+[[!format txt """
+cat /etc/exim4/conf.d/router/185_exim4-config_mailman
+# This router handles mailman
+#
+ mailman_router:
+ driver = accept
+ domains = +mm_domains
+ require_files = MM_LISTCHK
+ local_part_suffix_optional
+ local_part_suffix = -admin : -bounces : -bounces+* : -confirm : -confirm+* : -join : -leave : -owner : -request : -subscribe : -unsubscribe
+ transport = mailman_transport
+"""]]
+
+### Transport
+
+
+[[!format txt """
+cat /etc/exim4/conf.d/transport/35_exim4-config_mailman
+ mailman_transport:
+ driver = pipe
+ command = MM_WRAP \
+ '${if def:local_part_suffix \
+ {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}} } \
+ {post}}' \
+ $local_part
+ current_directory = MM_HOME
+ home_directory = MM_HOME
+ user = MM_UID
+ group = MM_GID
+"""]]
+* siehe auch: [[RerunLefantNet|RerunLefantNet]]
+
+ [[!tag CategoryTipsAndTricks]] [[!tag CategoryCodeSnippets]]
--- /dev/null
+
+Hin und wieder gibt es bei uns Sachen, die zum Selbstkostenpreis verkauft werden. Zur Zeit sind dies noch einige Restposten der produzierten Debienna-Shirts. Folgende sind noch vorhanden:
+[[!table header="no" class="mointable" data="""
+ **Typ** | **Größe** | **Anzahl** | **Preis**
+ Polo | XL | 2 | 25,-
+ Polo | L | 2 | 25,-
+ Polo | M | 7 (+2) | 25,-
+ Girlie | L | 4 (+1) | 20,-
+ Girlie | M | 16 (+2) | 20,-
+ Girlie | S | 14 (+2) | 20,-
+"""]]
+
+Die Qualität ist entsprechend hoch, und Polos sind im Einkauf schon nicht günstig. Wenn ihr welche wollt, meldet euch am Besten bei [GerfriedFuchs](/Benutzer/GerfriedFuchs) bzw. am [[DebiennaTreff|DebiennaTreff]] direkt, sie sind vor Ort gelagert (bis auf die Menge in Klammern)
--- /dev/null
+
+wegbeschreibung in bilderform:
+
+* [[!img cimg3314.jpg size=150x]]
+* [[!img cimg3315.jpg size=150x]]
+* [[!img cimg3316.jpg size=150x]]
+* [[!img cimg3317.jpg size=150x]]
+* [[!img cimg3318.jpg size=150x]]
+* [[!img cimg3319.jpg size=150x]]
+* [[!img cimg3320.jpg size=150x]]
+* [[!img cimg3321.jpg size=150x]]
+* [[!img cimg3322.jpg size=150x]]
+* [[!img cimg3323.jpg size=150x]]
+* [[!img cimg3325.jpg size=150x]]
+++ /dev/null
-
-
-# BSP2006Vienna
-
-Eine [[[http://wiki.debian.org/BSP|http://wiki.debian.org/BSP]] Bugsquashing Party] in Wien im Rahmen des [[[http://wiki.debian.org/BSPMarathon|http://wiki.debian.org/BSPMarathon]] Bugsquashing Marathons].
-
-Wer gern kommen möchte, möge sich bitte auf der [[[http://wiki.debian.org/BSP2006Vienna|http://wiki.debian.org/BSP2006Vienna]] entsprechenden Seite] im Debian Wiki eintragen.
-
-Wer gern bei der Organisation mithelfen möchte, möge sich bitte auf der [[[mailto:debienna@rerun.lefant.net|mailto:debienna@rerun.lefant.net]] Debienna Mailing List] melden (alternativ natürlich auch persönlich jeden Montag beim [[DebiennaTreff|DebiennaTreff]]).
-
-Siehe auch das ["BSPHowto"].
-
-
-## Details
-
-(Bitte mit der [[[http://wiki.debian.org/BSP2006Vienna|http://wiki.debian.org/BSP2006Vienna]] Page] im [[[http://wiki.debian.org|http://wiki.debian.org]] Debian Wiki] syncen, wenn man hier was ändert)
-
-* Datum: 8.-10. September 2006
-* Location: Don Bosco Studentenwohnheim [[[http://www.donbosco.sth.ac.at/|http://www.donbosco.sth.ac.at/]]]
-* Unterbringung: Direkt im Studentenheim, bis zu 16 Schlafplätze, 3-4 Personen pro Doppelzimmer, verfügbar von Freitag Nachmittag bis Sonntag 10:00
-* Ort zum Hacken: Seminarraum direkt im Studentenheim, Verfügbar Freitag bis inklusive Sonntag
-* Verpflegung: Kostenlos für Alle
- * Frühstück: 7:00 - 9:00
- * Brote, Getränke, etc. gibt's auch über'n Tag direkt dort
- * Mittag-/Abendessen: Nach Bedarf (Pizza, Schnitzlplatzl, etc. auf Vegetarier wird Rücksicht genommen)
-* Netzwerk:
- * 6 mbit/s Uplink zur Uni Wien
- * Ports 25 und 80 sind geblockt, dafür gibt's http proxy & smtp relay
- * Benötigt: MAC-Addressen der Attendees ein paar Tage vorher, damit die am Switch freigeschaltet werden können.
-* Mirror: Formorer bringt einen i386/amd64/ppc Mirror auf einer USB-Disk mit (unsicher)
-
-## Organisatorisches
-
-* Aufbau ab Freitag
-* Lange Netzwerkkabel für den Seminarraum organisieren
-* Liste mit MAC's vom Debian Wiki nehmen und irgendwann mal an Hansi weiterreichen
- * Ich (Gr0) sammel noch MACs von aba & sjr ein, dann maile ich mal Hansi
-* Lokalen Mirror organisieren
- * Mirror existiert schon vor Ort, aber nur i386&amd64 :-/
- * Wir bräuchten noch eine fixe Box, wo wird die Mirror-Platte von Formorer anhängen können
- * Formorer is noch nicht ganz sicher, ob er wirklich vollen Mirror mitbringen kann, hatte Plattenprobleme. Im Extremfall müssen wir auf ppc Mirror verzichten :-/
-* Beamer wäre vielleicht ne Idee (wirklich?)
- * David hat gemeint ev. von der Angewandten, sonst mal Fabian prodden ;-)
-* Vorschläge für Wiener Linien Karten für Attendees:
- * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756544&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756544&ctt=2]] Einzelfahrschein], 1,50€
- * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756501&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756501&ctt=2]] 72-Stunden], 12€
- * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756499&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756499&ctt=2]] 8 Tage], 24€
- * [[[http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756498&ctt=2|http://www.wienerlinien.at/wl/wlinien/jsp/content/item_detail.jsp?chnid=-1073753112&prgid=1073755272&ctt=2&rid=-1073753109&oid=1073756498&ctt=2]] Wochenkarte], 12,50€, Mo-Mo 9:00
-* Auto organisieren, damit man die Leute samt Gepäck von Westbahnhof/Flughafen/whatever zum Heim bringt
- * Greek0 hat n' Auto (wow...), könnte das schon machen, Auto aber jetzt nicht in Wien :-/
-
-### Done
-
-* Bei den Wiener Linien nachfragen, ob die nicht Zone 100 Karten für die Attendees rausrücken wollen. Sieht schlecht aus, müssen wir selber zahlen.
-* Programm überlegen: derzeitiger Plan ist Führung durch Wien, am Abend Heuriger
-* Beschreibung/Fotos wie man vom Westbahnhof/Landstraße(CAT) zum Heim kommt wären gut, damit die Leute den Weg finden die selber hinkommen wollen.
- * Is auf wiki.d.o/BSP2006Vienna
-* Fundraising zwecks travel sponsoring
\ No newline at end of file
* [[HowToScreencast|HowToScreencast]]
* [[CreateDebianPackages|CreateDebianPackages]]
* Netboot Background GIMP Workshop
- * [[NetbootBackground|NetbootBackground]]
+ * [NetbootBackground](/Archive/NetbootBackground)
* Server Workshop
* [[Workshop]]
* Party
* [[Workshop]]
* die Vserver mit ihren Diensten installiert
-* rerun´s debian mirror analysiert und rekonfiguriert, siehe auch [[LokalerDebianMirror|LokalerDebianMirror]]
+* rerun´s debian mirror analysiert und rekonfiguriert, siehe auch [LokalerDebianMirror](/Archive/LokalerDebianMirror)
* um wieder platz zu schaffen werden die sourcen nicht mehr gemirrored
* an den performanceproblemen ist scheinbar der switch am tisch schuld
* rerun upgrade auf lenny: exim4 muckt wegen veraenderter debconf variablen, weshalb ihn der ungeduldige [[Lefant]] gleich zuerst deinstalliert und nachher wieder neuinstalliert. sonst alles reibungslos.
* OpenVPN Server in OpenVZ CLient? -> WORKS! [[OpenVPN|OpenVPN]]
* hat jemand sein neo freerunner dabei?
-* [[Lefant]] installiert seinen laptop. netbooting am Evo N410c mit standard bios ist ein bissl eigentuemlich. mit dhcp und tftpboot server am selben rechner und dhcp3-server mit [[OdysseyDhcpdConf|OdysseyDhcpdConf]] gings dann, nachdem es mit dnsmasq nicht hinzubekommen war.
+* [[Lefant]] installiert seinen laptop. netbooting am Evo N410c mit standard bios ist ein bissl eigentuemlich. mit dhcp und tftpboot server am selben rechner und dhcp3-server mit [OdysseyDhcpdConf](/Archive/OdysseyDhcpdConf) gings dann, nachdem es mit dnsmasq nicht hinzubekommen war.
* 2 neo freerunner waren zu sehen ;)
### Tipp des Tages
+++ /dev/null
-
-
-[[!format txt """
-#include <stdio.h>
-#include <limits.h>
-
-#define MAX_CHAR 1000
-
-char buffer [MAX_CHAR+1];
-char solution [MAX_CHAR+1];
-
-int main(int argc, char ** argv)
-{
- FILE * in;
- int max, min;
- int diff, mindiff = INT_MAX;
- int i;
- /**Grenzen weather: 7 13
- * soccer: 44 51*/
- int val [2];
-
- if (argc != 4) exit (1);
- for (i=0; i< 2; i++) val[i] = atoi(argv[i+2]);
-
-
- in = fopen (argv[1],"r");
- if (in == NULL) exit (1);
-
- while (fgets(buffer, MAX_CHAR, in) != NULL)
- {
- max = atoi(&buffer[val[0]-1]);
- min = atoi(&buffer[val[1]-1]);
- diff = abs(max-min);
- if (diff < mindiff && diff != 0)
- {
- mindiff = diff;
- strcpy (solution, buffer);
- }
- }
- printf ("%s\n", solution);
-}
-
-
-"""]]
-
-
- [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-
-# Part 1
-
-
-[[!format txt """
-using System;
-using System.IO;
-using System.Text.RegularExpressions;
-
-namespace Kata4
-{
- class Kata4
- {
- public static void Main(string[] argv)
- {
- FileStream fs = new FileStream("K4Weather.txt", FileMode.Open, FileAccess.Read);
- StreamReader r = new StreamReader(fs);
- int min_spread = Int32.MaxValue;
- int spread_day = -1;
- while(r.Peek() > -1)
- {
- string s = r.ReadLine();
- Match fields = Regex.Match(s, "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
- try {
- int day = Convert.ToInt32(fields.Groups[1].ToString());
- int min = Convert.ToInt32(fields.Groups[3].ToString());
- int max = Convert.ToInt32(fields.Groups[2].ToString());
- int spread = max - min;
- if (spread <= min_spread)
- {
- spread_day = day;
- min_spread = spread;
- }
- } catch {
- }
- }
- Console.WriteLine(spread_day);
- }
- }
-}
-
-
-"""]]
-
-# Part 2
-
-
-[[!format txt """
-using System;
-using System.IO;
-using System.Text.RegularExpressions;
-
-namespace Kata4
-{
- class Kata4_2
- {
- public static void Main(string[] argv)
- {
- FileStream fs = new FileStream("K4Soccer.txt", FileMode.Open, FileAccess.Read);
- StreamReader r = new StreamReader(fs);
- int min_spread = Int32.MaxValue;
- string spread_day = "";
- while(r.Peek() > -1)
- {
- string s = r.ReadLine();
- Match fields = Regex.Match(s, "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
- try {
- string day = fields.Groups[1].ToString();
- Console.Write("Testing");
- Console.WriteLine(day);
- int min = Convert.ToInt32(fields.Groups[2].ToString());
- int max = Convert.ToInt32(fields.Groups[3].ToString());
- int spread = Math.Abs( max - min );
- if (spread <= min_spread)
- {
- spread_day = day;
- min_spread = spread;
- }
- } catch {
- }
- }
- Console.WriteLine(spread_day);
- }
- }
-}
-"""]]
-
-# Part 3
-
-
-[[!format txt """
-using System;
-using System.IO;
-using System.Text.RegularExpressions;
-
-namespace Kata4
-{
- class Kata4_2
- {
- public static void Main(string[] args)
- {
- Console.Write("part1: ");
- DM("K4Weather.txt", "^ +([0-9]+) +([0-9]+)[^ ]* *([0-9]+).*");
- Console.Write("part2: ");
- DM("K4Soccer.txt", "^ +[0-9]+\\. ([A-Za-z_]+) +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +([0-9]+) +- +([0-9]+).*");
- }
-
- public static void DM(string file, string pattern)
- {
- FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read);
- StreamReader r = new StreamReader(fs);
- int min_spread = Int32.MaxValue;
- string spread_day = "";
- while(r.Peek() > -1)
- {
- string s = r.ReadLine();
- Match fields = Regex.Match(s, pattern);
- try {
- string day = fields.Groups[1].ToString();
- int min = Convert.ToInt32(fields.Groups[2].ToString());
- int max = Convert.ToInt32(fields.Groups[3].ToString());
- int spread = Math.Abs( max - min );
- if (spread <= min_spread)
- {
- spread_day = day;
- min_spread = spread;
- }
- } catch {
- }
- }
- Console.WriteLine(spread_day);
- }
- }
-}
-"""]]
-
-
- [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-
-# Part 1
-
-
-[[!format txt """
-#!/usr/bin/perl
-
-while(<>)
-{
- split;
- next unless ($_[0] > 0 and $_[0] < 31);
- $day = $_[0];
- $spread = $_[1] - $_[2];
- unless (defined $min_spread)
- {
- $spread_day = $day;
- $min_spread = $spread;
- }
- if ($spread <= $min_spread)
- {
- $spread_day = $day;
- $min_spread = $spread;
- }
-}
-print $spread_day, "\n";
-"""]]
-
-# Part 2
-
-
-[[!format txt """
-#!/usr/bin/perl
-
-while(<>)
-{
- split;
- next unless ($_[0] > 0 and $_[0] < 21);
- $team = $_[1];
- $spread = abs($_[6] - $_[8]);
- unless (defined $min_spread)
- {
- $spread_team = $team;
- $min_spread = $spread;
- }
- if ($spread <= $min_spread)
- {
- $spread_team = $team;
- $min_spread = $spread;
- }
-}
-print $spread_team, "\n";
-"""]]
-
-# Part 3
-
-
-[[!format txt """
-#!/usr/bin/perl
-
-sub dm($$$$)
-{
- my $file = shift;
- my $label_col = shift;
- my $alpha_col = shift;
- my $beta_col = shift;
-
- my ($spread_label, $min_spread) = ("", 100000);
-
- open (IN, "<$file");
- while(<IN>)
- {
- split;
- next unless ($_[$alpha_col] =~ /^[0-9]+/);
- next unless ($_[$beta_col] =~ /^[0-9]+/);
- my $label = $_[$label_col];
- my $spread = abs($_[$alpha_col] - $_[$beta_col]);
- unless (defined $min_spread)
- {
- print ".";
- $spread_label = $label;
- $min_spread = $spread;
- }
- if ($spread <= $min_spread)
- {
- $spread_label = $label;
- $min_spread = $spread;
- }
- }
- close (IN);
- $spread_label;
-}
-
-print "part1: ", dm("../K4Weather.txt", 0, 1, 2), "\n";
-print "part2: ", dm("../K4Soccer.txt", 1, 6, 8), "\n";
-"""]]
-
-
- [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-das ist direkt version 3.
-
-schritt eins war sehr hart. musste noch viel scheme zeug lernen. 2 und 3 war eher piece of cake ;)
-
-FIXME: die zeilen bevor die daten anfangen, hab ich einfach rausgeloescht, das koennte besser sein. FIXME: ich glaub file einlesen koennte einfacher gehen.
-
-
-[[!format txt """
-#!/usr/bin/scsh \
--o big-scheme -s
-!#
-
-(define (datamunge file comment resulter comparer)
- (begin
- (display comment)
- (display
- (car
- (sort-list
- (call-with-input-file file
- (lambda (port)
- (awk ((field-reader (field-splitter (rx (+ (~ white "*" "-"))))) port)
- (record fields)
- ((resultlist (list)))
- (else
- (cons (list (resulter fields)
- (comparer fields))
- resultlist)))))
- (lambda (a b)
- (< (cadr a) (cadr b))))))
- (newline)))
-
-(datamunge "/home/lefant/scheme/code/kata04_data1.txt" "weather"
- car
- (lambda (alist) (- (string->number (list-ref alist 1))
- (string->number (list-ref alist 2)))))
-
-(datamunge "/home/lefant/scheme/code/kata04_data2.txt" "soccer"
- cadr
- (lambda (alist) (abs (- (string->number (list-ref alist 6))
- (string->number (list-ref alist 7))))))
-"""]]
-
-
- [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-* [[http://blogs.pragprog.com/cgi-bin/pragdave.cgi/Practices/Kata/KataFour.rdoc|http://blogs.pragprog.com/cgi-bin/pragdave.cgi/Practices/Kata/KataFour.rdoc]]
-
-* [[/CSharp|Kata4Lösungen/CSharp]]
-* [[/Perl|Kata4Lösungen/Perl]]
-* [[/C|Kata4Lösungen/C]]
-* [[/ScSh|Kata4Lösungen/ScSh]] by [[Lefant]]
-
-
- [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-Lokal bedeutet in diesem Zusammenhang, vom Netzwerk im Buero der q/uintessenz aus. Waehrend auch von anderswo oeffentlich verfuegbar, ist es dann vermutlich nicht besonders schnell, und daher nicht so zu empfehlen. Besser in der offiziellen Liste nachschauen: [[http://www.debian.org/mirror/list|http://www.debian.org/mirror/list]]
-
-update: at.i386.mirror.debian.net ist im dns auf der firewall im q/office auf rerun.lefant.net umgeleitet, dadurch ist es am einfachsten man verwendet diesen hostname fuer den mirror, dadurch bekommt man beim treff den lokalen mirror, und daheim den offiziellen.
-
-Nach Festplattenspende durch [DavidSchmitt](/Benutzer/DavidSchmitt) haben wir jetzt wieder das volle sortiment: i386,{sarge,etch,sid}
-
-Um bei der q/uintessenz rerun als mirror zu verwenden, folgendes in die Datei `/etc/apt/sources.list` eintragen
-
-die "mir ist das zu kompliziert, ich will es schnell und einfach"-variante:
-
-
-[[!format txt """
-deb http://at.i386.mirror.debian.net/debian etch main
-"""]]
-oder (zusaetzlich) von folgendem gewuenschtes auswaehlen:
-
-
-[[!format txt """
-deb http://at.i386.mirror.debian.net/debian etch main
-deb http://at.i386.mirror.debian.net/debian sid main
-"""]]
-Bei Neuinstallation mittels debian-installer, bei der Auswahl des Mirrors die option "select alternate mirror..." (oder so aehnlich, FIXME), auswaehlen, und `at.i386.mirror.debian.net` eingeben, kein proxy, ordner `/debian` (ev. bei problemen auch `/debian/` ausprobieren, es gab bei mir manchmal ein problem mit dem slash am schluss).
-
-aus platzgruenden gibt es nur binary pakete fuer i386. bei problemen im [[IrcChannel|IrcChannel]] bescheid geben, oder an [[Lefant]] (<[[e@lefant.net|mailto:e@lefant.net]]>) schreiben.
+++ /dev/null
-
-Debian ist nicht Ubuntu, Ubuntu ist nicht Debian. naja, aber fuer einsteiger(innen) sicher nicht so schlecht, und die cds sind auch bunt.
-
-deswegen gabs mal einen mirror, jetzt schon laenger nimmer, weil der platz fehlt. tja.
+++ /dev/null
-
-
-## Punschtrunk am 26.12.2005
-
-Redtux und Deucalion konnten nicht davon abgebracht werden, ein Punschtrinken für diesen Abend zu veranstalten. :-)
-
-Punsch bzw und ev Glühwein (kann jemand Interesse für letzteres aufbringen?)
-
-Stattfinden soll das ganze etwas nach 20 Uhr (i.e. 20.30 wirds dann Punsch etc geben). Der genaue Zeitpunkt wird im Laufe des 25.12. festgelegt, genauso wie die benötigte Menge an Dingen die eingekauft werden müssen. (Deucalion wird am Montag Vormittag den Bahnhofsbilla plündern, ist planungstechnisch am einfachsten so.)
-
-Derzeitige Schätzung wäre 10/15 Leute, die kommen und Punsch trinken.
-
-
-### Rezeptvorschlag / "components"
-
-Sollte sich jemand schon gemeldet haben und etwas mitbringen, hier dies bitte zu notieren!
-
-_must have_
-
-* Größerer Kochtopf samt herdartiger Platte (redtux)
-* Schwarztee (deucalion)
-* Zitronen (deucalion)
-* Zimt, Gewürznelken, Ingwer, Zucker (deucalion)
-* Orangen / Orangensaft _Menge?_
-* Rum _Menge?_
-(deucalion für die Orangen* und Rum, allerdings weiß er noch nicht wieviel)
-
-_nice to have_
-
-* Rotwein _?_
-
-### Sonstige Vorschläge
-
-Ein paar Dinge zum schnabulieren wären sicher nett für alle die kommen. Je nach Lust und Laune mitbringen, aber idealerweise hier reinschreiben, wenn jmd derartiges vorhat! Thx! :-)
+++ /dev/null
-
-![](qoffice-netboot2.png)
+++ /dev/null
-
-/etc/dhcp3/dhcpd.conf for dhcp3-server that runs on odyssey to allow netbooting together with atftpd and di-netboot-assitant.
-
-
-[[!format txt """
-ddns-update-style none;
-
-not authoritative;
-default-lease-time 604800;
-max-lease-time 604800;
-
-option domain-name "quintessenz.net";
-option domain-name-servers 192.168.100.1;
-
-next-server 192.168.100.1;
-server-name "192.168.100.1";
-filename "pxelinux.0";
-
-subnet 192.168.100.0 netmask 255.255.255.0 {
- range 192.168.100.100 192.168.100.200;
- option routers 192.168.100.1;
-}
-"""]]
\ No newline at end of file
+++ /dev/null
-
-Norbert Tretkowski berichtet:
-
-Backport of openoffice.org 2.0.0 for sarge available
-
-Rene Engelhard, one of Debians openoffice.org maintainers, built a backport of openoffice.org 2.0.0-2 for sarge. It's available from here, and of course you can install it using apt, just add this line to your sources.list:
-
-
-[[!format txt """
-deb http://www.backports.org/pending/openoffice.org/ ./
-"""]]
-
-
- [[!tag CategoryTipsAndTricks]]
+++ /dev/null
-
-
-### Intro
-
-42 hat gerade ein neues project gestartet
-
-bist du an einem geclusterteten backupspace
- über mehrere server interessiert?
-
-weil der backupspace deines dedicatet root servers zu klein ist?
- und hast am server noch über 250 gig frei?
-
-wir experimentieren mit
- [[http://www.gluster.org|http://www.gluster.org]]
-
-es gibt in den debian backports ein package
-[[!format txt """
-deb http://ftp.de.debian.org/backports.org/ lenny-backports main contrib non-free
-"""]]
-wir suchen weitere member
- bei interesse, subscribe
- [[http://lists.free-minds.net/listinfo/42-backup|http://lists.free-minds.net/listinfo/42-backup]]
-
-
-### Doku
-
-
-[[!format txt """
-sudo glusterfs-volgen --name=backup --transport=tcp --raid=1 [IP 1]:/srv/gluster [IP 2]:/srv/gluster
-"""]]
-
-[[!format txt """
-nmap -sS [IP] -T5 -p 6996
-"""]]
-
-[[!format txt """
-watch du -sh /mnt/backup/* /srv/gluster/*
-"""]]
-
-### Links
-
-* [[http://www.gluster.org|http://www.gluster.org]]
-* [[how2 @howtoforge|http://www.howtoforge.com/high-availability-storage-with-glusterfs-on-debian-lenny-automatic-file-replication-across-two-storage-servers]]
-* [[http://forum.openvz.org/index.php?t=msg&goto=35230&|http://forum.openvz.org/index.php?t=msg&goto=35230&]]
-* [[http://gluster.org/pipermail/gluster-users/2010-March/004083.html|http://gluster.org/pipermail/gluster-users/2010-March/004083.html]]
-* [[http://www.gluster.com/community/documentation/index.php/Understanding_AFR_Translator#Self-Heal|http://www.gluster.com/community/documentation/index.php/Understanding_AFR_Translator#Self-Heal]]
-* [[http://www.gluster.com/community/documentation/index.php/Translators/cluster|http://www.gluster.com/community/documentation/index.php/Translators/cluster]]
-* [[OpenVPN Hints|OpenVPN/hints]]
-* [[OpenVPN Shell History|OpenVPN/history]]
\ No newline at end of file
+++ /dev/null
-
-Jeden ersten Montag im Monat sind speziell Frischlinge willkommen!
-
-Debian installieren - Ubuntu installieren - Probleme lösen!
-
-CDs brennen, ganz leicht!
-
-Drucken jetzt!
-
-Kommt vorbei! Bringt Freunde und Rechner mit! Monitore vorhanden.
-
-Hilfe für Installation, Konfiguration und Nutzung von Linux Kisten.
+++ /dev/null
-
-
-## Exim Konfiguration:
-
-
-### Main
-
-zuerst:
-[[!format txt """
-sudo aptitude install clamav spamassassin spamc greylistd
-
-adduser clamav Debian-exim
-adduser Debian-exim clamav
-"""]]
-/etc/clamav/clamd.conf
-[[!format txt """
-#Automatically Generated by clamav-base postinst
-#To reconfigure clamd run #dpkg-reconfigure clamav-base
-#Please read /usr/share/doc/clamav-base/README.Debian.gz for details
-LocalSocket /var/run/clamav/clamd.ctl
-FixStaleSocket
-User clamav
-AllowSupplementaryGroups
-ScanMail
-ScanArchive
-ArchiveMaxRecursion 5
-ArchiveMaxFiles 1000
-ArchiveMaxFileSize 10M
-ArchiveMaxCompressionRatio 250
-ReadTimeout 180
-MaxThreads 12
-MaxConnectionQueueLength 15
-LogFile /var/log/clamav/clamav.log
-LogTime
-LogFileMaxSize 0
-PidFile /var/run/clamav/clamd.pid
-DatabaseDirectory /var/lib/clamav
-SelfCheck 3600
-ScanOLE2
-ScanPE
-DetectBrokenExecutables
-ScanHTML
-ArchiveBlockMax
-"""]]
-/etc/exim4/conf.d/main/02_exim4-config_options
-[[!format txt """
-### main/02_exim4-config_options
-#################################
-
-av_scanner = clamd:/var/run/clamav/clamd.ctl
-spamd_address = 127.0.0.1 783
-
-...
-"""]]
-/etc/exim4/conf.d/acl/30_exim4-config_check_rcpt
-[[!format txt """
-# This access control list is used for every RCPT command in an incoming
-# SMTP message. The tests are run in order until the address is either
-# accepted or denied.
-#
-acl_check_rcpt:
-
- # Accept if the source is local SMTP (i.e. not over TCP/IP). We do this by
- # testing for an empty sending host field.
- accept hosts = :
-
- # Add missing Date and Message-ID header for relayed messages
- warn hosts = +relay_from_hosts
- control = submission/sender_retain
-
- # The following section of the ACL is concerned with local parts that contain
- # @ or % or ! or / or | or dots in unusual places.
- #
- # The characters other than dots are rarely found in genuine local parts, but
- # are often tried by people looking to circumvent relaying restrictions.
- # Therefore, although they are valid in local parts, these rules lock them
- # out, as a precaution.
- #
- # Empty components (two dots in a row) are not valid in RFC 2822, but Exim
- # allows them because they have been encountered. (Consider local parts
- # constructed as "firstinitial.secondinitial.familyname" when applied to
- # someone like me, who has no second initial.) However, a local part starting
- # with a dot or containing /../ can cause trouble if it is used as part of a
- # file name (e.g. for a mailing list). This is also true for local parts that
- # contain slashes. A pipe symbol can also be troublesome if the local part is
- # incorporated unthinkingly into a shell command line.
- #
- # Two different rules are used. The first one is stricter, and is applied to
- # messages that are addressed to one of the local domains handled by this
- # host. It blocks local parts that begin with a dot or contain @ % ! / or |.
- # If you have local accounts that include these characters, you will have to
- # modify this rule.
- deny domains = +local_domains
- local_parts = ^[.] : ^.*[@%!/|\'`#&?]
- message = restricted characters in address
-
- # The second rule applies to all other domains, and is less strict. This
- # allows your own users to send outgoing messages to sites that use slashes
- # and vertical bars in their local parts. It blocks local parts that begin
- # with a dot, slash, or vertical bar, but allows these characters within the
- # local part. However, the sequence /../ is barred. The use of @ % and ! is
- # blocked, as before. The motivation here is to prevent your users (or
- # your users' viruses) from mounting certain kinds of attack on remote sites.
-
- deny domains = !+local_domains
- local_parts = ^[./|] : ^.*[@%!\'`#&?] : ^.*/\\.\\./
- message = restricted characters in address
-
- # Accept mail to postmaster in any local domain, regardless of the source,
- # and without verifying the sender.
- #
- accept local_parts = postmaster
- domains = +local_domains
-
- # deny bad senders (envelope sender)
- # CONFDIR/local_sender_blacklist holds a list of envelope senders that
- # should have their access denied to the local host. Incoming messages
- # with one of these senders are rejected at RCPT time.
- #
- # The explicit white lists are honored as well as negative items in
- # the black list. See /usr/share/doc/exim4-config/default_acl for details.
- deny message = sender envelope address $sender_address is locally blacklisted here. If you think this is wrong, get in touch with postmaster
- !acl = acl_whitelist_local_deny
- senders = ${if exists{CONFDIR/local_sender_blacklist}\
- {CONFDIR/local_sender_blacklist}\
- {}}
-
- # deny bad sites (IP address)
- # CONFDIR/local_host_blacklist holds a list of host names, IP addresses
- # and networks (CIDR notation) that should have their access denied to
- # The local host. Messages coming in from a listed host will have all
- # RCPT statements rejected.
- #
- # The explicit white lists are honored as well as negative items in
- # the black list. See /usr/share/doc/exim4-config/default_acl for details.
- deny message = sender IP address $sender_host_address is locally blacklisted here. If you think this is wrong, get in touch with postmaster
- !acl = acl_whitelist_local_deny
- hosts = ${if exists{CONFDIR/local_host_blacklist}\
- {CONFDIR/local_host_blacklist}\
- {}}
-
-
-
- # Deny unless the sender address can be verified.
- #
- # This is disabled by default so that DNSless systems don't break. If
- # your system can do DNS lookups without delay or cost, you might want
- # to enable the following line.
- #deny message = Sender verification failed
- # !acl = acl_whitelist_local_deny
- # !verify = sender
-
- # Warn if the sender host does not have valid reverse DNS.
- #
- # This is disabled by default so that DNSless systems don't break. If
- # your system can do DNS lookups without delay or cost, you might want
- # to enable the following lines.
- # If sender_host_address is defined, it's a remote call. If
- # sender_host_name is not defined, then reverse lookup failed. Use
- # this instead of !verify = reverse_host_lookup to catch deferrals
- # as well as outright failures.
- warn message = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address (${if eq{$host_lookup_failed}{1}{failed}{deferred}})
- condition = ${if and{{def:sender_host_address}{!def:sender_host_name}}\
- {yes}{no}}
-
- #############################################################################
- # There are no checks on DNS "black" lists because the domains that contain
- # these lists are changing all the time. You can find examples of
- # how to use dnslists in /usr/share/doc/exim4-config/examples/acl
- #############################################################################
-
-
- # Perform greylisting on incoming messages from remote hosts.
- # We do NOT greylist messages with no envelope sender, because that
- # would conflict with remote hosts doing callback verifications, and we
- # might not be able to send mail to such hosts for a while (until the
- # callback attempt is no longer greylisted, and then some).
- #
- # We also check the local whitelist to avoid greylisting mail from
- # hosts that are expected to forward mail here (such as backup MX hosts,
- # list servers, etc).
- #
- # Because the recipient address has not yet been verified, we do so
- # now and skip this statement for non-existing recipients. This is
- # in order to allow for a 550 (reject) response below. If the delivery
- # happens over a remote transport (such as "smtp"), recipient callout
- # verification is performed, with the original sender intact.
- #
- defer
- message = $sender_host_address is not yet authorized to deliver. \
- Please try later.
- log_message = greylisted.
- !senders = :
- !hosts = : +relay_from_hosts : \
- ${if exists {/etc/greylistd/whitelist-hosts}\
- {/etc/greylistd/whitelist-hosts}{}} : \
- ${if exists {/var/lib/greylistd/whitelist-hosts}\
- {/var/lib/greylistd/whitelist-hosts}{}}
- !authenticated = *
- !acl = acl_whitelist_local_deny
- domains = +local_domains : +relay_to_domains : dsearch;/etc/exim4/virtual
- verify = recipient/callout=20s,use_sender,defer_ok
- condition = ${readsocket{/var/run/greylistd/socket}\
- {--grey \
- ${mask:$sender_host_address/24}} \
-# $sender_address \
-# $local_part@$domain}\
- {5s}{}{false}}
-
-
-
- # Accept if the address is in a local domain, but only if the recipient can
- # be verified. Otherwise deny. The "endpass" line is the border between
- # passing on to the next ACL statement (if tests above it fail) or denying
- # access (if tests below it fail).
- #
- accept domains = +local_domains
- endpass
- message = unknown user
- verify = recipient
-
- accept domains = dsearch;/etc/exim4/virtual
- endpass
- message = unknown user
- verify = recipient
-
- # Accept if the address is in a domain for which we are relaying, but again,
- # only if the recipient can be verified.
- #
- accept domains = +relay_to_domains
- endpass
- message = unrouteable address
- verify = recipient
-
- # If control reaches this point, the domain is neither in +local_domains
- # nor in +relay_to_domains.
-
- # Accept if the message comes from one of the hosts for which we are an
- # outgoing relay. Recipient verification is omitted here, because in many
- # cases the clients are dumb MUAs that don't cope well with SMTP error
- # responses. If you are actually relaying out from MTAs, you should probably
- # add recipient verification here.
- #
- accept hosts = +relay_from_hosts
-
- # Accept if the message arrived over an authenticated connection, from
- # any host. Again, these messages are usually from MUAs, so recipient
- # verification is omitted.
- #
- accept authenticated = *
-
- # Reaching the end of the ACL causes a "deny", but we might as well give
- # an explicit message.
- #
- deny message = relay not permitted
-
-
-"""]]
-/etc/exim4/conf.d/acl/40_exim4-config_check_data
-[[!format txt """
-# 40_exim4-config_check_data
-
-acl_check_data:
- # greylistd(8) configuration follows.
- # This statement has been added by "greylistd-setup-exim4",
- # and can be removed by running "greylistd-setup-exim4 remove".
- # Any changes you make here will then be lost.
- #
- # Perform greylisting on incoming messages with no envelope sender here.
- # We did not subject these to greylisting after RCPT TO:, because that
- # would interfere with remote hosts doing sender callout verifications.
- #
- # Because there is no sender address, we supply only two data items:
- # - The remote host address
- # - The recipient address (normally, bounces have only one recipient)
- #
- # We also check the local whitelist to avoid greylisting mail from
- # hosts that are expected to forward mail here (such as backup MX hosts,
- # list servers, etc).
- #
- defer
- message = $sender_host_address is not yet authorized to deliver. \
- Please try later.
- log_message = greylisted.
- senders = :
- !hosts = : +relay_from_hosts : \
- ${if exists {/etc/greylistd/whitelist-hosts}\
- {/etc/greylistd/whitelist-hosts}{}} : \
- ${if exists {/var/lib/greylistd/whitelist-hosts}\
- {/var/lib/greylistd/whitelist-hosts}{}}
- !authenticated = *
- !acl = acl_whitelist_local_deny
- condition = ${readsocket{/var/run/greylistd/socket}\
- {--grey \
- ${mask:$sender_host_address/24}} \
-# $recipients}\
- {5s}{}{false}}
-
-
- # Deny unless the address list headers are syntactically correct.
- #
- # This is disabled by default because it might reject legitimate mail.
- # If you want your system to insist on syntactically valid address
- # headers, you might want to enable the following lines.
- # deny message = Message headers fail syntax check
- # !acl = acl_whitelist_local_deny
- # !verify = header_syntax
-
- # require that there is a verifiable sender address in at least
- # one of the "Sender:", "Reply-To:", or "From:" header lines.
- # deny message = No verifiable sender address in message headers
- # !acl = acl_whitelist_local_deny
- # !verify = header_sender
-
-
-deny message = Serious MIME defect detected ($demime_reason)
- demime = *
- condition = ${if >{$demime_errorlevel}{2}{1}{0}}
-
-deny message = Blacklisted file extension detected
- condition = ${if match \
- {${lc:$mime_filename}} \
- {\N(\.bat|\.com|\.exe|\.pif|\.prf|\.scr|\.vbs)$\N} \
- {1}{0}}
-
-deny message = This message contains malware ($malware_name)
- malware = *
-
-
-# Always put X-Spam-Score header in the message.
-# It looks like this:
-# X-Spam-Score: 6.6 (++++++)
-# When a MUA cannot match numbers, it can match for an
-# equivalent number of '+' signs.
-# The 'true' makes sure that the header is always put
-# in, no matter what the score.
-warn message = X-Spam-Score: $spam_score ($spam_bar)
- condition = ${if <{$message_size}{300k}{1}{0}}
- spam = spamassassin:true
-
-# Always put X-Spam-Report header in the message.
-# This is a multiline header that informs the user
-# which tests a message has "hit", and how much a
-# test has contributed to the score.
-warn message = X-Spam-Flag: YES
- condition = ${if <{$message_size}{300k}{1}{0}}
- spam = spamassassin:true
- condition = ${if >{$spam_score_int}{30}{1}{0}}
-
-
-deny message = Spam score too high ($spam_score)
- condition = ${if <{$message_size}{300k}{1}{0}}
- spam = spamassassin:true
- condition = ${if >{$spam_score_int}{100}{1}{0}}
-
-
- # accept otherwise
- accept
-"""]]
-
-
- [[!tag CategoryCodeSnippets]] [[!tag CategoryTipsAndTricks]]
+++ /dev/null
-
-
-## Exim Konfiguration:
-
-
-### Main
-
-
-[[!format txt """
-cat /etc/exim4/conf.d/main/04_exim4-config_mailman
-
- # Home dir for your Mailman installation -- aka Mailman's prefix
- # directory.
- # By default this is set to "/usr/local/mailman"
- # On a Red Hat/Fedora system using the RPM use "/var/mailman"
- # On Debian using the deb package use "/var/lib/mailman"
- # This is normally the same as ~mailman
- MM_HOME=/var/lib/mailman
- #
- # User and group for Mailman, should match your --with-mail-gid
- # switch to Mailman's configure script.
- # Value is normally "mailman"
- MM_UID=list
- MM_GID=list
- #
- # Domains that your lists are in - colon separated list
- # you may wish to add these into local_domains as well
- domainlist mm_domains=rerun.lefant.net:debienna.at:dsearch;/etc/exim4/virtual
- #
- # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- #
- # These values are derived from the ones above and should not need
- # editing unless you have munged your mailman installation
- #
- # The path of the Mailman mail wrapper script
- MM_WRAP=MM_HOME/mail/mailman
- #
- # The path of the list config file (used as a required file when
- # verifying list addresses)
- MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck
-
-"""]]
-
-### Router
-
-
-[[!format txt """
-cat /etc/exim4/conf.d/router/185_exim4-config_mailman
-# This router handles mailman
-#
- mailman_router:
- driver = accept
- domains = +mm_domains
- require_files = MM_LISTCHK
- local_part_suffix_optional
- local_part_suffix = -admin : -bounces : -bounces+* : -confirm : -confirm+* : -join : -leave : -owner : -request : -subscribe : -unsubscribe
- transport = mailman_transport
-"""]]
-
-### Transport
-
-
-[[!format txt """
-cat /etc/exim4/conf.d/transport/35_exim4-config_mailman
- mailman_transport:
- driver = pipe
- command = MM_WRAP \
- '${if def:local_part_suffix \
- {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}} } \
- {post}}' \
- $local_part
- current_directory = MM_HOME
- home_directory = MM_HOME
- user = MM_UID
- group = MM_GID
-"""]]
-* siehe auch: [[RerunLefantNet|RerunLefantNet]]
-
- [[!tag CategoryTipsAndTricks]] [[!tag CategoryCodeSnippets]]
+++ /dev/null
-
-Hin und wieder gibt es bei uns Sachen, die zum Selbstkostenpreis verkauft werden. Zur Zeit sind dies noch einige Restposten der produzierten Debienna-Shirts. Folgende sind noch vorhanden:
-[[!table header="no" class="mointable" data="""
- **Typ** | **Größe** | **Anzahl** | **Preis**
- Polo | XL | 2 | 25,-
- Polo | L | 2 | 25,-
- Polo | M | 7 (+2) | 25,-
- Girlie | L | 4 (+1) | 20,-
- Girlie | M | 16 (+2) | 20,-
- Girlie | S | 14 (+2) | 20,-
-"""]]
-
-Die Qualität ist entsprechend hoch, und Polos sind im Einkauf schon nicht günstig. Wenn ihr welche wollt, meldet euch am Besten bei [GerfriedFuchs](/Benutzer/GerfriedFuchs) bzw. am [[DebiennaTreff|DebiennaTreff]] direkt, sie sind vor Ort gelagert (bis auf die Menge in Klammern)
+++ /dev/null
-
-wegbeschreibung in bilderform:
-
-* [[!img cimg3314.jpg size=150x]]
-* [[!img cimg3315.jpg size=150x]]
-* [[!img cimg3316.jpg size=150x]]
-* [[!img cimg3317.jpg size=150x]]
-* [[!img cimg3318.jpg size=150x]]
-* [[!img cimg3319.jpg size=150x]]
-* [[!img cimg3320.jpg size=150x]]
-* [[!img cimg3321.jpg size=150x]]
-* [[!img cimg3322.jpg size=150x]]
-* [[!img cimg3323.jpg size=150x]]
-* [[!img cimg3325.jpg size=150x]]
+++ /dev/null
-
-Wenn man 'mal schnell ein WLAN oder UMTS-Netzwerk weitergeben will:
-
-
-[[!format txt """
-INTERNAL=eth0
-EXTERNAL=wlan0
-
-ip l s dev $INTERNAL up
-ip a a dev $INTERNAL 10.0.0.1/8
-echo 1 | tee /proc/sys/net/ipv4/ip_forward
-iptables -t nat -A POSTROUTING -o $EXTERNAL -j MASQUERADE
-iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state --state RELATED,ESTABLISHED -j ACCEPT
-iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT
-"""]]
-Bei anderen:
-
-
-[[!format txt """
-ip a a dev eth0 10.0.0.irgendwas/8
-ip r add default via 10.0.0.1
-"""]]
-(und /etc/resolv.conf anpassen)