FAQ Übersicht
Android
LBE Privacy Guard friert Padfone 2 ein und lässt sich nicht deinstallieren
Hatte mir aus dem Google Play Store den LBE Privacy Guard installiert. Kurz nach dem start hängte sich mein Padfone2 auf und reagierte auf keine Eingabe mehr.
Ein Backup wollte ich nicht einspielen und suchte nach einer anderen Lösung.
Adb Treiber runterladen und installieren. Bei XDA Dev findet man ein kleines Installer Paket und muss nicht das ganze SDK installieren. Die Treiber werden unter c:/adb installiert.
Android im Abgesicherten Modus starten:
http://www.mobiflip.de/android-abgesicherter-modus/
Ausschaltknopf gedrückt halten bis das Menü erscheint.
Auf "Auschalten" drücken und gedrückt halten. Es erscheint ein Menü. Dies bestätigen.
Leider hatte ich das Problem, dass der Launcher "Übersicht" bei meinem Padfone2 nicht startet und sich immer wieder beendete.
Sollte das bei euch nicht so sein, kann man nun den Play Store starten und LBE deinstallieren. Danach startet man das Telefon einfach neu.
Bei mir habe ich das wie folgt gelöst:
Unter Windows 7: Startleiste -> cmd unter "Programme/Dateien durchsuchen" eingeben.
"cmd" mit der rechten Maustaste anklicken. Es öffnet sich eine Leiste. Dort wählt man "Als Administrator ausführen".
Nun in das ADB Verzeichniss wechseln: cd adb
Mit diesem Befehl ADB starten:
adb shell
Mit pm (Paket Manager) die installierten Pakete anzeigen lassen:
pm list packages
Bei mir hieß der LBE Privacy Guard com.lbe.security.lite.
Um das Paket zu deinstallieren gibt man folgendes ein:
pm uninstall com.lbe.security.lite
Wenn da ganze erfolgreich war, erhällt man ein "Success".
Jipiii, so soll es sein :-)
Verfasser: Michael Stender
Letzte Änderung: 2014-06-30 15:26
Asus Padfone2 A68 Update auf Android 4.4.2 KitKat
Diese Anleitung bezieht sich ausschließlich auf die WWE Version. Welche Version man genau benötigt, wird in der Asus Update Anleitung genau beschrieben.
Nach 1,5 Jahren ist es nun doch soweit. Asus hat für das Padfone2 ein Update auf Android 4.4.2 KitKat durchgeführt.
Ich werde nun die einzelnen Schritte aufführen, wie man ein Nandroid Backup anlegt und das Update einspielt. Beim Nandroid Backup hat man den Vorteil, das wirklich alles gesichert wird. Es werden alle wichtigen Partitionen vom Padfone2 gesichert. Dies geschieht im normalen Betrieb des Padfone2 und man muss nicht erst das Telefon in den Recovery Modus fahren.
Als erstes legen wir ein Backup vom Padfone2 an. Ich nutze hierführ die App Online Nandroid Backup aus dem Google Play Store. Für diese App muss das Gerät gerootet sein. Ausserdem benötigt man Busybox.
Wie man das Padfone2 rootet, werde ich an dieser Stelle nicht extra erklären. Hier findet man eine genaue Anleitung.
Eine sehr gute Ergänzung zum Nandroid Backup ist die App Nandroid Manager.
Ausserdem sollte man sich die App TitaniumBackup installieren und ein Backup anlegen. In den Einstellungen sollte man unter Menü -> Einstellungen einen Haken beim ersten Punkt "Wiederherstellung der Titanium Backup-Benutzer einstellungen" setzen. Dadurch werden alle Einstellungen im internen Speicher abgelegt und man muss nach der Neuinstallation nicht alles erneut einstellen.
Nachdem die Backups angelegt wurde, sollte man auch noch den internen Speicher sichern.
Ich nutze die App Syncme. Mit dieser App kopiere ich den gesammten internen Speicher auf meinen PC.
Man kann hier allerdings auch z.B. den RootExplorer (kostenpflichtig) Explorer (kostenlos) oder den TotalCommander + Lan-Plugin nutzen.
Ausus hat für das sichern eine eigene App entwickelt (ASUSPCToolSetup_A68_v1_0_0_6).
Die Anleitung für die App findet man hier.
ACHTUNG! Asus formatiert das komplette Telefon incl. der internen Speicherkarte! Legt man sich kein Backup an, sind alle Daten Fotos und Kontakte verloren!
Hat man das alles erledigt, lädt man sich die Update Datei (V11.8.4.6 Only for WWE SKU) von Asus. Diese .zip Datei muss man dann noch entpacken und auf den internen Speicher des Padfone2 kopieren. Das Padfone2 sollte dann in der Benachrichtigungsleiste anzeigen, dass ein Update verfügbar ist. Funktioniert das nicht, einfach das Padfone2 neu starten und warten.
Nachdem das Update installiert ist, startet man wieder das ASUSPCTool und spielt das Backup ein.
Nun kann man TitaniumBackup installieren und seine Apps wieder einspielen. Auf keinen Fall sollte man hier die komplette Sicherung einspielen (Stapelaktionen). Am besten legt man sich zuerst über OnlineNandroid ein Backup an. Danach kann man bedenkenlos seine Apps und Einstellungen über TitaniumBackup einspielen und falls es Probleme gibt das Backup wieder einspielen.
Verfasser: Michael Stender
Letzte Änderung: 2014-07-29 19:20
Asus Padfone 2 mit ADB sideload rom neu installieren.
Tja, was passiert, wenn man im Recovery Manager (ClockWorkMod Recovery) die Datenpartition, die Systempartition und die interne Datenpartition ausversehen löscht? Gar nichts mehr, denn das rom zip liegt ja auf der internen Datenpartition und das System auf dem Telefon ist ja auch gelöscht. Erstmal PANIK!
So schlimm ist das aber gar nicht. Im Recovery Manager gibt es eine option (sideload), mit der man die rom zip Datei vom PC auf das Android Gerät per ADB übertragen kann. Anschliessend installiert sich das rom selbst und alles ist wieder ok.
Hier nun die Beschreibung, wie das genau funktioniert:
Als erstes benötigt man in meinem Fall die Asus USB Treiber. Diese installiert man unter Windows.
Wenn man dann das USB Kabel vom Telefon an den PC anschließt, sollten sich die Treiber automatisch installieren. Im Windows Gerätemanager findet man dann unter "Asus Android Devices" den "Asus Android Composite ADB Interface" Treiber. Wenn man alles richtig gemacht hat, steht in den Eigenschaften "Das Gerät funktioniert einwandfrei."
Dann braucht man die adb.exe und die fastboot.exe. Man kann sich das komplete Android SDK von Google besorgen oder man nimmt ein Paket was im XDA Forum angeboten wird.
Das XDA Paket installiert sich unter c:\adb\ dort finden wir nun auch die adb und fastboot .exe.
Über Windows Start gibt man unter "Programme/Dateien durchsuchen" "cmd" ein.
Es wird dann eine "cmd.exe" angezeigt. Mit der Maus rechts klicken und "Als Administrator ausführen" anklicken.
Es öffnet sich nun ein Fenster. dort gibt man "cd c:\adb" ein und drückt ENTER.
Mit "dir" kan man sich den Inhalt des Ordners anzeigen lassen.
Dort finden wir nun die adb.exe und die fastboot.exe.
Die Asus Firmware für das Padfone2 (A68) kann man hier Downloaden.
Die Datei (WWE_PadFone2_user_11_8_3_3_UpdateLauncher.zip) ist 924 MB groß.
Diese .zip Datei muss jetzt entpackt werden. Nach dem entpacken muss man die
Datei WWE_A68-11.8.3.3-0-ota-user.zip in das adb Verzeichniss auf c:\adb\ kopieren.
Vorraussetzung für die folgenden schritte ist ein installierter Recovery Manager wir clockworkmod oder twrp. Ausserdem muss der Bootloader unlocked und das Padfone2 gerootet sein.
Wir schalten das Padfone2 durch langes drücken der Power Taste komplett aus.
Nun drückt man die Volume - (minus/leiser) Taste und halten diese gedrückt. Dann einmal kurz auf die Einschalttaste drücken.
Die Volume minus Taste loslassen, wen die Abfrage für den Recovery Modus erscheint.
Eine Zeile runter mit der Volume minus Taste und mit der Power Taste bestätigen. Nun startet der Recovery Modus.
Im Recovery Modus wählt man folgendes:
"install .zip" :-> "install .zip from sideload"
Sideload started...
Now send the package you want to apply
to the device with "adb sideload <filename>"...
Nun haben wir alles zusammen. Weiter geht es mit diesem Befehl:
adb sideload WWE_A68-11.8.3.3-0-ota-user.zip
Danach installiert sich das Update automatisch. Nach dem reboot startete sich das Padfone 2 noch einige male automatisch. Einfach durchlaufen lassen.
Verfasser: Michael Stender
Letzte Änderung: 2016-03-21 09:31
Webserver
PHP Apache Webserver unsicher!
ACHTUNG!
Ändert unbedingt die einstellung in der php.ini wie folgt ab:
[code]allow_url_fopen = On[/code]
in
[code]allow_url_fopen = Off[/code]
andernfalls haben Hacker es sehr leicht in euer System einzudringen und die olle Kontrolle über euren Server zu bekommen.
Weitere Hinweise findet Ihr hier:
[url=http://www.rootforum.de/forum/viewtopic.php?t=19512]http://www.rootforum.de/forum/viewtopic.php?t=19512[/url]
Und hier:
[url=http://www.oreilly.de/catalog/progphpger/chapter/ch12.pdf]http://www.oreilly.de/catalog/progphpger/chapter/ch12.pdf[/url]
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:52
AWStats install Howto
mkdir /usr/src/install
cd /usr/src/install
wget http://awstats.sourceforge.net/files/awstats-6.2.tgz
tar -xvzf awstats-6.2.tgz
chown -R root.root awstats-6.2
mkdir /usr/share/awstats
cp -r awstats-6.2/wwwroot/cgi-bin/* /usr/share/awstats/
cp -r awstats-6.2/tools /usr/share/awstats/
mkdir /usr/lib/cgi-bin/awstats
mv /usr/share/awstats/awstats.pl /usr/lib/cgi-bin/awstats/
cp -r awstats-6.2/wwwroot/icon /usr/lib/cgi-bin/awstats/
mkdir /etc/awstats
cp /usr/share/awstats/awstats.model.conf /etc/awstats
mkdir /var/cache/awstats
mcedit /etc/awstats/awstats.model.conf:
DirData="/var/cache/awstats"
DirCgi="/cgi-bin/awstats"
DirIcons="/cgi-bin/awstats/icon"
LogFile="/var/log/apache/user1-1.tld.log"
SiteDomain="user1"
HostAliases="www.user1.tld"
# Für CustomLog /bla/bla.log combined (oder full):
LogFormat=1
# Für CustomLog /bla/bla.log common:
LogFormat=4
crontab -e
15 */6 * * * /usr/share/awstats/tools/awstats_updateall.pl now -awstatsprog=/usr/lib/cgi-bin/awstats/awstats.pl
Diese Anleitung stammt aus dem Debianhowto.de und wurde von mir auf die aktuellen Software Version aktualisiert.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:53
mod_evasive Howto
Debian Sarge 3.1
apt-get install apache2-threaded-dev
Mod_evasive downloaden:
/usr/local/src/mod_evasive entpacken
mod_evasive20.c öffnen
Zeile 45 umändern #define MAILER "/bin/mail -t %s"
Apache2: /usr/sbin/apxs2 -cia mod_evasive20.c
Apache2-Prefork: /usr/sbin/apxs2-prefork -cia mod_evasive20.c
touch /etc/apache2/conf.d/mod_evasive.conf
Apache2: LoadModule evasive20_module /usr/lib/apache2/mod_evasive20.so
Apache2-Prefork: LoadModule evasive20_module /usr/lib/apache2-prefork/mod_evasive20
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 600
DOSEmailNotify deine@adresse.de
</IfModule>
rcapache2 stop
rcapache2 start
cd /usr/src/mod_evasive
perl test.pl
Verfasser: Michael Stender
Letzte Änderung: 2007-08-10 07:50
mod_cband
# http://mod-cband.com/documentation
<IfModule mod_cband.c>
# limit speed of this vhost to 20Mbit/s, 5 request/s, 15 open connections
CBandSpeed 20Mbps 5 15
# in addition every remote host connecting to this vhost
# will be limited to 200kbit/s, 3 request/s, 2 open connections
CBandRemoteSpeed 20Mbps 3 2
# limit GoogleBot
#CBandClassRemoteSpeed googlebot_class 20kb/s 2 3
<CBandClass googlebot_class>
CBandClassDst 66.249.64/24
CBandClassDst 66.249.65/24
CBandClassDst 66.249.79/24
</CBandClass>
CBandClassRemoteSpeed googlebot_class 20kb/s 2 3
</IfModule>
Verfasser: Michael Stender
Letzte Änderung: 2008-12-21 08:34
No space left on Device, Apache startet nicht mehr
Leider kommt es immer wieder zu Problemen mit den Semaphores auf einem Apache Server.
/etc/sysctl.conf
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
sysctl -p
Ausserdem habe ich noch ein kleines Script am laufen. Diese Script gibt den benutzten Speicher wieder frei.
Das ganze einfach per Cronjob regelmäßig ausführen.
#!/usr/bin/perl
$tmp = ´/usr/bin/ipcs -s´;
@tmp = split(/\n/,$tmp);
foreach $tmp (@tmp) {
$semid = (split(/ /,$tmp))[1];
$test = $semid;
$test =~ s/[^0-9]{1,}//g;
if (($test eq $semid) and $semid) {
print "$semid";
$pmt = ´/usr/bin/ipcs -s -i $semid´;
foreach $line (split(/\n/,$pmt)) {
$enil = $line;
$enil =~ s/[\t ]{1,}/ /g;
}
$pid = (split(/ /,$enil))[4];
if ($pid) {
print " => \t $pid";
if (!-e "/proc/$pid") {
print "\t can be deleted\n";
system("/usr/bin/ipcrm sem $semid");
} else {
print "\t used\n";
}
}
}
}
Verfasser: Michael Stender
Letzte Änderung: 2008-03-24 21:27
eAccelerator installation
cd /usr/src
wget http://bart.eaccelerator.net/source/0.9.5.2/eaccelerator-0.9.5.2.tar.bz2
bunzip2 eaccelerator-0.9.5.22.tar.bz2tar xfv eaccelerator-0.9.5.2.tarcd eaccelerator-0.9.5.2apt-get install gcc automake libc6-devexport PHP_PREFIX="/usr"$PHP_PREFIX/bin/phpize./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-configmakemake install
mcedit /etc/php5/apache2/php.ini
[eAccelerator]extension="eaccelerator.so"eaccelerator.shm_size="32"eaccelerator.cache_dir="/tmp"eaccelerator.enable="1"eaccelerator.optimizer="1"eaccelerator.check_mtime="1"eaccelerator.debug="0"eaccelerator.filter=""eaccelerator.shm_max="0"eaccelerator.shm_ttl="0"eaccelerator.shm_prune_period="0"eaccelerator.shm_only="0"eaccelerator.compress="1"eaccelerator.compress_level="9"
Verfasser: Michael Stender
Letzte Änderung: 2008-04-25 21:15
mod_security auf Debian etch
Leider fehlt in Debian etch das Apache Modul mod_security. Hier eine kleine Anleitung, wie man das Modul per apt-get installieren kann.
Zuerst ändern wir unsere /etc/apt/sources.list wie folgt:
# Mod_Security2
deb http://etc.inittab.org/~agi/debian/libapache-mod-security2/etch ./
Danach müssen wir den GPG Key installieren.
console: gpg --keyserver pgpkeys.mit.edu --recv-keys C514AF8E4BA401C3
console: gpg --export -a C514AF8E4BA401C3 | apt-key add -
console: apt-get update
Nun können wir das Modul installieren.
apt-get install libapache-mod-security mod-security-common
Das Modul aktiviert sich bei der installation von selbst. Wenn nicht, führt man folgende Befehle aus:
a2enmod mod-security
/etc/init.d/apache2 force-reload
Nun muss man das Modul nur noch in die Apache2 config Datei einfügen.
Verfasser: Michael Stender
Letzte Änderung: 2010-12-07 05:54
FTP Server
Update ProFTPd auf Version 1.2.9
Da die vorinstallierte ProFTPd Version schon ziemlich alt ist, hier eine Anleitung zum Update.
Vorbereitungen:
/etc/proftpd.conf sichern
[code]
cp /etc/proftpd.conf /etc/proftpd.conf.bak
[/code]
rcinetd stop #xinetd Daemon
[code]wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.9.tar.gz
tar zxvf proftpd-1.2.9.tar.gz
cd proftpd-1.2.9
./configure \
--prefix=/usr \
--sbindir=/usr/sbin \
--sysconfdir=/etc \
--localstatedir=/var/run \
--disable-sendfile \
--with-modules=mod_ratio:mod_readme:mod_linuxprivs:mod_pam
make
make install
[/code]
Überprüfen ob die /etc/proftpd.conf überschrieben wurde und ggf. wiederherstellen.
rcinetd start
Jetzt sollte der FTPd wie gewohnt funktionieren. Falls in /var/log/messages nach einem Login PAM Warnungen auftreten, überprüft ob in euerer proftpd.conf folgendes enthalten ist:
# Enable PAM for authentication...
#
AuthPAM on
# This directive allows you to specify the PAM service name used
# in authentication (default is "proftpd" on SuSE Linux).
# You have to setup the service in the /etc/pam.d/<other_name>.
#
AuthPAMConfig proftpd
Das wars...
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:54
Installation von lufs (ftpmount Ersatz)
Voraussetzungen:
Zum kompilieren von lufs sind die Quellen des verwendeten Kernels erforderlich. Diese müssen sich in /usr/src/linux befinden. Download z.B. unter www.kernel.org.
Downloaden, entpacken und installieren von lufs:
# wget http://belnet.dl.sourceforge.net/sourceforge/lufs/lufs-0.8.3.tar.gz
# tar xzf lufs-0.8.3.tar.gz
# cd lufs-0.8.3
# ./configure --sysconfdir=/etc
# make
# make check
# make install
Falls man normalen Usern die Benutzung von lufs verbieten will ist noch --disable-suid hinzuzufügen!
Jetzt ist lufs schon fertig installiert. Infos zur Benutzung befinden sich in der Datei README. Hier ein kleines Beispiel zum mounten eines FTP Servers:
# mkdir /mnt/ftp
# lufsmount ftpfs://username:passwort@backup.pureserver.info /mnt/ftp --ftp_active
In diesem Beispiel würde der Server backup.pureserver.info nach /mnt/ftp gemountet werden. Als Login würde der Name "username" und das Passwort "passwort" verwendet werden.
Nach der Datenübertragung sollte man den Server mit
# umount /mnt/ftp
wieder unmounten. Hierbei darf man sich natürlich nicht unterhalb von /mnt/ftp befinden
Wer möchte kann noch das nicht mehr benötigte ftpmount entfernen:
# rm /usr/local/bin/ftpmount
# rm -r /usr/src/ftpfs-0.6.2-k2.4
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:55
Wie kann ich Verzeichnisse auf einem Strato Backupserver incl. Unterverzeichnisse löschen?
Debian: apt-get install ncftp
ncftp -u user -p passwort backup.serverkompetenz.de
rm -rf Verzeichnis
Verfasser: Michael Stender
Letzte Änderung: 2007-08-11 06:41
SuSE Kernel
Update des Linux Kernels auf Version 2.4.20 mit IPv6
Dieser Kernel sollte NUR auf den 1&1 RootServern L und XL eingesetzt werden (Kein SMP Support für XXL). Er beinhaltet alles was gebraucht wird und nichts was nicht gebraucht wird ;-). Außerdem unterstützt er IPv6. FTPFS ist leider nicht dabei so dass ftpmount nicht mehr verwendet werden kann. Als Ersatz bietet sich lufs (HowTo) an.
----------------------------------------------------------------------
Backup der wichtigsten Kernel Dateien anfertigen
Beim entpacken des Archivs werden folgende Dateien bzw. Verzeichnise erstellt und müssen deshalb gesichert oder umbenannt werden.
/boot/System.map-2.4.20
/boot/vmlinuz-2.4.20
/lib/modules/2.4.20
/etc/modules.conf
Außer der /etc/modules.conf sollte auf dem Server normalerweise keine der genannten Dateien vorhanden sein.
Weiter gehts mit dem
Downloaden und entpacken des Archivs
# wget http://217.160.92.19/~rootforum/kernel/2.4.20/kernel-2.4.20-ipv6.tar.gz
# tar xzf kernel-2.4.20-ipv6.tar.gz -C /
# ln -sf /boot/vmlinuz-2.4.20 /boot/vmlinuz
# ln -sf /boot/System.map-2.4.20 /boot/System.map
Kommen wir zum
Anpassen der /etc/lilo.conf
Unter
# End LILO global Section
#
Sollte als erstes folgendes stehen:
image = /boot/vmlinuz
root = /dev/hda3
label = linux
Alles klar? Dann speichern und einmal lilo auf der Shell eingeben.
Wenn du alles richtig gemacht hast kannst du den Server jetzt mit reboot neu starten. Nach einer guten Minute sollte er wieder auf Ping reagieren und auch all die anderen Dienste müssten gestartet sein. In Einzelfällen kann es auch mal länger dauern.
Bei Problemen bitte erst hier posten und auf keinen Fall neu starten!
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:56
Kernel Update SuSE 8.2
Vorgehen
Installieren Sie bitte den offiziellen Update Kernel. Sie finden ihn auf unserem FTP Server im Update Verzeichnis für SuSE Linux 8.1. Zum Beispiel auf ftp.gwdg.de.
http://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/i386/update/8.2/rpm/i586/k_deflt-2.4.20-101.i586.rpm
Welchen Kernel Sie im Moment benutzen, zeigt Ihnen der Befehl
rpm -qa | grep "^k_"
Dies sollte auf einem Single Prozessor Pentium System zum Beispiel folgendes ausgeben:
erde:~ # rpm -qa | grep "^k_"
k_deflt-2.4.19-155
Laden Sie sich den entsprechenden Kernel herunter und installieren Sie ihn mittels des Befehls
rpm -Uhv
In unserem Beispiel wäre dies
rpm -Uhv k_deflt-2.4.20-101.i586.rpm
Das RPM Paket ersetzt dann Ihren im Moment installierten Kernel mit dem Update Kernel und führt das Script mkinitrd für die INITRD (Initial Ramdisk) aus. Wenn Sie LILO als Bootloader verwenden (und nur dann!) müssen Sie LILO einmal neu auf das von Ihnen während der Installation ausgewählte Bootmedium schreiben. Führen Sie hierzu als root den Befehl
lilo -v
aus. Als Standard Bootloader wird bei SuSE Linux 8.1 GRUB benutzt. GRUB müssen Sie nicht noch einmal schreiben.
Sollten Sie schon während der Installation von SuSE Probleme mit dem Kernel haben, haben wir für Sie im Update Zweig auf unserem FTP Server auch neue Bootmedien bereitgestellt. Sie finden diese im Verzeichnis disks/
Linux und spezielle Distributionen: Rootserver Kernel mit IPv6 unterstützung neu compilen
Dieses Howto ist veraltet und fehlerhaft. Benutzt stattdessen die vorkompilierten Kernel. Infos gibt es in dieser FAQ sowie im Forum.
0. Vorwort
Das HowTo baut auf das "IPv6 unter Linux" Tutorial von Ipv6-net.de auf
und ist speziell auf den Rootserver ausgerichtet. Ein bisschen Zeit sollte schon
vorhanden sein , da das compilen evtl. etwas länger dauert.
Alle beschriebenen Aktion sind als Root auszuführen.
1. Kernel compilen
Als erstes saugt man sich den letzten stabilen Kernel von
ftp.de.kernel.org ... in unserem Fall ist das die Version
2.4.18.
-> wget ftp://ftp.de.kernel.org/pub/mirror/ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.18.tar.gz
Als nächstes muß der SourceCode entpackt werden:
-> tar -xvzf linux-2.4.18.tar.gz
jetzt verschieben wir den SourceCode nach /usr/src und setzen einen link nach /usr/src/linux
-> mv linux /usr/src/linux-2.2.18-ipv6
-> ln -s linux-2.2.18-ipv6 linux
Kernel Menuconfig wird gestartet
-> cd /usr/src/linux-2.2.18-ipv6
-> make menuconfig
Nun muessen folgende Schritte befolgt werden:
im Menü "Code maturity level options" die Option "Prompt for development and/or incomplete code/drivers" auswählen!
ins Hauptmenü zurück kehren und ins Menü "Networking Options" wechseln.
folgende Menüpunkte auswählen (mit einem sternchen):
[*] IP: tunneling
<*> The IPv6 protocol (EXPERIMENTAL)
jetzt wechseln wir wieder zurück ins Hauptmenü, von da aus wechseln wir ins Menü "Network device support" und von dort aus
ins "Menü Ethernet (10 or 100Mbit)"
folgende Menüpunkte auswählen (mit einem sternchen):
[*] EISA, VLB, PCI and on board controllers
<*> EtherExpressPro/100 support
<*> RealTek RTL-8139 C+ PCI Fast Ethernet Adapter support (EXPERIMENTAL)
<*> RealTek RTL-8139 PCI Fast Ethernet Adapter support
Jetzt wieder ins Hauptmenü wechseln , und mit Exit das Menü beenden.
Die Frage "Do you wish to save your new kernel configuration?" mit YES beantworten.
Als nächstes folgende Befehle nacheinander ausführen:
-> make dep
-> make bzImage kann zwischen 15 Minuten und ein paar Stunden dauern ;)
-> make modules
-> make modules_install
Jetzt ist der neue Kernel fertig compiled und muß nurnoch in den boot ordner kopiert werden, dies geschieht mit:
-> cp /usr/src/kernel-2.4.18-ipv6/arch/i386/boot/bzImage /boot/vmlinuz-2.4.18-ipv6
jetzt muß nurnoch Lilo dem Bootmanager beigebracht werden , dass es den neuen Kernel booten soll.
Man öffnet die datei /etc/lilo.conf und fügt folgende Zeilen hinzu:
WICHTIG: diese Zeilen müssen ÜBER den anderen image eintragen eingefügt werden
image = /boot/vmlinuz-2.4.18-ipv6
root = /dev/hda3
label = ipv6linux
die Datei /etc/lilo.conf speichern, den Editor beenden und lilo mit folgendem Befehl neu initialisieren:
-> lilo
jetzt wird der Rechner rebooted:
-> reboot
Nach spätestens 3 Minuten sollte der Server wieder erreichbar sein , und fertig für IPv6 konfiguriert sein.
- - - - - - - - - - - -
Howto written by Adi
www.v6-hosting.de
- - - - - - - - - - - -
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:57
Server startet nach YaST-Online-Update nicht mehr
Falls der Server nach einem YaST-Online-Update nicht mehr startet, liegt das meist daran, daß bei dem Update auch der Default-Kernel (Paket k_dflt) von SuSE installiert wurde.
Dieser Kernel stellt aber nicht die nötigen Treiber für die Netzwerkarte (Via-Rhine) zur Verfügung, so daß der Bootvorgang beim initialisieren der Netzwerkkarte abbricht.
Abhilfe kann man durch einspielen des speziellen 1&1 Kernels schaffen:
Hierzu muss man ins Rescue-Sytem booten!
[code]
fsck.ext3 /dev/hda3
fsck.ext3 /dev/hda1
mkdir /mnt/hdd
mount /dev/hda3 /mnt/hdd
mount /dev/hda1 /mnt/hdd/boot
chroot /mnt/hdd /usr/bin/env -i HOME=/root TERM=$TERM /bin/bash --login
cd /boot
rm -f c* i* v* S*
rm -rf /lib/modules/2.4.*
wget http://update.rootmaster.info/local-updates/kernel-2.4.20.tar.gz
tar xzf kernel-2.4.20.tar.gz -C /
ln -sf vmlinuz-2.4.20 vmlinuz
rm -f kernel-2.4.20.tar.gz
( man sollte noch grub starten - danach wieder direkt über quit beenden )
grub
quit
exit
umount /dev/hda1
umount /dev/hda3
reboot
[/code]
Es gibt auch ein patch, von 1und1, welches den Fehler behebt.
Im Recover modus booten und die LW unmounten, danach:
wget superfrank.org/kernelfix.sh
chmod +x kernelfix.sh
./kernelfix.sh
lw evtl. wieder unmounten und im normal modus booten.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:58
Tools
Midnight Commander
Wenn man so an der Konsole arbeitet wünscht man sich ein Tool welches es einem ermöglicht schneller durch die Verzeichnisse zu navigieren, mal eben einen ganzen Ordner zu verschieben oder Zugriffsrechte für 20 Dateinen auf einmal zu setzen. Dies alles und noch viel mehr leistet der Midnight Commander. Jeder der noch aus DOS Zeiten den Norton Commander kennt wird mit dem Midnight Commander auf Anhieb zurecht kommen. Das Aussehen und die meisten Tastenabkürzungen sind identisch.
Leider ist dieser beim Rootserver nicht vorinstalliert. Um dies nun zu ändern installiert man den Midnight Commander am einfachsten aus den Sourcen:
Dazu gibt man an der Konsole folgendes ein:
wget http://www.ibiblio.org/pub/Linux/utils/file/managers/mc/mc-4.6.0.tar.gz
tar -zxf mc-4.6.0.tar.gz
cd mc-4.6.0
./configure
make
make install
Nun kann man den Midnight Commander mit dem Befehl mc starten.
Eine weitere Möglichkeit den MC zu installieren bietet Yast an. Dazu einfach Yast starten und das Paket MC---xxxx suchen. Bei mir benötigte das RPM jedoch noch die SMBCLNT-xxx.rpm aus dem Paket "n1".
Daher empfehle ich die Installation aus den Sourcen, da es sich auch um eine aktuellere Version handelt.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:59
Mit logwatch Systemlogdateien überwachen
Mit Logwatch kann man schnell große Logdateien durchsuchen. Ausserdem kann man sich die Reporte einfach per Mail zusenden lassen.
Unter Debin installiert man das ganze über apt-get install logwatch.
Mit logwatch --help bekommt man eine kleine Übersicht der Möglichkeiten.
logwatch --print --service qmail --range today --detail 1 gibt eine kurze Übersicht aus.
logwatch --logdir /var/log --mailto admin@meinedomain.de --service qmail --range Yesterday --detail 1
Weitere Infos unter http://www.logwatch.org
Verfasser: Michael Stender
Letzte Änderung: 2007-09-21 02:38
Confixx
Confixx Email Weiterleitung auf System User
Im User Menü von Confixx ist es nicht möglich, eine Weiterleitung auf einen lokalen Systemuser (oder einem User, der nicht zu dem aktuellen Kunden gehört) oder eine Weiterleitung auf eine Weiterleitung einzurichten. Dies ist aber manchmal sinnvoll.
Ein Workarround ist die Eingabe der Daten direkt in die mySQL Datenbank. Am einfachsten mit phpMyAdmin.
Hierzu einfach die Confixx DB in phpMyAdmin auswählen und in dem Feld SQL-Befehl(e) ausführen in Datenbank confixx den SQL Befehl
[code]
INSERT INTO email VALUES (´´, ´local_part´, ´web1´, ´user1´, ´example.net´,
´res1´, 0, ´´, 0);
[/code]
eingeben.
In diesem Beispiel ist
- local_part der Name (lokale Part) der einzutragenden Email Adresse
- web1 der Kunde, dem die Email Adresse zugeordnet werden soll
- user1 der lokale (System) User
- example.net der Domainteil der Email Adresse
- res1 der Reseller, dem der Kunde web1 zugeordnet ist
Mit anderen Worten: Dadurch wird die Email Adresse local_part@example.net für den lokalen User user1 angelegt.
Um die Weiterleitung zu aktivieren, einfach im Confixx User Menü eine weitere Weiterleitung anlegen. Die kann auch sofort danach wieder gelöscht werden. Hierdurch wird lediglich der Eintrag aus der DB in die entsprechenden Confixx und System Tabellen übernommen (aktiviert). Eine Lösung, wie das mit den Confixx Scripts funktioniert, hab ich noch nicht gefunden.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:00
Zeilenumbruch in Mails an Anbieter/Kunden
Zeilenumbruch in Mails an Anbieter/Kunden
/srv/www/htdocs/confixx/html/reseller/kunden_sendmail.php:
[php]$emailtext = str_replace("\\"", """, $emailtext);[/php]
folgende Zeile einfügen:
[php]$emailtext = str_replace("\r\n", "\n", $emailtext);[/php]
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:01
Confixx User Interface unter https://confixx.meinedomain.de einrichten.
Einfach folgen Code in die httpd.conf einfügen.
ACHTUNG!
[b][color=red]Bitte nicht vergessen den Code anzupassen![/color][/b]
[size=11][code]## CONFIXX
<Directory "/srv/www/htdocs/confixx/html">
AllowOverride all
</Directory>
<VirtualHost xxx.xxx.xxx.xxx:80>
ServerName confixx.meinedomain.de
#User confixx
#Group users
RedirectPermanent / https://confixx.meinedomain.de/
DocumentRoot /srv/www/htdocs/confixx/html
php_admin_value safe_mode_exec_dir /srv/www/htdocs/confixx/bin
php_admin_value upload_tmp_dir /srv/www/htdocs/confixx/tmp
ScriptAlias /cgi-bin/ /srv/www/htdocs/confixx/html/cgi-bin/
CustomLog /var/log/httpd/confixx.meinedomain.de_access.log "%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog /var/log/httpd/confixx.meinedomain.de_error.log
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f webmaster@meinedomain.de"
</VirtualHost>
[/code][/size]
Dies ist der SSL Eintrag. SSL Zertifikate nicht vergessen zu erstellen. Anleitungen findet man ebefalls hier in den FAQ´s.
[size=11][code]
NameVirtualHost xxx.xxx.xxx.xxx:443
## SSL CONFIXX
<Directory "/srv/www/htdocs/confixx/html">
AllowOverride all
</Directory>
<VirtualHost xxx.xxx.xxx.xxx:443>
ServerName confixx.meinedomain.de
ServerAlias confixx.*
#User confixx
#Group users
DocumentRoot /srv/www/htdocs/confixx/html
php_admin_value safe_mode_exec_dir /srv/www/htdocs/confixx/bin
php_admin_value upload_tmp_dir /srv/www/htdocs/confixx/tmp
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f webmaster@meinedomain.de"
ScriptAlias /cgi-bin/ /srv/www/htdocs/confixx/html/cgi-bin/
CustomLog /var/log/httpd/ssl_confixx.meinedomain.de_access.log "%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog /var/log/httpd/ssl_confixx.meinedomain.de_error.log
SSLEngine on
SSLCertificateKeyFile /etc/ssl/private/confixx.meinedomain.de.pem
SSLCertificateFile /etc/ssl/certs/confixx.meinedomain.de.pem
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
</VirtualHost>[/code][/size]
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:02
Majordomo Confixx installation
Diese Anleitung stammt von Confixx und wurde von mir angepasst.
[b][size=18][color=red]Ich übernehme keine Haftung für eventuelle Schäden oder Ausfälle.[/color][/size][/b]
[b][size=18][color=red]Alles auf eigenes Risiko!!![/color][/size][/b]
INSTALLATION GUIDE FOR SUSE!!
Achtet auf die jeweiligen Pfade euerer Distris!!!
Ausserdem müssen die erforderlichen SuSE Pakete installiert sein.
RECOMMENDED CONFIGURATION
1) MySQL 3.xx (database server)
2) Postfix (mail transfer agent)
3) Qpopper (POP3 daemon)
4) Vsftpd (FTP server)
INSTALLATION
STEP 1.
INSTALLING 3RD PARTY PRODUCTS FROM THE SUSE DISTRIBUTION
Below is the list of SuSE packages to be installed if you chose recommended
configuration.
apache
apache-mod_php4
apache-mod_python
mysql
mysql-shared
mysql-client
mod_php4-core
perl
perl-DBI
perl-Msql-Mysql-modules
vsftpd
postfix
qpopper
bind
bind-utils
webalizer
procmail
gcc
libc6-dev
make
perl-spamassassin (SuSE 9)
spamassassin (SuSE 9)
NOTE: Make sure that the FTP server works properly: try to login after
installation on choosed FTP server (vsftp).
Some of the packages may be reported as already installed. It is not an
error - it only means that you do not need to install the package.
STEP 2.
CONFIGURING APACHE
Confixx requires Apache module mod_rewrite. Check file
/etc/apache2/sysconfig.d/loadmodule.conf - if the module is loaded or
not. There should be the following line:
LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so
If the line does not present in loadmodule.conf file, then you should open
file /etc/sysconfig/apache2, find there APACHE_MODULES variable and
change it adding "rewrite" word in the list assigned, e.g. (pay attention
to the end of the string):
APACHE_MODULES="access actions alias auth auth_dbm autoindex cgi dir env
expires include log_config mime negotiation setenvif ssl suexec userdir
php4 rewrite"
Then you should restart Apache:
/etc/init.d/apache2 restart
STEP 3.
CONFIGURE MYSQL
Login to mysql console and execute the following commands:
#~: mysql -p (as user root )
Enter password: <enter without password>
mysql> use mysql;
mysql> delete from user where User = '' ;
mysql> delete from db where User = ''
mysql> update user set Password = Password('some_passwd') where User =
'root'
mysql> flush privileges;
mysql> exit;
It will create a password for the mysql 'root' user.
STEP 4.
INSTALL AND CONFIGURE SPAMASSASSIN
The SpamAssassin software gives an ability to filter SPAM in
your customers Mailboxes when receiving mail there.
Skip the step if you do not need SpamAssassin support in Confixx.
You can also skip the step for SuSE9 box, if you alredy installed
SpamAssassin package from SuSE distribution.
The latest software version can be found on
http://spamassassin.org
The latest (at the moment of publishing) zipped version can
downloaded via
the following URL:
http://au2.spamassassin.org/released/Mail-SpamAssassin-2.61.tar.gz
Unpack the ditribution
#~: tar -xzf Mail-SpamAssassin-2.60.tar.gz
#~: cd Mail-SpamAssassin-2.60
Build it
#~: perl Makefile.PL
#~: make
#~: make install
http://download1.sw-soft.com/Confixx/ConfixxPro3/Docs/files.tgz
You need to extract the files
/etc/init.d/spamassassin
/etc/procmailrc
/etc/default/spamassassin
from the files.tgz archive and place them at the locations specified
(packed from / - directory).
Then edit /etc/postfix/main.cf file to set the following option:
mailbox_command = /usr/bin/procmail
then launch
#~: update-rc.d spamassassin defaults
Make sure that file /etc/mail/spamassassin/local.cf exists
and create it if no:
#~: touch /etc/mail/spamassassin/local.cf
Now SpamAssassin is configured.
STEP 5.
INSTALL AND CONFIGURE MAJORDOMO
Majordomo is a program which automates the management of
Internet mailing lists. Having this program installed you can
offer your customers an ability to create and manage mailing
lists via Confixx web interface.
Skip the step if you do not need Majordomo support in Confixx.
The latest version of the product can be found on
http://www.greatcircle.com/majordomo/
The latest (at the moment of publishing) gzipped version can
downloaded via the following URL:
[code]mkdir /usr/local/src/
cd /usr/local/src/
wget http://www.greatcircle.com/majordomo/1.94.5/majordomo-1.94.5.tar.gz[/code]
Unpack the software
[code]tar xzf majordomo-1.94.5.tar.gz[/code]
[code]cd majordomo-1.94.5[/code]
Create majordomo user and group:
[code]groupadd majordomo[/code]
[code]useradd majordomo -g majordomo[/code]
[code]cat /etc/passwd | grep majordomo[/code]
Merke dir die User id und Gruppe.
Diese Daten trägst du in dann gleich im Makefile ein (W_USER und W_GROUP).
[code]mkdir /usr/local/majordomo[/code]
Create temporary dir for majordomo:
[code]mkdir /usr/tmp[/code]
[code]chown majordomo:majordomo /usr/tmp[/code]
Jetzt das Makefile abändern:
[code]groupadd majordomo[/code]
Change the line with PERL variable definition to
PERL = /usr/bin/perl
Change the line with W_HOME variable definition to
W_HOME = /usr/local/majordomo
Change the lines with W_USER and W_GROUP variables definition to
(below are sample value use the UID and GID remembered above):
W_USER = 1000
W_GROUP = 104
Edit the configuration file
[code]cp sample.cf majordomo.cf[/code]
[code]mcedit majordomo.cf[/code]
Set $whereami variable to your host name and that is enough
$whereami = "your-host.com";
Install the majordomo:
[code]make wrapper
make install
make install-wrapper[/code]
Check the installation:
[code]cd /usr/local/majordomo; ./wrapper config-test[/code]
You should see something like:
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
----------------------- end of tests -----------------------
Nothing bad found! Majordomo _should_ work correctly.
If it doesn't, check your configuration file
(/usr/local/majordomo/majordomo.cf)
closely, and if it still looks okay, consider asking the majordomo-users
mailing list at "majordomo-users@greatcircle.com" for assistance. Be sure
and fully specify what your problems are, and what type of machine (and
operating system) you are using.
Enjoy!
I see you haven't registered this version of Majordomo.
By registering, you will be notified of patches and further releases
of Majordomo. Shall I send email to majordomo-registration@greatcircle.com
to register this version? (I'll cc Majordomo-Owner@deb3.victory.plesk.ru)
[yes] no
Ooooh, like to live dangerously, eh?!
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
You have the majordomo installed. The further configuration will be performed
by Confixx software.
STEP 6.
INSTALL AND CONFIGURE MAJORCOOL
MajorCool is an administrative front-end to the popular mailing
list manager (Majordomo), allowing list-owners to manage their
list configuration and subscriber base. If you install
MajorCool, the user interface will show a link to MajorCool.
Skip the step if you do not need Majordomo support in Confixx.
The latest software version can be found on
http://www.conveyanced.com/MajorCool/
The latest (at the moment of publishing) zipped version can
downloaded via the following URL:
[code]mkdir /usr/local/src/
cd /usr/local/src/
wget http://www.conveyanced.com/MajorCool/majorcool.tar.gz[/code]
Unpack the distribution:
[code]mkdir majorcool
tar xzf majorcool.tar.gz -C majorcool
cd majorcool[/code]
Fix the Configure script
[code]mcedit Configure[/code]
change the PERLBIN variable to be set properly:
PERLBIN="/usr/bin/perl" # How to start a perl script
[code]mkdir /var/www/cgi-bin
mkdir /var/www/images[/code]
Now run the configure script and be ready for lots of questions
[code]./Configure[/code]
The most important questions are:
What is the installation directory of Majordomo?
/usr/local/majordomo
Nun kommt es darauf an welches Betriebsystem Ihr einsetzt.
$ What is the root directory for your Web server?
$ [/etc/httpd/]
SuSE:
/etc/httpd
Debian:
/etc/apache
$ Where is the cgi-bin directory for your Web server?
$ [/var/www/cgi-bin]
SuSE:
/srv/www/cgi-bin oder /home/www/cgi-bin
Debian:
/var/www
$ What is your server's URL for '/var/www/cgi-bin'?
$ [/cgi-bin]:<Enter>
To answer the next questions properly you need to
1) open Apache configuration file (typically /etc/apache/httpd.conf or /etc/httpd/conf/httpd.conf)
2) find there a line starting with
Alias /icons/
Usually it looks like
Alias /icons/ /usr/share/apache/icons/
So the 2nd argument in line (/usr/share/apache/icons/) is the images directory
and the 1st one (/icons/) is the server's URL for it.
$ Where is the image directory for your Web server?
$
/srv/www/icons
$ Will place the icons in /srv/www/icons
$ What is your server's URL for '/srv/www/icons'?
$ [/icons]:
/icons
$ Where is the root directory for documents on your Web server?
$ [/var/www/]:
SuSE:
/srv/www/htdocs oder /home/www
Debian:
/var/www
It is highly recommended to answer "No" to the following questions unless you
plan to supply your customers with list create/rename/delete abilities outside
of Confixx Control Panel. It is possible to turn the features below off after
the installation is complete.
$ Provide list CREATE access [Y]? N
$ Provide list RENAME access [Y]? N
$ Provide list DELETE access [Y]? N
STEP 7.
INSTALL IDNKIT
IDN (International Domain Names) - the technology allows create
and use domains having national characters in their names.
Server side of IDN support is performed by IDNKit software.
Skip the step if you do not need IDN support in Confixx.
The latest software version can be found on
http://www.nic.ad.jp/en/idn/
The latest (at the moment of publishing) zipped version can
downloaded via the following URL:
http://www.nic.ad.jp/ja/idn/idnkit/download/sources/idnkit-1.0-src.tar.gz
#~: tar xzf idnkit-1.0-src.tar.gz
#~: cd idnkit-1.0-src
#~: ./configure
#~: make
#~: make install
STEP 8.
INSTALLING COLDFUSION
Having this product installed you can offer your customers an
ability of using CFML (ColdFusion Markup Language) on their web
sites.
Unlike most of the other described packages, Coldfusion server
is not shareware or open sourced. Trial version could be
downloaded from http://macromedia.com (about 100Mb).
Launch the downloaded binary and follow the instructions.
STEP 10.
INSTALLING XML::DOM PACKAGE
Download XML::DOM package from cpan.org:
http://search.cpan.org/CPAN/authors/id/T/TJ/TJMATHER/XML-DOM-1.43.tar.gz
:~# tar -xzf XML-DOM-1.43.tar.gz
:~# cd XML-DOM-1.43
:~# perl ./Makefile.PL
:~# make
:~# make install
You may require some another perl packages depending on your OS installation.
STEP 11.
CONFIGURE AND INSTALL CONFIXX
Unpack the distribution
#~: tar xzf confixx_install_Pro_3.0.0_mysql.tgz
#~: cd confixx-install
Launch the configure script and answer its questions accordingly to
configuration of your system
#~: ./configure.pl
The sample configure session log (with answers) could be found in
configure_session.log file.
Now you can launch the installation script:
#~: ./install.pl
The installation script may ask you for some paths - you are to give him
a correct answer.
NOTE 1: spamassassin daemon start/stop script is "/etc/init.d/spamd" if you have
installed spamassassin from SuSe 9 distribution.
NOTE 2: 'httpd' is a link to 'httpd-prefork' binary on the SuSE 9, so you
should answer '/usr/sbin/httpd-prefork' when being asked about apache binary.
STEP 12
FINISHING THE INSTALLATION
Register the script in crontab.
#~: echo "*/1 * * * * /root/confixx/confixx_counterscript.pl" >> tmp.cron
#~: crontab -u root tmp.cron
Restart the apache
/etc/init.d/apache stop
/etc/init.d/apache star
Launch the counterscript manually
#~: /root/confixx/confixx_counterscript.pl
STEP 11.
ACCESSING CONFIXX WEB INTERFACE
Enter the confixx web interface by accessing the url like:
http://<confixx-vhost>/admin
STEP 13
REGISTERING YOUR CONFIXX INSTALLATION
Enter the registraion interface by accessing the url like:
http://<confixx-vhost>/reg
or by entering the "Licensing information" menu item in admin interface.
Enter the "Unlock license" menu item there and click "Next".
You need to specify your serial number and activation key there and click
next. The registration routines will be done automatically.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:03
Confixx SPAMASSASSIN installation
STEP 1.
INSTALLING 3RD PARTY PRODUCTS FROM THE SUSE DISTRIBUTION
Below is the list of SuSE packages to be installed if you chose recommended
configuration.
apache
apache-mod_php4
apache-mod_python
mysql
mysql-shared
mysql-client
mod_php4-core
perl
perl-DBI
perl-Msql-Mysql-modules
vsftpd
postfix
qpopper
bind
bind-utils
webalizer
procmail
gcc
libc6-dev
make
perl-spamassassin (SuSE 9)
spamassassin (SuSE 9)
The SpamAssassin software gives an ability to filter SPAM in your customers Mailboxes when receiving mail there.
Skip the step if you do not need SpamAssassin support in Confixx.
You can also skip the step for SuSE9 box, if you alredy installed
SpamAssassin package from SuSE distribution.
The latest software version can be found on http://spamassassin.org
The latest (at the moment of publishing) zipped version can downloaded via
the following URL:
http://au2.spamassassin.org/released/Mail-SpamAssassin-2.61.tar.gz
Unpack the ditribution
#~: tar -xzf Mail-SpamAssassin-2.60.tar.gz
#~: cd Mail-SpamAssassin-2.60
Build it
#~: perl Makefile.PL
#~: make
#~: make install
You need to extract the files
/etc/init.d/spamassassin
/etc/procmailrc
/etc/default/spamassassin
from the files.tgz archive and place them at the locations specified (packed from / - directory).
Then edit /etc/postfix/main.cf file to set the following option:
mailbox_command = /usr/bin/procmail
then launch
#~: update-rc.d spamassassin defaults
Make sure that file /etc/mail/spamassassin/local.cf exists
and create it if no:
#~: touch /etc/mail/spamassassin/local.cf
Now SpamAssassin is configured.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:04
Confixx 3.0.4 Frontpage Update
Diese Anleitung basiert auf einer SuSe 8.2 Distri.
Nachdem wir bei uns das Confixx 3.0.4 Update eigespielt haben, funktioniert Frontpage 5.0 nicht mehr.
Diese Anleitung wurde mit den Usern/Mitarbeitern aus dem Confixx Forum erarbeitet und von mir nochmals überarbeitet.
http://www.confixx-forum.de/forum/showthread.php?s=&threadid=5243
[color=red]WICHTIG! Sichert euere Dateien!!![/color]
Als erstes besorgt man sich die erforderlichen Dateien:
wget http://download1.sw-soft.com/Confixx/addons/rpms/suse82/confixx-suexec-1.0.7-suse.82.i386.rpm
wget http://download1.sw-soft.com/Confixx/addons/docs/de/confixx-suexec-release_notes.txt
wget http://download1.sw-soft.com/Confixx/addons/rpms/suse82/frontpage-apache-5.0-suse.82.i386.rpm
wget http://download1.sw-soft.com/Confixx/addons/docs/de/frontpage-release_notes.txt
wget http://download1.sw-soft.com/Confixx/addons/confixx-frontpage5-update.tar.gz
wget http://download1.sw-soft.com/Confixx/addons/docs/de/frontpage_upgrade.txt
Und los gehts....
Alle Pakete nach den Anleitungen installieren.
Vor dem einspielen des Updates
confixx-frontpage5-update.tar.gz, solltet Ihr unbedingt das ensprechende Frontpage Verzeichniss löschen (/usr/local/frontpage oder /usr/lib/frontpage).
Wenn bereits Kunden mit FP Web vorhanden sind, solltet Ihr euch die Dateien in diesem Verzeichniss auf jeden Fall vorher sichern und VOR dem Update wieder einspielen. Ausserdem müsst Ihr nach dem Update darauf achten, was in der /tmp/fp_5.0_upgrade.log steht.
Sollten die Webs nicht aktualiesiert worden sein, hilft ein deaktivieren der FP Erweiterungen über die /root/confixx/admin/admin.pl. Nach dem deaktivieren wieder aktivieren. Nicht vergessen den Resellern das FP Feature über die Confixx Oberfläche als Admin wieder freizuschalten.
Dann die Entsprechenden Frontpage User im Confixx Reseller Interface deaktivieren und wieder aktivieren. Ich empfehle die _vti Verzeichnisse in den Userwebs zu löschen.
Nachdem ihr alle Pakete eingespielt habt, geht es hiermit weiter:
1. Erstellen Sie eine Gruppe mit einer hohen gid (z. B. cfxsrv)
2. Erstellen Sie einen Benutzer mit dieser gid (z. B. cfxsrv )
3. Bearbeiten Sie /etc/group und fügen Sie den Benutzer www dieser Gruppe hinzu
4. Setzen Sie $apacheUser auf "cfxsrv" , $apacheGroup auf "cfxsrv" , $gidapache
auf die der Gruppe "cfxsrv" in confixx_main.conf
Die /etc/passwd und /etc/group sollten jetzt so aussehen:
[code]/etc/passwd:
cfxsrv:x:64533:65534::/home/cfxsrv:/bin/bash
[/code]
Der User nogroup hat bei uns die uid 64534
[code]/etc/group
cfxsrv:x:64533:www[/code]
5. Führen Sie das Upgrade durch.
[code]/root/confixx/admin/updates/update_3.x.pl[/code]
Die Benutzer können die Änderungen auf einfache Weise rückgängig machen:
1. Setzen Sie $apacheUser, $apacheGroup, $gidapache auf ihre Ursprungswerte
2. Führen Sie das Upgrade durch.
In der /etc/httpd/httpd.conf überprüfen, ob der Apache unter der richtigen User/Gruppe ausgeführt wird, andernfalls muss das geändert werden:
User wwwrun
Group cfxsrv
[code]/etc/init.d/apache restart[/code]
Falls es immer noch nicht funktioniert, probiert das mal:
[code]cd /usr/local/frontpage/version5.0/
chown -R root.root apache-fp
chmod -R 711 apache-fp
chmod u+s apache-fp/_vti_bin/fpexe
vi apache-fp/suidkey
S0:00-bashUSER=rootLOGNAME=rootHOME=/rootPATH=
/usr/bin:/bin:/usr/sbin:/sbinMAIL=
/var/mail/rootSHELL=/bin/bashSSH_CLIENT=213.6.
92
:wq
chmod 600 suidkey[/code]
Hier müsst Ihr darauf achten, das vi S0:00-bashUSER=...eine Zeile ist, ich kann das hier leider nicht anders formatieren.
So, nun sollte es laufen. Bitte Antwortet hier oder im Confixx Forum, ob die Anleitung bei euch funktioniert.
Nachtrag:
Nachdem ein neuer User auf dem Server angelegt wurde, muss jeweils einmal das frontpage_update.pl ausgeführt werden.
Cron:
@daily /root/confixx/admin/updates/frontpage_update.pl
Gruss Michael
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:05
Secure
Traffic-Kontrolle mit iam leichtgemacht (HowTo)
IAM Install-HowTo für einen Rootserver
Da es immer wieder im Forum auftaucht, hier nochmal eine kleine Zusammenfassung einiger typischer Probleme rund um das Traffic-Überwachungstool iptables accounting monster (IAM). Die wichtigen Schritte sind auch in der mitgelieferten HOWTO Datei beschrieben, allerdings in englisch.
Anhand einer typischen Installation (zum ansehen des Traffics per Web) will ich auf die Probleme kurz eingehen. Weitere Optionen und Konfigurationen sind natürlich gerne willkommen.
Die Befehle und Kommandos sind auf der Shell per ssh einzugeben.
* Archiv downloaden, entpacken und kopieren:
cd /usr/local/src
wget ftp://intevation.de/iam/iam-0.0.2.tar.gz
oder wget ftp://ftp.gwdg.de/pub/misc/freegis/intevation/iam/iam-0.0.2.tar
tar -xzvf iam-0.0.2.tar.gz
mkdir /usr/local/iam
cp -r /usr/local/src/iam-0.0.2/* /usr/local/iam/
cd /usr/local/iam
* Das Skript iptables kopieren, modifizieren und starten
- Kopieren:
cp iptables.server /etc/init.d/iptables
Mit dem Editor pico öffnen...
pico /etc/init.d/iptables
- Modifizieren (u.a. dank der Infos von Thomas Koester, dem Entwickler):
DUMPFILE=/usr/local/iam/dump
anpassen.
extif=eth0
können wir so lassen. Es ist das Device, an dem dieser Rechner an das Internet angeschlossen ist. Bei Rechnern mit nur einer Netzwerkkarte in Richtung Firewall meist eth0.
extip=217.160.xxx.yyy
Die IP-Adresse, die dieser Server vom Internet aus betrachtet hat, also deine Server-IP.
intif=lo
Die "interne Netzwerkkarte" lo (local). Verkehr vom Rechner zu sich selbst soll ja sicherlich nicht berechnet werden.
intnet=195.20.224.72
Die Netzmaske für das LAN am Serverstandort. Dort kann man z.B. die IP des Updateservers von Puretec eintragen, denn der Traffic dorthin ist ja kostenlos. Diese IP entspricht der des Backupservers, zu dem der Traffic ebenfalls kostenlos ist, wenn man ihn gemietet hat.
Die Zeile hq= kann gelöscht werden. Sie hilft beim Beschreiben des Traffics zwischen eigenem Server und dem Server von intevation.de. Hq waere dann die Netzmaske fuer das Buero (HeadQuarter) von intevation.
Ebenso kann die Kette intevation gelöscht werden, d.h. folgende Zeilen löschen:
new_chain intevation
acc_ip intevation $hq
Dann sorgen wir dafür, dass das /var/log/warn Log nicht mit Meldungen überflutet wird. Die folgenden Zeilen im Bereich ´other traffic´ müssen so aussehen:
new_chain fragment
acc_ip fragment 0/0 -f
new_chain unknown
acc_ip unknown 0/0
Danach STR+O drücken und RETURN um zu speichern, sowie STR+X um pico zu verlassen.
- Starten:
/etc/init.d/iptables start
und es sollte erscheinen:
Starting iptables ip accounting: iptables.
Dann noch einen ersten Dump machen:
/etc/init.d/iptables dump
und die Datei dump im Verzeichnis /usr/local/iam sollte vom Skript angelegt sein.
* Das Skript an eigene Bedürfnisse anpassen
Der Satz aus dem original-HOWTO
quote:
--------------------------------------------------------------------------------
Edit chains.py to set categories, names, rates and their descriptions.
--------------------------------------------------------------------------------
dürfte selbsterklärend sein. Das ist nur eine Frage des persönlichen Geschmacks.
Zumindest folgende Zeile kann bedenkenlos gelöscht werden, wenn oben die Kette zum intevation-Server gelöscht wurde:
"intevation" : (free, "Intevation office"),
* Das Skript iam_report anpassen
Folgendes sollte so in iam_report stehen:
IAM=/usr/local/iam/iam
DUMP=/usr/local/iam/dump
WWWDIR=/home/Pfad_zum_Webverzeichnis
wobei WWWDIR den absoluten Pfad zu dem Webverzeichnis darstellt, in dem iam seine einsehbaren html-Dateien ablegt. Das Verzeichnis muss existieren bzw. noch angelegt werden und natürlich per Web erreichbar sein.
DUMP und IAM bezeichnen keine Verzeichnisse, sondern den kompletten Pfad samt Dateinamen des Skriptes iam (/usr/local/iam ist das Verzeichnis, /usr/local/iam/iam das Verzeichnis samt Dateinamen dahinter). Bei dump analog.
Wer den Anzeigezeitraum von iam dem Abrechnungszeitraum von 1&1 anpassen will, kann das durch folgende Änderungen in iam_report erreichen (angenommen der 9. des Monats ist euer Stichtag bei 1&1):
#!/bin/sh
IAM=/usr/local/iam
DUMP=/usr/local/iam/dumpfile
WWWDIR=/usr/local/iam/report
YM_CURRENT=´date '+%Y-%m'´
YM_LAST=´date --date='1 month ago' '+%Y-%m'´
YM_NEXT=´date --date='1 month' '+%Y-%m'´
$IAM -f $YM_CURRENT-09 -t $YM_NEXT-09 -w $WWWDIR/$YM_CURRENT.html $DUMP
$IAM -f $YM_LAST-09 -t $YM_CURRENT-09 -w $WWWDIR/$YM_LAST.html $DUMP
ln -sf $WWWDIR/$YM_CURRENT.html $WWWDIR/current.html
ln -sf $WWWDIR/$YM_LAST.html $WWWDIR/last.html
exit $?
Hier muss 09 natürlich durch deinen Abrechnungstag ersetzt werden.
* Reports automatisch erstellen lassen
Dazu müssen in der crontab folgende cronjobs erstellt werden:
export EDITOR=pico
crontab -e
zum aufrufen des Cron-Editors, dann dort folgende Zeilen einfügen (die jede halbe Stunde einen dump erstellen und zwei Minuten später den Report schreiben)
0,30 * * * * /etc/init.d/iptables dump >/dev/null
2,32 * * * * /usr/local/iam/iam_report
@reboot /etc/init.d/iptables start
Ebenso wieder STR+O und RETURN zum speichern und STR+X zum verlassen von pico.
* Testreport ausgeben (optional)
Jetzt noch einen ersten Report auf der Konsole erstellen lassen:
./iam -r dump
und es sollte ein Report erscheinen, der allerdings noch nicht viel enthält.
So, fertig ist die Installation.
Wenn auf dem Server Tools wie Nagios o.ä. laufen, gibt es natürlich immer etwas lokalen Traffic, also nicht wundern.
Wer weitere Ports speziell aufgelistet haben will (wie z.B. bei einigen Gameservern nötig), muss weitere chains erstellen. Wer damit nicht zurecht kommt, kann jederzeit im Forum suchen und ggf. posten, wenn´s noch keine Lösung gibt.
Viel Spass mit iam und nochmal THX an alle, die bei der Entwicklung des HowTos durch Tipps, Erklärungen und Verbesserungen mitgewirkt haben, vor allem an deepinpowder, der sich als unermüdlicher Betatester bewährt hat,
RootForum-Team<br>Mehr Informationen unter: http://www.rootforum.de/forum/viewtopic.php?p=17396
2. Abrechnungszeitraum des Traffics ändern:
FALSCH:
YM_CURRENT=´date ´+%Y-%m´´
YM_LAST=´date --date=´1 month ago´ ´+%Y-%m´´
YM_NEXT=´date --date=´1 month´ ´+%Y-%m´´
RICHTIG:
YM_CURRENT=´date '+%Y-%m'´
YM_LAST=´date --date='1 month ago' '+%Y-%m'´
YM_NEXT=´date --date='1 month' '+%Y-%m'´
3. Falls man sich unsicher ist, wie das "Device" (meistens eth0) für seine Netzwerkkarte ist, kann man dies mit "ifconfig" herausfinden.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:06
Snort, ACID, Base Howto
1. Snort, ACID, Oinkmaster und Guardian Howto auf Debian 4.0:
Vorrausetzungen:
MySQL, Apache2, PHP4
Erstellen Sie zuerst die Datenbank snort und den User snort in MySQL.
Der user snort sollte alle rechte auf der DB haben.
1.1. Snort installieren Download von: http://www.snort.org/dl/
Oinkmaster download von http://oinkmaster.sourceforge.net/ oder per apt-get
Build:
apt-get install libpcap0.8 libpcap0.8-dev php4-pear snort-mysql
Nur nötig bei manueler installation.
./configure --prefix=/opt/snort --with-mysql=/usr/lib/mysql
make
make install
mysql -u snort -p snort < contrib/create_mysql
zcat create_mysql.gz | mysql -u snort -pciw_snort snort
1.2. JPGraph installierenDownload von: http://www.aditus.nu/jpgraph/jpdownload.php
Installation:
Entpacken in /var/www
ln -s jpgraph-version jpgraph
Das Linken ist praktisch bei späteren Updates, so muß nur der Link geändert werden.
1.3. ADODB installierenDownload von:
Installation:
Entpacken in /var/www
1.4. ACID installierenDownload von: http://acidlab.sourceforge.net/
Entpacken in /var/www
vi /var/www/acid/acid_conf.php
$DBlib_path = "/var/www/adodb";
$DBtype = "mysql";
$alert_dbname = "snort";
$alert_host = "localhost";
$alert_port = "";
$alert_user = "snort";
$alert_password = "password";
/* Archive DB connection parameters */
$archive_dbname = "snort";
$archive_host = "localhost";
$archive_port = "";
$archive_user = "snort";
$archive_password = "password";
/* ich fahr nich so auf pconnect ab */
$db_connect_method = 2;
$ChartLib_path = "/var/www/jpgraph/src";
pconnect
Eigendlich keine schlechte idee, wir mussten aber die Erfahrung machen das 99% der entwickler (die Datenbank wurde mitbenutzt für andere Firmen Projekte), zu hirn verbrannt sind um mit pconnect richtig umzugehen, so dass wir dies anschliessend verboten haben, ich habe mich dran gewöhnt und verwende pconnect nicht mehr.
Bei MySQL ist ein connect auch ausreichend schnell, so das es kaum wirkliche gründe für pconnect gibt.
1.5. Snort konfigurieren und zum starten fertig machen/opt/snort/etc/snort.conf
var HOME_NET [213.133.103.207/32]
var EXTERNAL_NET !$HOME_NET
var DNS_SERVERS $HOME_NET
var SMTP_SERVERS $HOME_NET
var HTTP_SERVERS $HOME_NET
var SQL_SERVERS $HOME_NET
var TELNET_SERVERS $HOME_NET
var HTTP_PORTS 80:82
var SHELLCODE_PORTS !80
var RULE_PATH /opt/snort/etc/rules
preprocessor frag2
preprocessor stream4: detect_scans, disable_evasion_alerts
preprocessor stream4_reassemble: both
preprocessor http_decode: 80 unicode double_encode full_whitespace
preprocessor rpc_decode: 111 32771
preprocessor bo
preprocessor telnet_decode
preprocessor portscan: $HOME_NET 4 3 portscan.log
#preprocessor portscan-ignorehosts: 0.0.0.0
output database: log, mysql, user=snort password=xxxxx dbname=snort host=localhost
output database: alert, mysql, user=snort password=xxxxx dbname=snort host=localhost
include /opt/snort/etc/classification.config
include /opt/snort/etc/reference.config
include /opt/snort/etc/rules.conf
So sieht es bei mir aus, Sie werden sicherlich das ein oder andere anpassen müssen/wollen.
Mindestens aber den Netzbereich für $HOME_NET und die MySQL Zugangsdaten.
Etweige Rules die ich haben möchte werden über rules.conf inkludiert.
Die classification.config und reference.config finden Sie im snort Source Directoty
unter /etc.
/opt/snort/etc/run
#!/bin/sh
SNORT_BIN="/opt/snort/bin/snort"
SNORT_OPTS=" -c /opt/snort/etc/snort.conf -i eth0 -u snort -g snort -l /log -t /opt/snort/run"
exec $SNORT_BIN $SNORT_OPTS
Oinkmaster:
touch /etc/autodisable.conf
cd /usr/local/src/
wget http://mesh.dl.sourceforge.net/sourceforge/oinkmaster/oinkmaster-2.0.tar.gz
tar –zxvf oinkmaster-2.0.tar.gz
cd oinkmaster-2.0
cp oinkmaster.pl /usr/bin
cp oinkmaster.conf /etc/
cd contrib.
cp makesidex.pl /etc
chown -R snort:snort /etc/snort
mcedit /etc/oinkmaster.conf
url = http://www.snort.org/pub-bin/oinkmaster.cgi/oinkcode /snortrules-snapshot-2.3.tar.gz
cd /etc
./makesidex.pl /etc/snort/rules >autodisable.conf
mkdir /etc/snort/backup
chown -R snort:snort /etc/snort/backup
cd /usr/bin
touch oinkdaily
chmod +x oinkdaily
mcedit oinkdaily
I added the following line to the oinkdaily file
oinkmaster.pl -C /etc/oinkmaster.conf -C /etc/autodisable.conf -o /etc/snort/rules -b
/etc/snort/backup 2>&1 | mail -s "oinkmaster" hkiyimbabou.or.ug
Then I scheduled snort to download the rules
crontab –u snort –e
30 5 * * * /usr/bin/oinkdaily
Any help will be appreciated
pear channel-update pear.php.net
pear upgrade-all
apt-get install php5-gd
pear install Numbers_Roman-1.0.2
install ok: channel://pear.php.net/Numbers_Roman-1.0.2
pear install Numbers_Words-0.15.0
install ok: channel://pear.php.net/Numbers_Words-0.15.0
pear install Image_Color-1.0.2.tgz
install ok: Image_Color 1.0.2
pear install Image_Canvas-0.3.0.tgz
install ok: Image_Canvas 0.3.0
pear install Image_Graph-0.7.2.tgz
Optional dependencies:
package ´Numbers_Roman' is recommended to utilize some features.
package ´Numbers_Words' is recommended to utilize some features.
install ok: Image_Graph 0.7.2
Verfasser: Michael Stender
Letzte Änderung: 2008-06-29 00:05
[tmp] Verzeichniss mit noexec
HOW-TO: Mount /tmp mit noexec
---------------------------------------------------
Viele Leute die einen eigenen Webserver betreiben,
kennen das Problem mit sicherheit :-)
Es können im /tmp Verzeichniss beliebige Dateien ausgeführt werden.
Dies nutzen einige Scriptkiddys um sich Zugang zum Server zu verschaffen.
Diese Sicherheitslücke werden wir nun schließen indem wir ein neues Verzeichniss anlegen, in dem das ausführen von Proogrammen nicht erlaubt ist.
Dies schützt den Server vor den meisten exploits oder rootkits.
Nun gehts los:
Die folgenden Schritte kann man sich natürlich sparen, wenn man gleich beim aufsetzen des Servers dem tmp Verzeichniss eine eigene Partition zuteilt.
Zuerst erstellen wir uns ein 1000 MB große Datei für unsere /tmp Partition.
Wenn das zu klein ist, kann man es auch Problemlos vergrößern. Erhöht einfach den count=1000000 Wert.
cd /dev
dd if=/dev/zero of=tmpMnt bs=1024 count=1000000
Jetzt erstellen wir uns ein erweitertes Filesystem für unser tmpMnt Datei.
mke2fs /dev/tmpMnt
Nun sichern wir das vorhandene /tmp Verzeichniss.
Einige Programme legen symbolische Links oder Cache Dateien ins /tmp Verzeichniss.
cd /
cp -R /tmp /tmp_backup
Jetzt mounten wir das neue Filesystem.
mount -o loop,noexec,nosuid,rw /dev/tmpMnt /tmp
chmod 0777 /tmp
Inhalt vom gesicherten /tmp Verzeichniss zurückkopieren und Backup löschen.
cp -R /tmp_backup/* /tmp/
rm -rf /tmp_backup
Nun müssen wir die fstab ändern, damit das neue Verzeichniss nach dem neustarten des Server auch noch erreichbar ist.
mcedit /etc/fstab
Du siehst nun folgendes:
/dev/hda3 / ext3 defaults,usrquota 1 1
/dev/hda1 /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda2 swap swap defaults 0 0
Am ende fügst du dies hinzu:
/dev/tmpMnt /tmp ext2 loop,noexec,nosuid,rw 0 0
(WICHTIG: jeder space ist ein tab)
Das war es schon. Das ganze kann man dan ganz einfach überprüfen indem du eine Datei (test) im /tmp Verzeichniss mit folgendem Inhalt anlegst:
#!/bin/sh
ps
danach ein
chmod 755 /tmp/test
Und nun testen wir das ganze:
./test
bash: ./test: /bin/sh: bad interpreter: Keine Berechtigung
Unter Debian bekommt man leider Probleme beim einspielen von Updates (apt-get).
Dies kann man aber umgehen, indem man unter /etc/apt/ eine Datei apt.conf mit folgendem Inhalt angibt:
DPkg::Pre-Invoke {"mount -o remount,exec /tmp";};
DPkg::Post-Invoke {"mount -o remount /tmp";};
Das wars...
Verfasser: Michael Stender
Letzte Änderung: 2010-11-17 02:28
APF Firewall starte nach Kernelupdate nicht mehr. (Unable to load iptables module (ipt_state), aborting)
Edit: /etc/apf/internals/functions.apf
Replace these lines:
ml ipt_state 1
ml ipt_multiport 1
with these lines:
ml xt_state
ml xt_multiport
Verfasser: Michael Stender
Letzte Änderung: 2007-08-14 23:55
CTXtra schützt deine PHP-Scripte vor SQL-Injection, Wurmattacken und SPAM
Der CTXtra schützt deine PHP-Scripte vor SQL-Injection, Wurmattacken und SPAM.
Der CTXtra blockt und loggt Angriffe dass du sie auswerten und anderen usern zur Verfügung stellen kannst. Die Zusammenarbeit aller User gewährleistet einen noch höheren Schutz gegen SPAM und Angriffen.
Seit der Version v1.4 ist ein SPAM-Filter integriert der gängige Foren vor SPAM schützt.
Der CTXtra arbeitet mit XML Listen die online mit unserer Datenbank abgeglichen werden. Per klick ist dann deine SPAM- und BadIP-Liste auf dem neuesten Stand.
Der CTXtra ist ein sehr junges Projekt, wir sind erst seit 9 April '07 online.
Bitte beachtet das der CTXtra kein 100%iger Schutz ist! Er blockt zwar bereits sehr zuverlässig bekannte Wurmattacken, SQL Injections (die versuchen über typische Exploits oder Lücken in PHP Skripten in die Datenbank einzudringen) und SPAM, dennoch können wir leider keine Garantie geben das der CTXtra deine Webseite erfolgreich vor Angriffen schützt. Wir bemühen uns aber den CTXtra von Version zu Version zu verbessern.
Downloaden kann man den CTXtra hier: http://www.ctxtra.de/download
Verfasser: Michael Stender
Letzte Änderung: 2007-09-21 04:13
fail2ban Speicher optimieren
Fail2ban verbraucht bei der ausführung vie Speicher.
Das kann man in der /etc/default/fail2ban mit folgendem Eintrag optimieren:
ulimit -s 256
Verfasser: Michael Stender
Letzte Änderung: 2010-12-05 01:41
PHP-Nuke
Web_News funktionieren nicht mehr oder werden nicht angezeigt.
Danke an den User jubilee aus dem Forum von Maax-Design!
Einzige potentielle Fehlerquelle ist die Datei:
modules/Web_News/index.php
Da mal bitte diesen Abschnitt (ab Zeile 80)
quote:
--------------------------------------------------------------------------------
[code]else
{
$ft = @fopen($headlinesurl, "r");
if ( $ft ) { $items = implode( '', file($headlinesurl)); }[/code]
--------------------------------------------------------------------------------
so abändern:
quote:
--------------------------------------------------------------------------------
[code]else
{
ini_set("allow_url_fopen","1");
$ft = @fopen($headlinesurl, "r");
if ( $ft ) { $items = implode( '', file($headlinesurl));
ini_set("allow_url_fopen","0");}[/code]
--------------------------------------------------------------------------------
MfG
jubilee
http://www.maax-design.de/
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:09
Nuke 2fvkp CMS läuft nach umstellung auf php5.4 nicht mehr
Diese Fehlermeldung war in der Log Datei zu finden:
mod_fcgid: stderr: PHP Warning: Call-time pass-by-reference has been deprecated If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file in /var/www/vhosts/meinedomain.de/httpdocs/includes/2f/2fsql_layer_nuke.php on line 333
Die Lösung ist ganz einfach: In der 2fsql_layer_nuke.php das & zeichen entfernen.
$dbr = $this->SqlQuery(&$sql);
$dbr = $this->SqlQuery($sql);
Das ändert man in allen Zeilen der Datei und schon läuft es wieder.
Verfasser: Michael Stender
Letzte Änderung: 2014-08-09 08:56
Typo3
Typo3 Links
Typo3 Links:
[url=http://www.typo3.org]typo3.org[/url].
[url=http://www.typo3faq.net]typo3faq.net[/url]
[url=http://www.typo3server.com]typo3server.com
[/url][url=http://www.lleuchter.de/typo3.html]leuchter.de[/url]
Foren:
[url=http://www.typo3.net]typo3.net[/url]
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:10
Debian
Debian 32bit Sarge Firecracker Raid1 Howto+grsecurity Kernel 2.6.11.12
Diese Anleitung basiert auf der Anleitung von Fastwebspace24 aus dem Webperoni Kundenforum.
https://www.webperoni.de/forum/viewtopic.php?p=700#700
Partitionen formatieren:
[code]
mke2fs -j /dev/md1
mke2fs -j /dev/md0
mkswap /dev/hda3
mkswap /dev/hdc3
swapon /dev/hda3
swapon /dev/hdc3
[/code]
Verzeichnisse erstellen und Partitionen mounten:
[code]
mkdir -p /mnt/rd/mnt
mkdir -p /mnt/rd/mnt/debian
mount /dev/md1 /mnt/rd/mnt/debian
mkdir -p /mnt/rd/mnt/debian/daten
[/code]
Basis Paket herunterladen:
[code]
cd /mnt/rd/mnt/debian/daten
Dies ist eine Zeile->wget http://http.us.debian.org/debian/dists/woody/main/
disks-i386/base-images-current/basedebs.tar<-Zeile Ende
Dies ist eine Zeile->/usr/sbin/debootstrap --arch i386 --unpack-tarball
/mnt/rd/mnt/debian/daten/basedebs.tar woody /mnt/rd/mnt/debian<-Zeile Ende
[/code]
Bootpartition mounten und ab ins chroot:
[code]
chroot /mnt/rd/mnt/debian/ /bin/bash
mkdir -p /mnt/rd/mnt/debian/boot
mount /dev/md0 /mnt/rd/mnt/debian/boot
[/code]
Wer sich mit dem vi nicht auskennt, der drückt Einfg, fügt den gewünschten text ein, einmal Esc, danach :wq
Ich nehme da immer den MidnightComander (mc) apt-get install mc. Der Befehl zum öffnen lautet dann mcedit /etc/fstab
/etc/fstab anlegen:
[code]
vi /etc/fstab
/dev/md0 /boot ext3 user 0 0
/dev/md1 / ext3 usrquota,grpquota 1 1
/dev/hda3 swap swap pri=42 0 0
/dev/hdc3 swap swap pri=42 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
sysfs /sys sysfs noauto 0 0
[/code]
proc mounten:
[code]
mount -t proc proc /proc
[/code]
Tastatur einstellen:
[code]
dpkg-reconfigure console-data
[/code]
/etc/modules anlegen:
[code]
vi /etc/modules
via-rhine
[/code]
Netzwerk einrichten:
[code]
vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 83.133.xx.xxx
network 83.133.xx.0
netmask 255.255.255.0
broadcast 83.133.xx.255
gateway 83.133.xx.1
[/code]
resolv.conf anlegen:
[code]
vi /etc/resolv.conf
nameserver 83.133.80.9
nameserver 83.133.80.10
[/code]
Hostnamen anlegen:
[code]
echo meinhostname > /etc/hostname
[/code]
hosts Datei anlegen:
[code]
vi /etc/hosts
127.0.0.1 localhost
83.133.xx.xxx meinhostname.webperoni.de
83.133.xx.xxx meinhostname
[/code]
Debian Konfigurieren:
[code]
/usr/sbin/base-config
[/code]
Noch ein paar Programme installieren:
[code]
apt-get install less wget w3m vim libncurses5-dev make gcc mbr bzip2 lilo mdadm mc ssh
[/code]
Sources.list ergänzen:
[code]
/etc/apt/sources.list
deb http://ftp.debian.de/debian sarge main contrib
deb-src http://ftp.debian.de/debian sarge main contrib
deb http://ftp.debian.de/debian-non-US sarge/non-US main contrib
deb-src http://ftp.debian.de/debian-non-US sarge/non-US main contrib
deb http://ftp.debian.de/debian/ sarge-proposed-updates main
deb-src http://ftp.debian.de/debian/ sarge-proposed-updates main
deb ftp://ftp.de.debian.org/debian/ testing main
deb-src ftp://ftp.de.debian.org/debian/ testing main
deb http://security.debian.org/ testing/updates main contrib
deb ftp://ftp2.de.debian.org/debian/ testing main
deb-src ftp://ftp2.de.debian.org/debian/ testing main
deb ftp://debian.tu-bs.de/debian/ testing main
deb-src ftp://debian.tu-bs.de/debian/ testing main
deb ftp://ftp.uni-erlangen.de/pub/Linux/debian/ testing main
deb-src ftp://ftp.uni-erlangen.de/pub/Linux/debian/ testing main
deb ftp://ftp.uni-stuttgart.de/debian/ testing main
deb-src ftp://ftp.uni-stuttgart.de/debian/ testing main
deb ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/debian/ testing main
deb-src ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/debian/ testing main
[/code]
Updates durchführen:
[code]
apt-get update
apt-get upgrade
apt-get clean
apt-get dist-upgrade
[/code]
Lilo Bootloader anpassen:
[code]
vi /etc/lilo.conf
boot=/dev/md0
root=/dev/md1
install=/boot/boot-menu.b
delay=3
lba32
image=/vmlinuz
initrd=/initrd.img
label=Linux
[/code]
Standard Kernel installieren:
[code]
apt-get install kernel-image-2.4-386
[/code]
Bootsector schreiben:
[code]
lilo -b /dev/hda -D Linux
zum Debuggen:
lilo -v -v -b /dev/hda -D Linux
[/code]
Recovery Modus im Webperoni Panel abschalten und nicht! neu starten lassen. Mindestens 2 min warten!
chroot beenden:
[code]
exit
umount /mnt/rd/mnt/debian/boot
umount /mnt/rd/mnt/debian/
shutdown -r now
[/code]
Das wars! Wenn alles geklappt hat bootet der Rechner jetzt :-)
Wer jetzt noch Lust hat, der baut sich noch einen eigenen aktuellen Kernel.
Kernel backen incl. grsecurity Kernel 2.6.11.12 patch:
Infos zum grsecurity Patch findete Ihr hier: http://www.grsecurity.net
Zuerst den alten Kernel entfernen:
[code]
apt-get remove kernel-image-2.4-386
[/code]
Aus der lilo.conf entfernen:
#initrd=/initrd.img
Kernel runterladen:
[code]
cd /usr/src
wget http://ftp.nl.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.12.tar.bz2
tar -jvxf linux-2.6.11.12.tar.bz2
ln -s linux-2.6.11.12 linux
# grsecurity (optional)
wget http://www.grsecurity.net/grsecurity-2.1.6-2.6.11.12-200506141713.patch.gz
cd linux
zcat ../grsecurity-2.1.6-2.6.11.12-200506141713.patch.gz | patch -p1
cd /usr/src/linux
[/code]
Nun muss der Kernel compiliert werden.
Wichtig dabei ist, das die Module via-rhine, raid1 Support und der grsecurity Kernel aktiviert werden.
Nicht als Module, sondern direkt in den Kernel laden!
[code]
make menuconfig
make bzImage
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.11.12
rm /boot/map
rm /boot/System.map
cp System.map /boot/System.map-2.6.11.12
ln -s /boot/System.map-2.6.11.12 /boot/System.map
rm /boot/.config
cp .config /boot/.config-2.6.11.12
ln -s /boot/.config-2.6.11.12 /boot/.config
make modules
make modules_install
rm /vmlinuz
ln -s /boot/vmlinuz-2.6.11.12 /vmlinuz
lilo -v -v -b /dev/hda -D Linux
[/code]
Recovery Modus im Webperoni Panel abschalten und nicht! neu starten lassen. Mindestens 2 min warten!
chroot beenden:
[code]
exit
umount /mnt/rd/mnt/debian/boot
umount /mnt/rd/mnt/debian/
shutdown -r now
[/code]
Kernel überprüfen:
cat /proc/version
Linux version 2.6.11.12-grsec (root@xxxxxxx) (gcc version 3.3.5 (Debian 1:3.3.5-13)) #1 SMP Fri Jul 15 00:13:58 CEST 2005
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:11
GPG Error
W: GPG error: http://debian.linux-systeme.com sid Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F35E97D46941C9D8
W: GPG error: http://www.steve.org.uk sarge Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F3E8C641DC2698A1
W: GPG error: http://puga.vdu.lt sarge Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 00CB25206E825E4E
W: GPG error: http://puga.vdu.lt sid Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 00CB25206E825E4E
gpg --keyserver subkeys.pgp.net --recv-keys F35E97D46941C9D8
gpg --keyserver subkeys.pgp.net --recv-keys F3E8C641DC2698A1
gpg --keyserver subkeys.pgp.net --recv-keys 00CB25206E825E4E
apt-get install debian-keyring gpgkeys
apt-key add /usr/share/keyrings/debian-role-keys.gpg
gpg --armor --export 00CB25206E825E4E | apt-key add -
gpg --armor --export F35E97D46941C9D8 | apt-key add -
gpg --armor --export F3E8C641DC2698A1 | apt-key add -
apt-get update
Verfasser: Michael Stender
Letzte Änderung: 2011-03-23 01:59
Debian Sarge auf deutsche Sprache einstellen
Auch wenn sie bei der Installation deutsch als Sprache ausgewählt haben, spricht Debian dennoch Englisch mit ihnen. Da kann man entweder Englisch lernen, oder Debian Deutsch beibringen. Hier wird die zweite Möglichkeit beschrieben.
Dazu werden zunächst einige Programme installiert (apt-get install PROGRAMM). Möglicherweise sind bei ihnen schon einige davon vorhanden. Dann müssen sie diese statt dessen neu konfigurieren (dpkg-reconfigure PROGRAMM). So können sie die Einstellungen natürlich auch nachträglich noch einmal ändern.
Installiere zunächst locales mit apt-get install locales oder wenn bereits installiert dpkg-reconfigure locales -plow und nehmen folgende Einstellungen vor.
-> de_DE@euro ISO-8859-15
mcedit /etc/environment
LANG=de_DE@euro
locale-gen
Mit locale kann man nach dem Einloggen sehen, daß die Einstellung de_DE@euro für alle LC_-Variablen aus LANG übernommen wird.
fonty installieren/reconfigurieren
apt-get install fonty
Sie können den Konsolenzeichesatz einstellen
-> iso15 (Western European + euro)
Wieviele Konsolen sollen konfiguriert werden?
-> 6
locales installieren/reconfigurieren
apt-get install locales
dpkg-reconfigure locales
Wählen Sie die Standarteinstellungen zum generieren aus.
-> [*] de_DE@euro ISO-8859-15
Welches soll die Standard-locale des Systems sein?
-> de_DE@euro
Jetzt sollten sie noch ein paar Schriften installieren
apt-get install xfonts-base-transcoded xfonts-100dpi-transcoded xfonts-75dpi-transcoded Installieren sie language-env (Falls es schon vorhanden ist, konfigurieren sie es nicht neu) und führen sie dass dazu gehörige Programm set-language-env aus.
apt-get install language-env
set-language-env -E 4
-> 4
Germany
-> 1
Fragen beantworten (am besten alle mit j)
Do you want to use ISO-8859-15 (euro sign) ? [J/n] j
------- /etc/skel/.Xresources --------
For softwares on X Window System.
Diese Einstellung durchfuehren? [J/n] j
Einstellung erfolgt...
------- /etc/skel/.bash_profile --------
Executed when bash is invoked as a login shell.
Only calling .bashrc.
Diese Einstellung durchfuehren? [J/n] j
Einstellung erfolgt...
------- /etc/skel/.bashrc --------
Aktiviert die vorhandene Unterstuetzung fuer Deutsch auf der
Kommandozeile und in den meisten anderen Programmen.
Wird beim Start von bash ausgefuehrt.
Diese Einstellung durchfuehren? [J/n] j
Einstellung erfolgt...
------- /etc/skel/.emacs --------
Deutsche Einstellungen fuer Emacs
Diese Einstellung durchfuehren? [J/n] j
Einstellung erfolgt...
------- /etc/skel/.xsession --------
For starting up of an X session.
Diese Einstellung durchfuehren? [J/n] j
Einstellung erfolgt...
--------------------
Einstellung sind erfolgt. Sie werden beim naechsten
Login wirksam.
Sie koennen die geaenderten Einstellungs-Dateien lesen und die
Aenderungen ueberpruefen. Falls notwendig, koennen Sie die hinzugefueg-
ten Zeilen direkt abaendern oder hinter der Zeile ´language-env end´
Einstellungen anfuegen, die so dann vor den vorhergehenden Einstel-
lungen Vorrang haben.
Lesen Sie /usr/share/doc/language-env/README.* fuer naehere Angaben.
Folgende Pakete werden ergaenzend zur Installation vorgeschlagen:
manpages-de-dev
Install the following locales.
(Edit /etc/locale.gen and invoke locale-gen)
de_DE@euro ("de_DE@euro ISO-8859-15" in /etc/locale.gen)
Druecken Sie [Enter] um das Programm zu beenden. Erstellen sie in /etc/environment folgende Zeilen
LANGUAGE=de_DE@euro
LANG=de_DE@euro
Display Manager einstellen:
GDM Falls sie GDM verwenden fügen sie in /etc/init.d/gdm die Zeile
export LANG=de_DE@eurovor
echo -n "Starting GNOME Display Manager: gdm"
start-stop-daemon --start --quiet --pidfile $PIDFILE $SSD_ARG || echo -n " already running" ein.
WDM Es genügt ein export LANG=de_DE@euro in /etc/init.d/wdm vor der echo -n Zeile
Sollten sie nicht den GDM, WDM sondern den KDM oder XDM als Display Manager verwenden, müssen sie wohl etwas rumprobieren. Und wenn sie es rausgefunden haben, schreiben sie es hierher, dass es auch andere wissen
Verfasser: Michael Stender
Letzte Änderung: 2008-05-05 22:21
3Ware Raid Tuning
Mit dieser einstellung läßt sich ein 3WareControler erheblich beschleunigen. Es wir einfach ein Cache angelegt.
Um die einstellung dauerhaft bei jedem Start anzuwenden, trägt man dies Bei Debian in die /etc/init.d/rc.local ein:
# 3Ware Raid Tuning
blockdev --setra 16384 /dev/sda
Verfasser: Michael Stender
Letzte Änderung: 2007-08-28 22:21
Zwei Server mit den selben Paketen und "dpkg" einrichten
Um die gleichen Pakete auf zwei Servern einzurichten, verwendet man einfach den dpkg --get-selections Befehl:
dpkg --get-selections > packetliste.txt Damit hat man alle Pakete in einer Datei.
Diese Datei auf den anderen Server übertragen und einlesen:
dpkg --set-selections < packetliste.txt
apt-get dselect-upgrade
Verfasser: Michael Stender
Letzte Änderung: 2007-10-07 16:59
Debian 4.0 Software Raid1 install auf Hetzner Server
Hetzner Rescue System starten.
Passwort aufschreiben! Das Passwort ist nach fertigstellung das root Passwort.
Im Rescue Mode:
rescue:~# installimage
aufrufen.
Man wird zuerst nach dem zu installierenden System gefragt.
Hier Debian (official), Debian-40-etch-32-minimal auswählen.
Danach geht ein Fenster auf für die extra Konfiguration.
Nach FORMATDRIVE2 0 suchen und ändern:
FORMATDRIVE2 1
Nach
PART 1 swap swap 2048
PART 2 / ext3 all
suchen und ändern:
#PART 1 swap swap
#PART 2 /boot
Danach folgendes einfügen:
PART 1 swap swap 8096
PART 2 /boot ext3 1000
PART 3 / ext3 70240
PART 4 /home ext3 50240
PART 5 /tmp ext3 10240
PART 6 /usr ext3 50240
PART 7 /usr/local ext3 50240
PART 8 /var ext3 all
Nach SWRAID 0 suchen und ändern.
SWRAID 1
Man kann natürlich auch andere Partitionsgrößen angeben.
Zum speichern F10 drücken.
ACHTUNG! Alle Festplatten werden nun formatiert.
Abfrage mit ja beantorten.
Jetzt auf keinen Fall neu starten sondern warten bis die SW Raid´s erstellt wurden.
rescue:~# watch cat /proc/mdstat
Das ganze dauert 1-2 Std.
Wenn alles fertig ist sieht es so aus:
Personalities : [raid0] [raid1]
md7 : active raid1 sda9[0] sdb9[1]
144617024 blocks [2/2] [UU]
md6 : active raid1 sda8[0] sdb8[1]
51448064 blocks [2/2] [UU]
md5 : active raid1 sda7[0] sdb7[1]
51448064 blocks [2/2] [UU]
md4 : active raid1 sda6[0] sdb6[1]
10490368 blocks [2/2] [UU]
md3 : active raid1 sda5[0] sdb5[1]
51448064 blocks [2/2] [UU]
md2 : active raid1 sda3[0] sdb3[1]
71930944 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
1028096 blocks [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1]
8297472 blocks [2/2] [UU]
unused devices: <none>
Hinter jedem Raid muss ein [UU] stehen.
Es sollte kein Hinweis auf einen (resync) geben.
Sonst weiter warten.
Wenn das durchgelaufen ist, rebooten.
rescue:~# reboot
Verfasser: Michael Stender
Letzte Änderung: 2007-11-16 04:52
Serverüberwachung unter Debian mit Munin
apt-get install munin munin-node
Verfasser: Michael Stender
Letzte Änderung: 2008-12-22 07:19
clamav daemon auf Debian System überwachen
md /usr/local/src/clamdwatch
wget http://mikecathey.com/code/clamdwatch/clamdwatch.txt
Ausführbar machen:
chmod +x clamdwatch.txt
mv clamdwatch.txt clamdwatch.pl
Pfad in der clamdwatch.pl anpassen:
____SNIP____
my $Socket = $options{s} || "/var/run/clamd.ctl";
my $log = $options{l} || 0;
my $ip = "127.0.0.1";
my $timeout = $options{t} || 15;
my $lockFile = $options{L} || "/var/lock/subsys/clamd";.pl
____SNIP____
my $Socket = $options{s} || "/var/run/clamav/clamd.ctl";
my $log = $options{l} || 0;
my $ip = "127.0.0.1";
my $timeout = $options{t} || 15;
my $lockFile = $options{L} || "/var/lock/clamd/clamd";
md /var/lock/clamd
cp /usr/local/clamdwatch/clamdwatch.pl /usr/local/bin/clamdwatch.pl
crontab -e
*/1 * * * * root /usr/local/bin/clamdwatch.pl -q && ( /usr/bin/killall -9 clamd; rm -fr /var/amavis/clamd; /etc/init.d/clamav-daemon start 2>&1 )
Verfasser: Michael Stender
Letzte Änderung: 2008-03-27 06:24
Debian Lenny MC (Midnight Commander) internen Editor von Nano auf mcedit ändern.
Unter Debian Lenny und dem Midnight Commander (MC) werden neuerdings Dateien mit dem Nano Editor anstatt des internen mcedit geöffnet. Wer dies wieder ändern möchte, folgt dieser kleinen Anleitung:
apt-get install vim-nox
update-alternatives --config editor
Es gibt 6 Alternativen, die »editor« bereitstellen.
Auswahl Alternative
-----------------------------------------------
1 /bin/ed
+ 2 /bin/nano
3 /usr/bin/vim.tiny
4 /usr/bin/vim.basic
* 5 /usr/bin/mcedit-debian
6 /usr/bin/vim.nox
Drücken Sie die Eingabetaste, um die Vorgabe[*] beizubehalten,
oder geben Sie die Auswahlnummer ein:5
Nun sollte man aber noch im mc unter Optionen -> Konfiguration -> Weitere Optionen -> "Internen Editor verwenden" auswählen und speichern.
Das ganze dann nochmal unter Optionen -> "Einstellungen speichern" sichern.
Das war alles :-)
Verfasser: Michael Stender
Letzte Änderung: 2010-06-05 00:13
3Ware Raid Controler (3DM2) kein Zugriff über Webinterface
Dieses Problem liegt an einem Microsoft Windows Update (KB2585542).
Weitere Infos findet man direkt bei Microsoft: http://support.microsoft.com/kb/2585542 und http://support.microsoft.com/kb/2643584.
Eine Zusammenfassung findet man ebenfalls bei LSI: http://kb.lsi.com/KnowledgebaseArticle16625.aspx.
Zur Zeit wird von LSI an einer neuen Version von 3DM2 gearbeitet. Bis zu endgültigen Lösung, kann man das betreffende Windows Update einfach deinstallieren. Rechner muss nach der deinstallation neu gestartet werden.
Hier gibt es recht aktuelle Debian 5.0 3DM2/TWI Pakete: http://jonas.genannt.name/debian/pool/restricted/3/3ware-3dm2-binary/ . In der Version 10.2-1 wurde das Problem noch nicht gefixt.
Verfasser: Michael Stender
Letzte Änderung: 2012-02-23 18:47
No Space left on Device obwohl laut df genug Platz vorhanden ist
Ich hatte das Problem, das auf einer Partition plötzlich kein Speicher mehr frei war.
"No Space left on Device"
df zeigte mir jedoch an, das noch genug Platz war.
Übeltäter sind die nicht vorhandenen inodes auf der Partition.
df -i
zeigte mir dann auch an, das sämmtliche verfügbare inodes auf der Partition verbraucht waren.
Das ganze habe ich dann so gelöst:
for dir in *; do [ -d "$dir" ] && echo "$dir" && find "$dir" | wc -l; done
Diesen Code kopiert man sich und fügt den im betroffenen Verzeichniss, was mit df -i angezeigt wurde ein.
Dann wechselt man jeweils in das Verzeichniss mit den meisten inodes und führt den Code erneut aus.
Bei mir lag das Problem im /usr/local Verzeichniss. Mann kann den Code auch wie folgt verändern:
for dir in /usr/local/*; do [ -d "$dir" ] && echo "$dir" && find "$dir" | wc -l; done
Wenn man das verantwortliche Verzeichniss dann gefunden hat, löscht man einfach die betreffenden Dateien.
Verfasser: Michael Stender
Letzte Änderung: 2013-12-02 17:07
Plesk
Plesk Power Toys 3.4
Power Toys: [url]http://forum.plesk.com/showthread.php?s=&threadid=20134[/url]
1. Password revealer seems to work very good. I sent myself an email and it arrived, containing all the correct info. I did not try the Template changer, but it loaded without an error.
2. Email Subject Changer loaded. I did not use it beyond this point.
3. Custom DNS loaded and was able to retrieve the current settings for a domain. I did not use it beyond this point.
4. Check Domains seems broken. When you load it, it only provides 1 entry:
5. MySQL Remote Admin User Manager loaded. I did not use it beyond this point.
6. Whois loaded. I was able to do a WHOIS lookup on domains that support the WHOIS service.
7. Newsletter: This is a new features, will let PLESK Admin to send mails to all or selected clients (resellers) or to all domain owners, based on clients filter. This is very helpfull to comunicate with your clients or domain owners, for example if you have an upgrade or downtime etc. Any comments here are welcome.
8. Domain status tool
This tool checks the status of each of the domains on your server.
Status: A green dot indicates the domain is online, a red dot means port 80 does not respond.
IP Match: OK means the domain resolves to the IP you have it assigned to. Any other response indicates the domain is hosted elsewhere or offline.
Domain
Status
IP match
{DOMAIN}
{STATUS}
9. VHOST Writer, 100% editable with predefined things like open_basedir and php_flag log_errors (we will extend if anyone have other ideeas.
10. Alias/Unalias a domain (not available in this beta, mnday or thuesday will be
Even if is seems that is a small adition to a new version, belive us is not. Those two is major ones :-))
Download: [code]http://www.grafxsoftware.com/util/installer.sh[/code]
Update: [code]http://www.grafxsoftware.com/util/upgrade.sh[/code]
Vielen Dank an,
Valics Lehel
GraFX Software Solutions
http://www.grafxsoftware.com
Verfasser: Michael Stender
Letzte Änderung: 2010-08-02 16:07
Debian Clamav installation Plesk 7.5
Clamav:
Install the Debian packages clamav, clamav-daemon and clamav-freshclam.
[code]plesk:~# apt-get install clamav clamav-daemon clamav-freshclam[/code]
Download and extract qsheff and ripmime tar balls.
[code]plesk:~# cd /usr/local/src/
plesk:/usr/local/src#
wget http://surfnet.dl.sourceforge.net/sourceforge/qsheff/qsheff-II-2.1-r2.tar.gz
plesk:/usr/local/src# wget http://www.pldaniels.com/ripmime/ripmime-1.4.0.7.tar.gz
plesk:/usr/local/src# tar zxvf qsheff-II-2.1-r2.tar.gz
plesk:/usr/local/src# tar zxvf ripmime-1.4.0.7.tar.gz[/code]
Building and installing ripmime is straightforward:
[code]plesk:/usr/local/src# cd ripmime-1.4.0.7
plesk:/usr/local/src/ripmime-1.4.0.7# make
plesk:/usr/local/src/ripmime-1.4.0.7# make install[/code]
Ripmime will now be installed in /usr/local/bin; an appropriate place, and right where
qsheff expects it.
creating symlink of ripmime to /usr/bin/
[code]ln -s /usr/local/bin/ripmime /usr/bin/ripmime[/code]Now build and install qsheff:
[code]plesk:/usr/local/src# cd qsheff-II-2.1-r2
plesk:/usr/local/src/qsheff-II-2.1-r2# ./configure
plesk:/usr/local/src/qsheff-II-2.1-r2# make
plesk:/usr/local/src/qsheff-II-2.1-r2# /etc/init.d/qmail stop
plesk:/usr/local/src/qsheff-II-2.1-r2# make install[/code]
Now, before starting qmail, we have to fix the clamav path in the qsheff config file.
Edit qsheff.conf:
[code]mcedit /usr/local/etc/qsheff-II/qsheff.conf[/code] and change
[code]VIRUS_PROG = "/usr/local/bin/clamdscan --quiet"[/code]
to
[code]VIRUS_PROG = "/usr/bin/clamdscan --quiet"[/code]
You will probably want to change
[code]enable_blackhole = 0;[/code]
to
[code]enable_blackhole = 1;[/code]
as well.
Continue the installation:
[code]mv /var/qmail/bin/qmail-queue /var/qmail/bin/qmail-queue.bak
plesk:/usr/local/src/qsheff-II-2.1-r2# /usr/local/etc/qsheff-II/install-wrapper.sh
plesk:/usr/local/src/qsheff-II-2.1-r2# /etc/init.d/qmail start[/code]
And everything should be working!
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:14
Plesk Greylisting Control Panel
Für User die Greylisting mit Plesk einsetzen (Nach der Anleitung aus dem Serversupportforum) ein AddOn mit dem man das Greylisting Administrieren bzw. Überwachen kann.
- Anlegen von Whitelisten
- Kleine statistische Auswertung
- Freischalten bzw. Sperren von Hosts/IPs
- Aufräumen der Greylisting-Datenbank (Cronjob Simulation!)
- Leeren der Greylisting-Datenbank
Für den Download muss man sich auf der Seite von haggybear.de registrieren.
Quelle: http://haggybear.de
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:15
Sub & Domain Manager für Plesk
Erweitung für Plesk um Subdomains und Domains besser zu administrieren.
Domains:
- Ändern des Document Root Verzeichnis
- PHP Globals per Klick aktivier/deaktivierbar
- Anlegen von Domain - Aliasse (mehere Domains zeigen auf das gleiche DocRoot)
Subdomains:
- Ändern des Document Root Verzeichnis (auch innerhalb des Main httpdocs)
- Anlegen eines einfachen Forwards auf eine andere URL
- Anlegen eines Verzeichnisschutzes mit mehreren Usern
- Auswahl ob PHP5 mit aktiviert wird (wenn auf dem Server installiert)
- PHP Globals per Klick aktivier/deaktivierbar
Für den Download muss man sich auf der Seite von haggybear.de registrieren.
Quelle: http://haggybear.de
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:15
Greylisting mit Plesk 8.3 und Debian 4.0
Dieses Howto stammt von Brent Meshir Brent Meshier und Claus van Beek Claus van Beek und wurde von mir bezüglich Debian 4.0 angepasst.
Installation
Download: qmail-1.05_greylisting_plesk8.tar.gz
Zuerst muss man den Download des Tarballs starten. Danach kopiert man den Tarball mit FTP oder WinSCP auf den Server in "/usr/src/". Der Pfad kann aber auch "/root" oder anders lauten.
Die untenstehenden Pfade unterscheiden sich ein wenig von denen, die Brent angegeben hat, weil er wahrscheinlich kein SuSE 10.x verwendet hat.
Das Beispiel ist auch ausführlicher, als der BLOG-Eintrag von Brent, da auch noch die Ausgaben der Shell mit angezeigt werden. Außerdem gibt es an strategischen Punkten zusätzliche Überprüfungen, ob die Installation der einzelnen Teilschritte auch wirklich geklappt hat.
In den Pfad "/usr/src/" wechseln und den Tarball auspacken;
strato:~ # cd /usr/src
strato:/usr/src # tar xvfz qmail-1.05_greylisting_plesk8.tar.gz
qmail-1.05/
qmail-1.05/BLURB
qmail-1.05/BLURB2
qmail-1.05/BLURB3
(...)
qmail-1.05/qmail-smtpd.c.rej
qmail-1.05/qmail-spp.oDie Datei "local_scan.c" muss editiert werden, da auf keinen Fall die Default-Werte genommen werden dürfen.
strato:/usr/src # cd qmail-1.05
#bei Plesk 8 fehlt leider eine Datei:
strato:/usr/src # echo "-lssl -lcrypto" >ssl.lib
strato:/usr/src/qmail-1.05 # vi local_scan.c
---
#define MYSQLHOST "localhost"
#define MYSQLUSER "greylist"
#define MYSQLPASS "topSecret"
#define MYSQLDB "qmail"
#define BLOCK_EXPIRE 4 /* minutes until email is accepted */
#define RECORD_EXPIRE 1500 /* minutes until record expires */
#define RECORD_EXPIRE_GOOD 36 /* days until record expires after accepting email */
---
Da Greylisting mit der MySQL-Datenbank "qmail" und der Tabelle "relaytofrom" arbeitet, müssen ein paar Befehle im "MySQL Monitor" eingegeben werden (siehe Original von Brent). Wahlweise kann man auch einfach die mitgeliefert "qmail.sql" importieren (Idee: TJ). Die Login-Daten in der "qmail.sql" müssen an die "local_scan.c" angepasst werden.
strato:/usr/src/qmail-1.05 # vi qmail.sql
strato:/usr/src/qmail-1.05 # mysql -u admin -p < qmail.sql
Enter password:
strato:/usr/src/qmail-1.05 #Um zu überprüfen, ob Benutzer und Tabelle auch wirklich angelegt wurden, sollte man den MySQL-Monitor starten.
strato:/usr/src/qmail-1.05 # mysql -u admin -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8974 to server version: 4.1.13
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> USE mysql;
Database changed
mysql> SELECT User, Password FROM user WHERE User = 'greylist'
+-------------+-------------------------------------------+
| User | Password |
+-------------+-------------------------------------------+
| greylist | *930DAB011CE31AB33910A8A1F011CE98AA9D40FB |
+-------------+-------------------------------------------+
1 row in set (0.00 sec)
mysql> SHOW COLUMNS FROM qmail.relaytofrom;
+----------------+-----------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-----------------------+------+-----+---------------------+----------------+
| id | bigint(20) | | PRI | NULL | auto_increment |
| relay_ip | varchar(16) | YES | MUL | NULL | |
| mail_from | varchar(255) | YES | MUL | NULL | |
| rcpt_to | varchar(255) | YES | MUL | NULL | |
| block_expires | datetime | | | 0000-00-00 00:00:00 | |
| record_expires | datetime | | | 0000-00-00 00:00:00 | |
| blocked_count | bigint(20) | | | 0 | |
| passed_count | bigint(20) | | | 0 | |
| aborted_count | bigint(20) | | | 0 | |
| origin_type | enum('MANUAL','AUTO') | | | MANUAL | |
| create_time | datetime | | | 0000-00-00 00:00:00 | |
| last_update | timestamp | YES | | CURRENT_TIMESTAMP | |
+----------------+-----------------------+------+-----+---------------------+----------------+
12 rows in set (0.00 sec)
mysql> quit
Jetzt kann man noch das Logverhalten von Qmail etwas verbessern: Dazu bearbeiten wir die Datei qmail-smtpd.c und ergänzen nur die Fett gedruckten Zeilen an der entsprechenden Stelle:
qmail-smtpd.c
...
#include "wait.h"
#include "fd.h"
#include <syslog.h> /* huschi */
...
static void smtpauth_authenticate(void)
{
...
close(fds[1]);
wait_pid(&st, pid);
openlog("qmail-smtpd", 0, LOG_MAIL); /* huschi */
if (wait_exitcode(st) == 0) {
out("235 go ahead\r\n");
flush();
syslog(LOG_INFO, "smtp-auth[%i] ok for login: %s", getpid(), smtpauthlogin); /* huschi */
relayclient="";
authenticated=1;
return;
}
sleep(2);
out("535 auth failure\r\n");
flush();
syslog(LOG_DEBUG, "smtp-auth[%i] fail for login: %s", getpid(), smtpauthlogin); /* huschi */
return;
}
Mit tail -f /usr/local/psa/var/log/maillog | grep smtpd kann das ganze so aussehen:
Mar 1 17:07:04 h1083027 qmail-smtpd: smtp-auth[14650] ok for login: michi@webmasterhilfe.de
Mar 1 17:11:40 h1083027 qmail-smtpd: smtp-auth[21461] fail for login: webmaster@webmasterhilfe.de
Vielen Dank an Huschi @ http://huschi.net für diesen Tipp.
Unter Debian 4.0 sollte man unter /usr/lib das Verzeichniss mysql anlegen. per apt-get install libmysqlclient15-dev libssl-dev installieren.
Dann kopiert man alle libmysqlclient* Dateien von /usr/lib nach /usr/lib/mysql.
Jetzt muss man die Dateien mit "make" kompilieren. Dazu gibt es im neuen Paket eine "install.sh" die vorher prüft, ob alle benötigten RPMs (siehe "Voraussetzungen") installiert wurden. Der Befehl "rpm" steht auf vielen Linux-Distributionen zur Verfügung. Ich habe das Shell-Skript mit SuSE und Debian getestet. Sollte "install.sh" eine Fehlermeldung bringen, die nichts mit den fehlenden Paketen "openssl-devel" oder "mysql-devel" zu tun hat, dann kann man hier auch nur "make" eingeben (siehe Original von Brent).
strato:/usr/src/qmail-1.05 # ./install.sh
( cat warn-auto.sh; \
echo CC=\'´head -1 conf-cc´\' \
echo LD=\'´head -1 conf-ld´\' \
) > auto-ccld.sh
cat auto-ccld.sh make-load.sh > make-load
(...)
./load spfquery spf.o ip.o ipme.o ipalloc.o strsalloc.o \
now.o dns.o datetime.a stralloc.a alloc.a str.a substdio.a \
case.a error.a fs.a ´cat dns.lib´ ´cat socket.lib´
strato:/usr/src/qmail-1.05 # make
#############################################################
#### 'make' finished. Please check for critical errors! ####
#############################################################Um den "make" zu kontrollieren kann man den untenstehende Befehl eingeben. Der Befehl sollte die Zahl "85" zurückliefern.
strato:/usr/src/qmail-1.05 # ls -l | grep -cv '\..\{1,12\}$\|conf-\|make-\|Makefile\|warn-\|[[:upper:]].$'
85
Der "make" sollte eigentlich nur dann fehlschlagen, wenn wichtige Pakete fehlen. Deshalb müssen jetzt nur noch die neuen Dateien kopiert werden und die Dateirechte gesetzt werden.
strato:/usr/src/qmail-1.05 # /etc/rc.d/qmail stop
strato:/usr/src/qmail-1.05 # cp qmail-envelope-scanner /var/qmail/bin/.
strato:/usr/src/qmail-1.05 # cp qmail-smtpd /var/qmail/bin/.
strato:/usr/src/qmail-1.05 # chown root.qmail /var/qmail/bin/qmail-envelope-scanner
strato:/usr/src/qmail-1.05 # chown root.qmail /var/qmail/bin/qmail-smtpd
strato:/usr/src/qmail-1.05 # /etc/rc.d/qmail startDanach habe ich ein CATCH-ALL für meine Domain aktiviert und ein "tail" lieferte
tail -f /tmp/greylist_dbg.txt
--------
protocol = notneeded4qmail increase@blindsz.com
increase@blindsz.com -> cloidtd@clausvb.de (62.227.194.124) Doesn’t Exists Block
--------
protocol = notneeded4qmail Scott@blueskyimages.co.uk
Scott@blueskyimages.co.uk -> christo@clausvb.de (86.196.215.34) Doesn’t Exists Block
--------
protocol = notneeded4qmail logic-s.com@usedoffset.com
logic-s.com@usedoffset.com -> www@clausvb.de (200.120.143.210) Doesn't Exists Block
--------
protocol = notneeded4qmail erika_mustermann@yahoo.de
erika_mustermann@yahoo.de -> www@clausvb.de (217.146.177.35) Doesn't Exists Block
--------
protocol = notneeded4qmail erika_mustermann@yahoo.de
erika_mustermann@yahoo.de -> www@clausvb.de (217.146.177.35) Exists Accept id = 10 expire = 1
Cleanup-Perl-Skript von Brent Meshier
Um die Datenbank regelmäßig aufzuräumen sollte man ein PERL-Skript in der "/etc/cron.daily" plazieren, mit folgendem Inhalt:
#!/usr/bin/perl
use strict;
use warnings;
use constant DBD => 'DBI:mysql:qmail:localhost:3306'
use constant DBUSER => 'greylist'
use constant DBPASS => 'topSecret'
use DBI;
system("cat /dev/null > /tmp/greylist_dbg.txt");
my $dbh = DBI->connect(DBD, DBUSER, DBPASS)
or die "can't connect to db ", $DBI::errstr, ":$!";
$dbh->do("DELETE FROM relaytofrom
WHERE record_expires < NOW() - INTERVAL 1 HOUR
AND origin_type = 'AUTO'");
$dbh->do("OPTIMIZE TABLE relaytofrom");
$dbh->disconnect;
exit;
Die Passwörter müssen entsprechend angepasst werden. Das oben gepostete Skript wurde von Gerard Earley in einigen Punkten überarbeitet.
Verfasser: Michael Stender
Letzte Änderung: 2008-03-01 20:51
qsheff, Clamav Virrenscanner, Plesk 8.2
http://www.enderunix.org/qsheff/
# wget http://www.enderunix.org/qsheff/qsheff-II-2.1.tar.gz
# tar -zxf qsheff-II-2.1.tar.gz
# cd qsheff-II-2.1
Clamav:
Install the Debian packages clamav, clamav-daemon and clamav-freshclam libclamav-dev
plesk:~# apt-get install clamav clamav-daemon clamav-freshclam libclamav-dev
Download and extract qsheff and ripmime tar balls.
plesk:~# cd /usr/local/src/
plesk:/usr/local/src# wget http://www.enderunix.org/qsheff/qsheff-II-2.1.tar.gz
plesk:/usr/local/src# wget http://www.pldaniels.com/ripmime/ripmime-1.4.0.5.tar.gz
plesk:/usr/local/src# tar zxvf qsheff-1.0-r4.tar.gz
plesk:/usr/local/src# tar zxvf ripmime-1.4.0.5.tar.gz
Building and installing ripmime is straightforward:
plesk:/usr/local/src# cd ripmime-1.4.0.5
plesk:/usr/local/src/ripmime-1.4.0.5# make
plesk:/usr/local/src/ripmime-1.4.0.5# make install
Ripmime will now be installed in /usr/local/bin; an appropriate place, and right where
qsheff expects it.
To see installing options:
# ./configure --help
--enable-debug Enable debug messages
--disable-local-users Disable the filters for local users
--enable-syslog Enable syslog messages
--enable-backup Enable backup
--enable-spam-tag Enable Spam Tagging
--enable-virus-tag Enable virus tagging
--enable-custom-error Enable the custom error patch
--enable-qq-patch Enable qmailqueue patch
--with-max-bodyline Maximum number of lines to filter, default=40
--with-maxfiles Maximum numbers of files in a dir.
--with-qmailgroup Define qmail group, default=qmail
--with-qmaildir Define qmail directory, default=/var/qmail
--with-clamav Enable ClamAv
--with-clamd-socket Path to clamd socket, default=/tmp/clamd
--with-custom-prog Enable User Defined Program, check qsheff.conf
You can you any of these options.
A typical installation should be like this:
# ./configure --disable-local-users --with-clamav \
--with-clamd-socket=/var/run/clamav/clamd
./configure \
--enable-debug \
--with-clamav \
--with-clamd-socket=/var/run/clamav/clamd.ctl \
--enable-syslog \
--enable-backup \
--enable-spam-tag \
--enable-virus-tag
./configure --enable-debug --with-clamav --with-clamd-socket=/var/run/clamav/clamd.ctl --enable-syslog --enable-backup --enable-spam-tag --enable-virus-tag
Options are described below. Installing should continue like this:
# make && make install
# /usr/local/etc/qsheff-II/install-wrapper.sh
After installing, /var/qmail/bin folder shoul be seen like:
-r-s--x--x 1 root qmail 36766 17 May 16:57 qmail-qsheff
lrwxr-xr-x 1 root qmail 27 16 May 15:28 qmail-queue -> qmail-qsheff
-r-s--x--x 1 qmailq qmail 12396 2 May 15:43 qmail-queue.orig
Options:
--enable-debug Enable debug messages
Used for printing debugging information to screen in case of any problem
--disable-local-users Disable the filters for local users
qSheff filters local users by default. Bu small corporations does not
need this. This option deactivates this feature.
--enable-syslog Enable syslog messages
Logging information is sent both to qsheff.log and to syslog. With this
option, logs can be stored in a remote syslog server.
--enable-backup Enable backup
Enables logging all incoming/outgoing e-mail traffic
--enable-spam-tag Enable Spam Tagging
Instead of rejecting spammed e-mails, qSheff tags subject and delivers
e-mail to user. Users can store these e-mails in a seperate folder by
writing their own rules in client side.
--enable-virus-tag Enable virus tagging
Infected e-mail is delivered to user after replacing content with a
warning text about the virus. This message is predefined as VIRI_CENSOED
in src/main.h. custom_sign in qsheff.conf is appended to this message
automatically.
--enable-custom-error Enable the custom error patch
By default, qmail responds to users with "permanently error" in the case
of spam or virus. Usually this response does not have much information.
Bu option enables custom-error patch. But qmail should be patched with
this patch before. Predefined messages are in src/main.h like DEFAULTMSG,
SPAMMSG and VIRUSMSG. Messages are tagged with "SPAM" keyword or name of
the virus automatically.
--enable-qq-patch Enable qmailqueue patch
Enables qmail-queue patch. This patch should be applied before. More infor-
mation is described in Chapter 3 WORKING PRINCIPLES. With this option,
qSheff is triggered through QMAILQUEUE environment variable, not symbolic
link. This environment variable usually assigned in /etc/tcp.smtp
--with-max-bodyline Maximum number of lines to filter, default=40
Limits maximum number of lines in an e-mail to filter. Predefined value is
40. This option is a countermeasure for DOS attacks which can be caused by
sending very large e-mails. Spam words usually appear in first 10 lines.
It's not needed to scan all of the body.
--with-maxfiles Maximum numbers of files in a dir.
if --enable-backup is activated, qSheff logs all e-mail traffic. Every OS
has limit for number of file entries in a folder. If this option is defined,
qSheff will switch to next folder afterwards. qSheff assumes 32000 by default.
--with-qmailgroup Define qmail group, default=qmail
if qmail is installed with a group id other than "qmail", should be specified
here
--with-qmaildir Define qmail directory, default=/var/qmail
If qmail is installed other than /var/qmail, should be specified here.
--with-clamav Enable ClamAv
Activates ClamAv antivirus software. If ClamAv is installed to nonstandart
folder like /opt/clamav, this folder should be specifed here. Otherwise,
ClamAv library functions will fail during make.
--with-clamd-socket Path to clamd socket, default=/tmp/clamd
qSheff connects to ClamAv daemon directly throug UNIX socket. Path to socket
should be specified here if different than /tmp/clamd. Another solution is
changing LocalSocket variable to "/tmp/clamd" from clamd.conf
--with-custom-prog Enable User Defined Program, check
User can make qSheff run any program or script. 3rd party software, anti-
virus programs or your own scripts can be run this way. Full path to
program/script and parameters is given as parameter. Internal variables
can be passed to custom program like %%mailfrom%%, %%mailto%%, %%remoteip%%,
%%msgfile%% ve %%tempdir%%. This parameters or path to program can be
changed within qsheff.conf later.
6. CONFIGURATION
qSheff configuration files are placed in etc/qsheff-II under install directory
qsheff.conf:
QSHEFFDIR: qSheff folder. Contaions backup, quarantine, spool and tmp folders.
LOGFILE: Specifies the file which qSheff will write logs to.
RIPMIME: Specifies full path to ripmime binary. Automatically detected and
written by qSheff in configure process.
debug_level: Logging level. Default value is 99 and logs everything. If you
set 14, then HEADER debugging informations will not be logged.
0 ERR
2 QUEUE
3 VIRUS
5 CUSTOM
11 SPAM
13 ATTACH
15 HEADER
enable_blackhole: If set to 1, no response will be sent to sender of the mail
in case of error, spam or virus
paronia_level: Not yet implemented
drop_empty_from: If set to 1, qSheff rejects mails without a "From:" header.
enable_quarantine: If set to 1, spam or infected mails are quarantined.
enable_ignore_list: If set to 1, does not filter the mail addresses and ip
addresses in ignore list
enable_header_filter: If set to 1, header filter is activated
enable_body_filter: If set to 1, body filter is activated
enable_attach_filter: If set to 1, attachment filter is activated
enable_clamd: If set to 1, ClamAv virus checking is activated
enable_custom_prog: If set to 1, running custom program is activated.
CUSTOM_PROG: Spesifies the full path and parameters of custom program.
CUSTOM_RET_MIN: The minimum return value of custom program in case of a match
CUSTOM_RET_MAX: The maximum return value of custom program in case of a match
For example a custom prog which returns 5 for virus and returns 9 for spam
can be set with 5 as CUSTOM_RET_MIN and 9 as CUSTOM_RET_MAX
CUSTOM_RET_ERR: Value which custom program returns in case of error.
custom_sign: When virus tagging is enabled, this message is appended to the
warning mail. Can be company logo/signature. This message is also contaions
the information message which will be sent to user when "custom error" patch
is applied.
qsheff.attach: The list which attachment filter looks for matching
qsheff.ignore: The list of e-mail and ip addresses which will not be filtered
Regular expressions can be written. qSheff will try to match expressions
with remote side IP and sender email address.
qsheff.rules: Contains qSheff spesific rules. Rules beginning with "h" are
header rules. Rules in the same line like (rule1)(rule2) are operated with
logic AND and rules in different lines are operated with logic OR.
7. USAGE
After installing qSheff, log file should be examined in order to be sure that
everything is fine.
# tail -f /var/log/qsheff.log
04/05/2006 19:12:39: [qSheff] SPAM, queue=q1146759159-792935-50066, relayfrom=
88.247.172.183, from=´simsek@enderunix.org', to=´simsek@acikakademi.com', subj
=´viagra', size=575, spam=´Subject: viagra', rule=´(Subject:)([vV]iagra)'
17/05/2006 16:59:50: [qSheff] VIRUS, queue=q1147899588-883933-43385, recvfrom=
83.26.32.122, from=´olago@neostrada.pl', to=´biwi@turx.com', subj=´Re: Merry
Christmas!', size=19082, virus=´Worm.Zafi.D',
17/05/2006 17:03:39: [qSheff] HEADER, queue=q1147899819-136265-43522, recvfrom=
84.50.27.182, from=´', to=´', subj=´', size=0,,
If filtering local users is deactivated, attempts from server will not be logged
in log file.
If drop_empty_from=1 is set, attempts without "From:" line will be rejected and
logged with HEADER tag.
If there is an error after qSheff delivers mail to qmail-queue, qmail-queue's
exit value will be logged as exitcode.
17/05/2006 16:24:51: [qSheff] QUEUE, queue=q1147897465-631231-42376, recvfrom=
83.17.118.150, from=´edhzovsc@queretaro.com', to=´alii@linuxxproggramlama.com',
subj=´Fw[36]: Hi !..', size=10240, error=´', exitcode=54
Verfasser: Michael Stender
Letzte Änderung: 2009-03-19 04:37
Plesk Admin Server neustarten
/opt/psa/admin/bin/httpsdctl restart
/opt/psa/admin/bin/websrvmng -a
/etc/init.d/psa stop
/etc/init.d/psa start
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:18
Plesk-Login entsperren
Ich habe mehrmals ein falsches Admin-Passwort eingegeben und der Login wurde gesperrt. Wie kann ich den Plesk-Login entsperren?
Wenn Sie beim Plesk-Login mehrmals ein falsches Passwort eingeben, wird der Login aus Sicherheitsgründen automatisch gesperrt.
Um die Sperre aufzuheben, loggen Sie sich per SSH auf dem Server ein und geben Sie auf der Konsole folgenden Befehl ein:
mysql -uadmin -p´cat /etc/psa/.psa.shadow´ psa -e "delete from lockout"
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:19
Plesk MAPS Spamschutz Listen
relays.mail-abuse.org;vrbl.xtreme-host.com;http.dnsbl.sorbs.net;misc.dnsbl.sorbs.net
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:20
Plesk httpd Zusatz
bei Confixx3 gab es ja immer so ein nützliches Feature namens "httpd Zusatz". Da konnte ich für die einzelnen Domains den Safe Mode ausschalten oder Register_globals off stellen. Gibt es über Plesk auch die Möglichkeit, httpd Zusatzeinstellungen vorzunehmen, und wenn nicht, wie mache ich dies dann?
Hallo,
man kann im conf Verzeichnis der Domain eine vhost.conf anlegen, und dort diese Spezialeinträge ablegen.
/opt/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=meine-web-seite.de
Wenn man für mehrere Domains die vhosts.conf angelegt hat, bietet sich dieser Befehl an um die änderungen für alle Domains zu übernehmen:
/opt/psa/admin/sbin/websrvmng -a -v
Verfasser: Michael Stender
Letzte Änderung: 2008-12-21 07:14
Plesk-Passwort verloren
Ich habe mein Plesk-Passwort verloren. Was kann ich tun?
Loggen Sie sich als root per SSH auf dem Server ein.
Mit dem Befehl "cat/etc/psa/.psa.shadow" können Sie sich das aktuelle Plesk-Admin-Passwort anzeigen lassen.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:24
Plesk Session safe_path nicht beschreibbar bei Joomla installation
In der /etc/php4/apache2/php.ini : session.save_path = /var/lib/php4 auf
session.save_path = /tmp ändern.
Unbedigt darauf achten, das der save_mode in Plesk für die Domain deaktiviert ist.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-17 23:43
Plesk Qsheff Watch
Erweiterung für Plesk für User die Qsheff einsetzen.
Auslesen des qsheff.log und Anzeige der Verarbeitung.
Ansicht aller in der Queue durchgelaufenen Mails, oder nur die
für die entsprechende Domain.
Tagging ob die Mail SPAM war oder einen Virus enthielt.
Anzeige ob der SMTP als Relay genutzt wird.
Für den Download muss man sich auf der Seite von haggybear.de registrieren.
Quelle: http://haggybear.de
Verfasser: Michael Stender
Letzte Änderung: 2007-09-22 16:59
Plesk Sicherheitlücke (SQL Injection)
SYMPTOMS
SQL injection vulnerability within Plesk for Linux/Unix.
RESOLUTION
Please download the following file:
For Plesk v8.0.0 and v8.0.1 :
http://download1.swsoft.com/Plesk/Hotfix/PleskUnix/8.0.1/114298/class.Session.php
MD5 (class.Session.php) = 4d917ed483cbf030fb122a1e214b2bbf
For Plesk v8.1.0 :
http://download1.swsoft.com/Plesk/Hotfix/PleskUnix/8.1.0/114298/class.Session.php
MD5 (class.Session.php) = 4de3b2fc50011d27fb13e5a293720100
For Plesk 8.2.0 :
http://download1.swsoft.com/Plesk/Hotfix/PleskUnix/8.2.0/114298/class.Session.php
MD5 (class.Session.php) = 5b7a8071374aa94b83697aec72d1d556
and replace /usr/local/psa/admin/plib/class.Session.php file on Plesk server with the downloaded new one. Make sure that md5sum is correct after file is replaced, for example:
# wget http://download1.swsoft.com/Plesk/Hotfix/PleskUnix/8.2.0/114298/class.Session.php
# md5sum ./class.Session.php
MD5 (./class.Session.php) = 5b7a8071374aa94b83697aec72d1d556
# cp /usr/local/psa/admin/plib/class.Session.php /usr/local/psa/admin/plib/class.Session.php.old
# cp ./class.Session.php /usr/local/psa/admin/plib/class.Session.php
# chgrp psaadm /usr/local/psa/admin/plib/class.Session.php
# /usr/local/psa/admin/bin/httpsdctl restart
Plesk versions 7.5.4 and 8.1.1 are not affected by this vulnerability.
Quelle: http://kb.swsoft.com/en/2169
Verfasser: Michael Stender
Letzte Änderung: 2007-09-22 17:59
Plesk 8.3 watchdog meldet Spamassassin ist down
Plesk for Linux/UNIX:
Einige von euch werden das Problem mit der Plesk 8.3 watchdog Überwachung kennen.
Watchdog meldet das der Spamassassin Dienst down ist, was aber nicht stimmt. Das Problem gibt es schon seit Plesk 8.2 und wurde noch nicht gefixt.
Hier gibt es die fehlerbereinigte wdlib.php:
ftp://download1.parallels.com/Plesk/Autoupdate/Unix/8.3.0/134608/wdlib.php
Die Datei einfach per wget in das Verzeichniss /opt/psa/admin/plib/modules/watchdog/ (Debian) runterladen.
Originale wdlib.php natürlich vorher umbenennen.
Offiziell wird der Bug in Plesk 8.4 gefixt.
Verfasser: Michael Stender
Letzte Änderung: 2008-04-12 12:22
Horde unter Debian auf deutsch
dpkg-reconfigure locales
de_DE.ISO-8859-15@euro einstellen.
In der /etc/psa-horde/horde/nls.php unter $nls['defaults']['language'] = 'de_DE' einstellen.
Nun sollte Horde in deutsch angezeigt werden.
Falls das immer noch nicht der Fall ist, einfach unter /etc/php4/cli/php.ini den save_mode=off einstellen.
Verfasser: Michael Stender
Letzte Änderung: 2008-07-09 01:12
Plesk php5 und eigener php.ini für jede Domain
Diese Howto stammt vom User Neutron aus dem Serversupportforum. http://serversupportforum.de/forum/faqs-anleitungen/18353-howto-debian-plesk-php4-5-cgi-mit-php-ini-pro-domain.html
Dieses Howto ist inspiriert von dem original Howto von "server4downs" welches hier http://serversupportforum.de/forum/faqs-anleitungen/4766-howto-php4-php5-als-cgi-gepatcht-deutsches-howto.html zu finden ist.
Man kann sagen das ist die Methode für faule bzw. Leute die nicht groß am System fummeln wollen.
1. Ins Plesk Control Panel gehen auf den "Updater" und "SiteBuilder and Sitebuilder module for Plesk" herunterladen.
Hintergrund: Dieser installiert das Plesk eigene php5-cgi binary mit.
2. suexec neu kompilieren wie in http://www.serversupportforum.de/forum/faqs-anleitungen/2602-mini-howto-suexec-neukompilieren.html
beschrieben, allerdings mit den Anpassungen suexec.h:
Code:
#ifndef AP_HTTPD_USER#define AP_HTTPD_USER "www-data"#endif
Code:
#ifndef AP_LOG_EXEC#define AP_LOG_EXEC "/var/log/apache2/suexec.log" /* Need me? */#endif
Code:
#ifndef AP_DOC_ROOT#define AP_DOC_ROOT "/var/www/vhosts"#endif
besonders die letzte Änderung hier bewirkt das wir hinterher das php Binary im Pfad der jeweiligen Domain "/var/www/vhosts/domain.tld/bin" ausführen können ohne dass das File dem FTP-Benutzer gehören muss und wir trotzdem immernoch eine eigene "php.ini" pro Domain verwenden können.
Änderungen an der suexec.c (von Freel@ncer14):
Code:
/* * Error out if the target name/group is different from * the name/group of the cwd or the program. */ if ((uid != dir_info.st_uid) || (gid != dir_info.st_gid) || (uid != prg_info.st_uid) || (gid != prg_info.st_gid)) { log_err("target uid/gid (%ld/%ld) mismatch " "with directory (%ld/%ld) or program (%ld/%ld)\n", uid, gid, dir_info.st_uid, dir_info.st_gid, prg_info.st_uid, prg_info.st_gid); exit(120); }
ändern in:
Code:
/* * Error out if the target name/group is different from * the name/group of the cwd or the program. *//* Disabled if ((uid != dir_info.st_uid) || (gid != dir_info.st_gid) || (uid != prg_info.st_uid) || (gid != prg_info.st_gid)) { log_err("target uid/gid (%ld/%ld) mismatch " "with directory (%ld/%ld) or program (%ld/%ld)\n", uid, gid, dir_info.st_uid, dir_info.st_gid, prg_info.st_uid, prg_info.st_gid); exit(120); }*/
Die nun neu kompilierte suexec in den entsprechenden Pfad kopieren und ein chmod 4755 darauf ausführen.
Den Pfad wo der Apache die suexec erwartet kann man mit "apache2 -V" erfahren.
3. Unter "/var/www/vhosts/domain.tld/conf/" oder "/var/www/vhosts/domain.tld/subdomain/name/conf" (falls Subdomain) eine vhost.conf mit folgendem Inhalt anlegen:
Zitat:
ScriptAlias /php5-cgi-custom /var/www/vhosts/domain.tld/bin
Action application/x-httpd-php5-custom "/php5-cgi-custom/php5"
AddType application/x-httpd-php5-custom .php |
Wobei "domain.tld" natürlich zu ersetzen ist mit euren Daten. Ich habe mir wie man oben sieht unter "/var/www/vhosts/domain.tld/bin" die php5 binary abgelegt.
Das php5 binary was Ihr braucht befindet sich in "opt/php52/bin" und heißt "php5-cgi". Nach obigem Beispiel der vhost.conf also:
Zitat:
cp /opt/php52/bin/php5-cgi /var/www/vhosts/domain/bin/php5
cd /var/www/vhosts/domain
chown -R root.root bin/
chmod 755 bin/ |
Wer noch eine php.ini Datei "pro User" verwenden möchte, kopiert in den gleichen Pfad noch die entsprechende php.ini:
Zitat:
cp /opt/php52/etc/php5/cgi/php.ini /var/www/vhosts/domain/bin
cd /var/www/vhosts/domain/bin
chown root.root php.ini
chmod 644 php.ini |
Damit das ganze nun greift, wie üblich bei Plesk einmal:
Zitat:
/opt/psa/admin/sbin/websrvmng -a -v |
ausführen und die vhost.conf wird für die jeweilige Domain mit verwendet.
Die entsprechende php.ini für die CGI Version findet man unter "/opt/php52/etc/php5/cgi/" und kann diese gemäß seinen Vorstellungen anpassen.
Im Control Panel von Plesk sollte man schließlich noch php und cgi für die Domain aktivieren und schon läuft das ganze und zwar einfach ohne weiter etwas machen zu müssen, weder braucht man suexec noch php5 selbst kompilieren. Um das ganze wieder loszuwerden, also die Domain wieder unter php4 als mod laufen zu lassen einfach das jeweilige vhost.conf file löschen und nochmal
Zitat:
/opt/psa/admin/sbin/websrvmng -a -v |
ausführen.
Wer möchte kann natürlich auch in dem vhost.conf file einfach die Zeile
Zitat:
AddType application/x-httpd-php5-custom .php |
in
Zitat:
AddType application/x-httpd-php5-custom .php5 |
ändern und hat so den Effekt das alle php Dateien die mit .php5 enden mit der CGI Version ausgeführt werden, der rest mit php4 als mod.
Natürlich wird aufgrund der bereits vorhandenen SuExexUserGroup Direktive die Plesk ja anlegt (/var/www/vhosts/domain/conf/httpd.include) alles brav als der jeweils richtige Benutzer ausgeführt.
Im Endeffekt haben wir das gleiche was "server4downs" mit seinem Patch gemacht hat, allerdings wie ich finde auf einen etwas schnelleren weg, außerdem angepasst an Plesk ohne viel Aufwand. Zusätzlich können wir noch pro Domain eine php.ini benutzen (optional) was mit seiner Methode nicht möglich war, wobei das natürlich sicherlich realisierbar ist.
Im Anhang hier noch die angepasste suexec.h und suexec.c
http://faq.webmasterhilfe.de/attachments/suexec.tar.gz
Verfasser: Michael Stender
Letzte Änderung: 2008-12-22 01:19
Plesk IndexDirectory auf Debian 4.0
Standardmäßig wird beim Aufruf einer Domain die index.html aufgerufen. Manchmal ist es erwünscht die Reihenfolge der Index Seiten Global zu ändern.
Leider gibt es in Plesk mehrere einstellungen, die man in diesem Fall ändern muss. Ich bevorzuge die index.php, falls vorhanden.
/etc/apache2/mods-enabled/dir.conf:
<IfModule mod_dir.c>
DirectoryIndex at_domains_index.html index.php index.html index.cgi index.pl index.xhtml index.shtml index.cfm index.htm
</IfModule>
In der /etc/apache2/apache2.conf gibt es ebenfalls diese einstellung. Dies sollte man ebenfalls ändern, falls die obige Änderung nicht greift.
Verfasser: Michael Stender
Letzte Änderung: 2009-03-07 19:53
Plesk Mailaccount reparieren
http://kb.parallels.com/en/944
# /usr/local/psa/admin/sbin/mchk --helpSynopsis:mchk [OPTION]--without-spam - restore all settings except for SpamAssassin configuration--with-spam - restore all settings--spam-only - restore only SpamAssassin settings
# /usr/local/psa/admin/sbin/mchk --with-spam
Verfasser: Michael Stender
Letzte Änderung: 2009-03-07 19:49
Spamdyke installieren auf Plesk 10/Debian 6.0 Server incl. Spamdyke Control Panel
http://www.spamdyke.org/.
Installation:
Zuerst besorgen wir uns die gepatchte Spamdyke Version mit mysql Unterstützung von haggybear.de. Wer sich dort noch nicht registriert hat, der meldet sich dort zuerst an.
Nach der Registrierung laden wir uns das Spamdyke Control Panel 2.6 herunter.
cd /usr/local/src
wget http://www.haggybear.de/download/spamdyke-mysql.tgz
tar -xzf spamdyke-mysql.tgz
In den Faq finden wir den geänderten wrapper, den wir für Plesk 10 ebenfalls benötigen:
wget http://www.haggybear.de/download/wrapper/psa9/scp2.zip
Unter Debian 6.0 benötigen wir noch ein paar Libs und einen Compiler:
aptitude install gcc libssl-dev libmysqlclient-dev
Danach kann spamdyke kompiliert und nach /usr/local/bin installiert werden.
cd /usr/src/spamdyke-mysql/spamdyke
./configure
Diese beiden Ausgaben müssen unbedingt nach dem ./configure angezeigt werden:
checking for MySQL (for MySQL-Logging support)... yes
checking for MySQL includes (for MySQL-Logging support)...yes
make
make install
Jetzt werden wir noch einige Hilfsprogramme Compilieren. Diese Programme werden aber für das CP nicht benötigt.
cd /usr/src/spamdyke-mysql/utils
./configure && make
cp dnsa dnsany dnsany_libc dnsmx dnsns dnsptr dnssoa dnstxt domain2path domainsplit /usr/local/bin
Konfiguration
Zunächst wird spamdyke nun mit einer sinnvollen Konfiguration versorgt.
Dazu wird eine Datei namens /etc/spamdyke.conf mit folgendem Inhalt angelegt:
touch /etc/spamdyke.conf
#für Spamdyke:
log-level=info
config-mysql-database=spamdyke
config-mysql-username=spamdyke
config-mysql-password=spamdyke
local-domains-file=/var/qmail/control/rcpthosts
tls-certificate-file=/var/qmail/control/servercert.pem
smtp-auth-command=/var/qmail/bin/smtp_auth /var/qmail/bin/true /var/qmail/bin/cmd5checkpw /bin/true
smtp-auth-level=ondemand-encrypted
idle-timeout-secs=100
connection-timeout-secs=720
graylist-level=always-create-dir
graylist-dir=/var/qmail/spamdyke/greylist
graylist-min-secs=300
graylist-max-secs=1814400
sender-blacklist-file=/var/qmail/spamdyke/blacklist_senders
header-blacklist-file=/var/qmail/spamdyke/blacklist_headers
recipient-blacklist-file=/var/qmail/spamdyke/blacklist_recipients
ip-in-rdns-keyword-blacklist-file=/var/qmail/spamdyke/blacklist_keywords
ip-blacklist-file=/var/qmail/spamdyke/blacklist_ip
rdns-whitelist-file=/var/qmail/spamdyke/whitelist_rdns
ip-whitelist-file=/var/qmail/spamdyke/whitelist_ip
recipient-whitelist-file=/var/qmail/spamdyke/whitelist_recipient
sender-whitelist-file=/var/qmail/spamdyke/whitelist_sender
ip-in-rdns-keyword-whitelist-file=/var/qmail/spamdyke/whitelist_ip-in-rdns-keyword
greeting-delay-secs=5
dns-blacklist-entry=ix.dnsbl.manitu.net
dns-blacklist-entry=zen.spamhaus.org
dns-blacklist-entry=list.dsbl.org
dns-blacklist-entry=zombie.dnsbl.sorbs.net
dns-blacklist-entry=dul.dnsbl.sorbs.net
dns-blacklist-entry=bogons.cymru.com
reject-missing-sender-mx
reject-empty-rdns
reject-unresolvable-rdns
reject-ip-in-cc-rdns
Zusätzlich müssen einige Verzeichnisse und Dateien angelegt werden, auf die spamdyke zurückgreift.
Code: Alles auswählen
mkdir -p /var/qmail/spamdyke/greylist
touch /var/qmail/spamdyke/blacklist_ip /var/qmail/spamdyke/blacklist_recipients \
/var/qmail/spamdyke/whitelist_ip /var/qmail/spamdyke/blacklist_keywords \
/var/qmail/spamdyke/whitelist_recipient /var/qmail/spamdyke/whitelist_sender \
/var/qmail/spamdyke/whitelist_ip-in-rdns-keyword \
/var/qmail/spamdyke/blacklist_senders /var/qmail/spamdyke/whitelist_rdns \
/var/qmail/spamdyke/blacklist_headers
chown -R qmaild:qmail /var/qmail/spamdyke
Im letzten Schritt muss die Einbindung von qmail über den xinetd bearbeitet werden, so dass spamdyke vor qmail-smtpd ausgeführt wird.
Dazu werden die Dateien /etc/xinetd.d/smtp_psa und /etc/xinetd.d/smtps_psa bearbeitet:
Code: Alles auswählen
# /etc/xinetd.d/smtp_psa
service smtp
{
socket_type = stream
protocol = tcp
wait = no
disable = no
user = root
instances = UNLIMITED
env = SMTPAUTH=1 POPLOCK_TIME=20
server = /var/qmail/bin/tcp-env
server_args = -Rt0 /var/qmail/bin/relaylock /usr/local/bin/spamdyke -f /etc/spamdyke.conf /var/qmail/bin/qmail-smtpd /var/qmail/bin/smtp_auth /var/qmail/bin/true /var/qmail/bin/cmd5checkpw /var/qmail/bin/true
}
Code: Alles auswählen
# /etc/xinetd.d/smtps_psa
service smtps
{
socket_type = stream
protocol = tcp
wait = no
disable = no
user = root
instances = UNLIMITED
env = SMTPAUTH=1 POPLOCK_TIME=20
server = /var/qmail/bin/tcp-env
server_args = -Rt0 /var/qmail/bin/relaylock /usr/local/bin/spamdyke -f /etc/spamdyke.conf /var/qmail/bin/qmail-smtpd /var/qmail/bin/smtp_auth /var/qmail/bin/true /var/qmail/bin/cmd5checkpw /var/qmail/bin/true
}
Nach der Änderung muss der xinetd mit dem Kommando /etc/init.d/xinetd restart neugestartet werden. Weitere Schritte sind nicht notwendig.
Vor der Inbetriebnahme sollte aber auf jeden Fall überprüft werden, ob die in der Konfigurationsdatei /etc/spamdyke.conf
vorgenommenen Einträge für den jeweiligen Server sinnvoll sind. Insbesondere die eingetragenen DNSBL sollten überprüft werden.
Wenn deren Nutzung nicht gewünscht ist, müssen die entsprechenden Einträge entfernt oder auskommentiert werden.
Datenbank mit phpmyadmin anlegen:
CREATE TABLE ´spamdyke_log_table´ (
´id´ bigint(7) NOT NULL auto_increment,
´time´ timestamp NOT NULL default CURRENT_TIMESTAMP,
´reason´ varchar(20) character set utf8 NOT NULL,
´from´ varchar(50) character set utf8 NOT NULL,
´to´ varchar(50) character set utf8 NOT NULL,
´ip´ varchar(15) character set utf8 NOT NULL,
´rdns´ varchar(50) character set utf8 NOT NULL,
´auth´ varchar(25) character set utf8 NOT NULL,
PRIMARY KEY (´id´),
KEY ´time´ (´time´),
KEY ´reason´ (´reason´,´from´,´to´,´ip´,´rdns´)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Wartung des Datenbestands (Greylisting)
spamdyke verwaltet die Einträge für das Greylisting nicht selbst. Aufräumarbeiten müssen also periodisch durch einen Cronjob erledigt werden.
Dazu kopieren wir das Script einfach in das richtige Verzeichniss:
cd..
cp -p ./cron/spamdyke-mysql-cleanup /etc/cron.daily/.
Das Script im Editor öffnen und anpassen:
use constant DBD => 'DBI:mysql:spamdyke:localhost:3306';
use constant DBUSER => 'spamdyke';
use constant DBPASS => 'spamdyke';
Nun müssen wir den Wrapper vom Spamdyke Control Panel noch austauschen. Die zip Datei in das spamdyke Verzeichniss entpacken.
Wer keine tägliche Email erhalten möchte, schreibt zusätzlich ein exit; nach dem disconnect:
$dbh->disconnect;
exit;
Plesk9 Wrapper:
gcc wrapper.c -o wrapper
strip wrapper
Nachdem das erledigt ist, tue folgendes:
chmod 4755 wrapper
chown root.root wrapper
Bei Debian 6.0 wird nach der Installation eine Fehlermeldung angezeigt. Spamdyke wurde nicht installiert oder die /etc/spamdyke.conf wurde nicht gefunden. Kontrolliere unter /bin/sh den Symbolischen Link. Dieser sollte nicht auf /bin/dash sondern auf /bin/bash verlinkt sein.
Führe folgendes Komando aus:
ln -sf /bin/bash /bin/sh
Weiterführende Informationen
http://www.spamdyke.org/documentation/README.html
http://www.spamdyke.org/documentation/FAQ.html
Verfasser: Michael Stender
Letzte Änderung: 2012-03-09 04:49
Viele E-Mail-Nachrichten werden von PHP-Skripten auf dem Server gesendet. Wie kann ich herausfinden, auf welchen Domains diese Skripte ausgeführt werden?
Lösung
Es gibt eine Methode herauszufinden, aus welchem Ordner das PHP-Skript, das E-Mail sendet, ausgeführt wurde. Beachten Sie, dass die tatsächlichen Pfade sich abhängig von Ihrem Betriebssystem und Ihrer Plesk-Version geringfügig von den unten gezeigten unterscheiden können:
1) Erstellen Sie das Skript /var/qmail/bin/sendmail-wrapper mit folgendem Inhalt:
#!/bin/sh
(echo X-Additional-Header: $PWD ;cat) | tee -a /var/tmp/mail.send|/var/qmail/bin/sendmail-qmail "$@"
Beachten Sie, dass es einschließlich der Zeile '#!/bin/sh' zwei Zeilen sein müssen.
2) Erstellen Sie dann die Logdatei /var/tmp/mail.send und weisen Sie ihr die Rechte "a+rw" zu, machen Sie den Wrapper ausführbar, benennen Sie das alte Sendmail um und verknüpfen Sie es mit dem neuen Wrapper:
# touch /var/tmp/mail.send
# chmod a+rw /var/tmp/mail.send
# chmod a+x /var/qmail/bin/sendmail-wrapper
# mv /var/qmail/bin/sendmail /var/qmail/bin/sendmail-qmail
# ln -s /var/qmail/bin/sendmail-wrapper /var/qmail/bin/sendmail
3) Warten Sie ca. eine Stunde und setzen Sie Sendmail zurück:
# rm -f /var/qmail/bin/sendmail
# ln -s /var/qmail/bin/sendmail-qmail /var/qmail/bin/sendmail
Untersuchen Sie die Datei /var/tmp/mail.send. Sie sollte Zeilen enthalten, die mit "X-Additional-Header:" beginnen. Diese verweisen auf Domain-Ordner, in denen sich die Skripte, die die E-Mail gesendet haben, befinden.
Sie können alle Ordner, aus denen E-Mail-PHP-Skripte ausgeführt wurden, mit dem folgenden Befehl anzeigen:
# grep X-Additional /var/tmp/mail.send | grep ´cat /etc/psa/psa.conf | grep HTTPD_VHOSTS_D | sed -e 's/HTTPD_VHOSTS_D//' ´
Wenn Sie vom obigen Befehl keine Ausgabe erhalten, bedeutet dies, dass keine E-Mail mit der PHP mail()-Funktion aus dem Plesk-Verzeichnis mit virtuellen Hosts gesendet wurde.
Verfasser: Michael Stender
Letzte Änderung: 2009-03-23 23:33
Plesk SQL Injektion
Am 10.02.12 erhielten wir folgende E-Mail von Parallels:
Dear
Parallels Plesk Panel User:
Please read this message
in its entirety and take the recommended actions.
Parallels has been informed of a SQL injection security vulnerability in some
older versions of Plesk. This vulnerability is considered critical in nature
and customers are advised take action quickly.
A patch has been
released to resolve this vulnerability. Based on the version
and operating system of Plesk you use, please follow the instructions below.
Linux
Plesk 10 - Update to Plesk 10.3.1
MicroUpdate #6 or later.
Update Instructions: here
If possible, it is
recommended to update all the way to Plesk 10.4.4 to provide the most stable
user experience.
Plesk 9 - Update to Plesk 9.5.4 MicroUpdate #11 or later
Update Instructions: here
Plesk 8 - Update to Plesk 8.6.0 MicroUpdate #2 or later
Update Instructions: here
Windows
Plesk 10 - Update to Plesk 10.3.1
MicroUpdate #6 or later.
Update Instructions: here
If possible, it is
recommended to update all the way to Plesk 10.4.4 to provide the most stable
user experience.
Plesk 9 - Apply Fix from Parallels Knowledge Base
Update Instructions: here
Plesk 8 - Apply Fix from Parallels Knowledge Base
Update Instructions: here
If you are already at or above
the Version and MicroUpdate levels indicated above - you are already protected
from this vulnerability.
Parallels takes the security of our customers very seriously and urges you to
act quickly by applying these patches.
Thanks,
- The Parallels Plesk Panel Team
Leider wussten wir zu diesem Zeitpunkt noch nicht, das einer unserer Server bereits kompromitiert war.
Wer dieses Update noch nicht eingespielt hat, sollte dies umgehend nachholen. Leider heisst dies dann nicht, das der Server nicht bereits gehackt wurde. Jeder Admin sollte unbedingt die Logdateien genau durchsuchen, ob nicht bereits sämtliche Passwörter ausgelesen wurden.
Dies kann man wie folgt überprüfen:
Zuerst schaut man sich unter /usr/local/psa/admin/logs die httpsd_access_log an. Nicht nur die sondern auch die gepackten logs, da der Angriff schon vor Wochen stattgefunden haben kann.
Sucht nach dem Eintrag:
"POST /enterprise/control/agent.php HTTP/1.1" 200 185 "-"
"-"
Wenn ihr so etwas findet ist noch alles OK. Findet ihr aber so etwas:
"POST /enterprise/control/agent.php HTTP/1.1" 200 3775
"-" "-"
könnt ihr davon ausgehen, das der Angreifer alle eure Plesk Passwörter hat. Ist die Rot eingefärbte Zahl kleiner als 200 kb
Verfasser: Michael Stender
Letzte Änderung: 2012-02-29 21:01
Plesk 10.4.4 Fehler: es wurden keine neuen Konfigurationsdateien für den apache-webserver erstellt, da fehler in den konfiguration-templates vorhanden sind.
Fehler: Es wurden keine neuen Konfigurationsdateien
für den Apache-Webserver erstellt, da Fehler in den Konfiguration-Templates
vorhanden sind. Die detaillierte Fehlermeldung wurde Ihnen per E-Mail
zugesandt. Bitte überprüfen Sie Ihre E-Mails, beheben Sie die Fehler und
klicken Sie auf hier, um die Konfiguration erneut zu starten.
Lösung:
http://kb.parallels.com/en/112815
http://kb.parallels.com/en/112882
http://kb.parallels.com/en/111605
Verfasser: Michael Stender
Letzte Änderung: 2012-03-12 23:44
Drweb cron Emails abschalten
Leider gibt es in Drweb einen kleinen Bug und man erhällt bei jedem Virendatenbank update eine Fehlermeldung per Email. Dies kann man wie folgt in der drweb.ini deaktivieren:
/etc/drweb/drweb32.ini
suchen nach
CronSummary = Yes
und ändern in
CronSummary = No
danach den Drweb Daemon neu starten
/etc/init.d/drwebd restart
und schon hören die nervigen Emails auf.
Verfasser: Michael Stender
Letzte Änderung: 2012-03-30 08:35
Plesk 11 Admin Passwort ändern
Hier eine Anleitung, wie man das Plesk 11 Passwort für den Admin Zugang per Komandozeile ändern kann:
http://kb.parallels.com/112492
Verfasser: Michael Stender
Letzte Änderung: 2013-11-13 16:38
Plesk 12 upload Begrenzung in PhpMyAdmin ändern
Um das Upload Limit auf 100 MB zu ändern öffnet man folgende Datei:
/usr/local/psa/admin/conf/php.ini
upload_max_filesize = 100M
post_max_size = 100M
Danach muss man Plesk neu starten:
/etc/init.d/psa restart
Verfasser: Michael Stender
Letzte Änderung: 2014-08-04 00:37
Plesk 12 versendet keine Emails von Systemusern, wenn die Postausgangskontrolle aktiviert wird. (012REJECT)
Habe folgende Fehlermeldung in den Logdateien gefunden:
plesk sendmail[16567]: handlers_stderr: DATA REPLY:554:5.7.0 Your message could not be sent. The user otrs is not allowed to send email.#012REJECT
In Plesk gibt es eine Whitelist. Diesen Befehl ausführen und schon läuft es wieder.
/usr/local/psa/admin/sbin/mailmng-outgoing --add-to-whitelist --sysuser=otrs
Verfasser: Michael Stender
Letzte Änderung: 2014-08-09 18:50
DNS-Server
Poweradmin install Fehler
Wenn Ihr die Meldung [quote]Unable to include the DB/mysql.php file[/quote]angezeigt bekommt, versucht erst die perl DB zu installieren: [code]pear install DB[/code]
Eventuell reicht der Speicher in der /etc/php/cli/php.ini nicht aus. Einfach den Speicher erhöhen:
[code]memory_limit = 32M
post_max_size = 32M[/code]
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 03:24
MySQL Server
Mysql optimieren (tuning-primer.sh)
Ein sehr gutes Script um Mysql Datenbanken zu optimieren.
http://day32.com/MySQL/
Verfasser: Michael Stender
Letzte Änderung: 2007-08-17 01:02
Alle mysql Datenbanken auf dem Server reparieren
mysqlcheck -A -r
Das ganze kann man auch Nachts per Cronjob ausführen lassen:
crontab -e
35 0 * * 0 /usr/bin/mysqlcheck -A -r --silent
Verfasser: Michael Stender
Letzte Änderung: 2007-08-25 21:12
Syscp
Syscp: GPG error … NO_PUBKEY EB8BDC4195A7D80C
Beim Updaten per apt-get update der Debian Pakete erhällt man folgenden Fehler: NO_PUBKEY EB8BDC4195A7D80C
Abhilfe:
wget http://debian.syscp.org/pubkey
apt-key add pubkey
gpg --import pubkey && gpg --fingerprint
rm pubkey
Verfasser: Michael Stender
Letzte Änderung: 2008-12-20 03:28
Orderpanel
Nach der Umstellung von php4 auf php5 läuft das Orderpanel nicht mehr
Nach der umstellung von php4 auf php5 funktioniert das Orderpanel nicht mehr. Fehlermeldung lautet:
orderpanel fatal error: class '1' not found
Lösung:
Im Ordner: Data/lib muss die classes.php in der Zeile 40 MYSQL_ASSOC geändert werden:
$obj = mysql_fetch_object($res,MYSQL_ASSOC);
ändern in
$obj = mysql_fetch_object($res);
Damit läuft das Bestellsystem wieder.
Dank an joomla100 für den Tip.
Verfasser: Michael Stender
Letzte Änderung: 2010-03-03 22:15
Webfakt Online Panel
Fehlermeldung Class '1' not found in classes.php on line 45
Nach dem Update von PHP4 auf PHP5 funktioniert das Webfakt Online Panel der Fa. Medienuniversum nicht mehr.
einfach in der classes.php, Zeile 45 wie folgt ändern.
$obj = mysql_fetch_object($res,MYSQL_ASSOC);
ändern in
$obj = mysql_fetch_object($res);
Verfasser: Michael Stender
Letzte Änderung: 2010-03-03 22:11
Windows
HP Notebook Nvidia Grafik Treiber HDX9350EG Bild friert ein
Seit dem es Windows 7 und Windows 8 gibt, hatte ich immer Probleme mit den aktuellen Nvidia Grafik Treibern für die in meinem HP Notebook eingebauten GTS8800 Grafikkarte. Kurz nachdem ich den neuen Treiber installiert hatte, blieb das System einfach stehen. Der Bildschirm fror (freeze) einfach ein.
Nun habe ich endlich eine Lösung gefunden auch aktuelle Nvidia Grafiktreiber zu verwenden. Das Problem ist, dass Nvidia ab eine speziellen Treiber Revision den standard "Performance level" geändert hat. Mit dem Tool Nvidia Inspector kann man diesen Performance level ganz einfach ändern. Es gibt aber auch ein anderes Tool für Nvidia Grafikkarten. Dies nennt sich nVidiaPowerMizerManager.
Zuerst installiert man den aktuellen Nvidia Grafiktreiber. Sollte das System sofort einfrieren, hilft hier eventuell die installation im Abgesichten Modus (F8).
Ich habe bei mir die einstellungen im nVidiaPowerMizerManager von Min Perf / Max Powersave (Performance level 0) auf Med Perf / Med Powersave (Performance level 1 oder 2) geändert. Seit dem läuft mein Notebook ohne Probleme mit dem aktuellen Nvidia Treibern.
Mein Dank geht hier an RickiBerlin aus dem Notebookreview.com Forum, der diese Lösung erarbeitet hat.
Verfasser: Michael Stender
Letzte Änderung: 2012-12-30 18:07
Windows » Windows 7
Windows 7 Minianwendungen werden nach dem Neustart nicht angezeigt
Zuerst im Taskmanager die sidebar.exe beenden. Dann unter c:\Users\DeinBenutzername\AppData\Local\Microsoft\Windows Sidebar\ die Datei settings.ini in settings.alt umbenennen.
Nun kann man die Minianwendungen aus dem Startmenü "Ausführen" sidebar.exe wieder starten.
Nach dem Neustart sollte die Sidebar automatisch starten.
Verfasser: Michael Stender
Letzte Änderung: 2011-01-09 12:04
Minianwendungen (Gadgets) Raster ändern
Beim verschieben der Minianwendungen in Windows 7, ist das Raster zu groß.
Dies kann man ändern, indem man die Schift Taste festhällt und dann das Gadget mit der Maus verschiebt.
Verfasser: Michael Stender
Letzte Änderung: 2011-01-09 12:09
AVM Fritzbox Freetz Image
AVM Fritzbox Freetz Image erstellen
Als erstes besorgen vir uns eine Virtuelle Maschine. Ich nutze den VMware Player.
Nun benötigen wir Ubuntu Desktop. Ich nutze die 64bit Version 12.04 LTS.
Nachdem wir den VMware Player installiert haben, installieren wir die virtuelle Ubuntu Maschine.
Bei der installation den Benutzer freetz mit dem Passwort freetz anlegen.
Nun ändern wir die Systemsprache auf deutsch. Dazu im linken Menü die Systemeinstellungen öffnen und auf Languages klicken. Unter Language Add Deutsch durch klicken auf das kästchen auswählen.
Als nächstes installieren wir mit dem Ubuntu Software Center den Midnight Commander (mc).
Nach der installation erscheint der mc auf der linken Seite des Ubuntu Desktops. Starte den Midnight Commander.
Nun werden wir ubuntu auf den neusten Stand brigen und einige Pakete installieren.
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
sudo apt-get -y install imagemagick subversion gcc g++ binutils autoconf automake automake1.9 libtool make bzip2 libncurses5-dev zlib1g-dev flex bison patch texinfo tofrodos gettext pkg-config ecj fastjar realpath perl libstring-crc32-perl ruby ruby1.8 gawk python libusb-dev unzip intltool libglib2.0-dev xz-utils git-cor
Wechsel in das /freetz Benutzerverzeichniss.
Im Benutzerverzeichniss /freetz geben wir umask 0022 ein.
Danach laden wir uns den freetz code runter:
svn co http://svn.freetz.org/branches/freetz-stable-2.0 freetz-stable-2.0
cd freetz-stable-2.0
Freetz starten mit make menuconfig.
Verfasser: Michael Stender
Letzte Änderung: 2013-11-26 18:36
Windows » Windows 8.1
Office 2013 FontCache Dienst lässt sich nicht starten Fehler 1083 "Der Dienst "Windows-Dienst für Schriftartencache" wurde aufgrund folgenden Fehlers nicht gestartet:
In dem ausführbaren Programm, in dem der Dienst ausgeführt wird, ist der Dienst nicht implementiert."
Regedit starten und unter
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Svchost
im rechten Fenster auf alle Einträge die mit LocalService
beginnen doppel klicken, dies hier zusätzlich in einer neuen Zeile eintragen:
FontCache
Windows neustarten.
Verfasser: Michael Stender
Letzte Änderung: 2014-01-18 04:23
Mailserver
SuSE 8.2 Postfix HOWTO Cyrus Spamschutz Virenscanner
Diese Anleitung basiert auf eine SuSE 8.2 Distrubtion und der Anleitung aus dem RootForum.
Mail & MTAs: Postfix aktualisieren und mit Blockern und Virenscanner versehen
Bei Suse 8.1 wird eine Postfix-Version 1.x installiert.
Diese ist aber nicht allzu frisch, außerdem fehlen eine Menge Features,
die man zur Viren und Spam-Abwehr benötigt.
Trotzdem sollte bei Euch schon das SuSE-Postfix installiert sein,
da es etwas einfacher macht und SuSEconfig Euch den Ärger mit den
Rechten und er chroot-Umgebung abnimmt.
Postfixversion 2.0.18.
postconf mail_version zeigt an welche Version Ihr benutzt.
postconf –m zeigt alles an was bei euch eincompiliert ist.
unix:~ # postconf -m
static
sdbm
pcre
nis
regexp
environ
proxy
ldap
btree
unix
hash
Zum bauen von Postfix werden folgende Pakete benötigt, die man mit yast eigespielt werden.
cyrus-sasl
cyrus-sasl-devel
db-devel
openldap-lib
openldap2
openldap2-client
openldap2-devel
openssl
openssl-devel
pcre
unix:~ # ldd /usr/lib/postfix/smtpd #zeigt an welche libs benutzt werden.
Ladet Euch die neue Version von Postfix herunter:
unix:~ # cd /usr/local/src/
wget ftp://ftp.pca.dfn.de/pub/tools/net/postfix/official/postfix-2.0.18.tar.gz
gunzip postfix-2.0.18.tar.gz
tar xvf postfix-2.0.18.tar
cd postfix-2.0.18/
make tidy
SASL1:
[code]make makefiles CCARGS="-DHAS_LDAP -DHAS_PCRE -DUSE_SASL_AUTH -DHAS_SSL "
AUXLIBS="-lldap -llber -lpcre -lsasl -lssl -lcrypto"[/code]
SASL1+MYSQL:
make makefiles CCARGS="-DHAS_LDAP -DHAS_PCRE -DUSE_SASL_AUTH -DHAS_SSL -DHAS_MYSQL" AUXLIBS="-lldap -llber -lpcre -lsasl -lssl -lcrypto -L/usr/lib/mysql -lmysqlclient -lz -lm"
(Das ist alles in einer einzelnen Zeile zu schreiben!)
Falls Ihr mit mysql-Unterstützung arbeiten wollt, gebt das ein:
SASL2:
make makefiles CCARGS="-DHAS_LDAP -DHAS_PCRE -DUSE_SASL2_AUTH -DHAS_SSL " AUXLIBS="-lldap -llber -lpcre -lsasl2 -lssl -lcrypto"
SASL2+MYSQL:
make makefiles CCARGS="-DHAS_LDAP -DHAS_PCRE -DUSE_SASL2_AUTH -I/usr/include/sasl2 -DHAS_SSL -DHAS_MYSQL -I/usr/include/mysql" AUXLIBS="-lldap -llber -lpcre -L/usr/lib -lsasl2 -lssl -lcrypto -L/usr/lib -lmysqlclient -lz -lm"
(Auch das ist alles in einer einzelnen Zeile zu schreiben!)
[code]make[/code]
Wenn hier Fehler auftreten (meist fehlende Libs) dann behebt die durch installieren den nötigen Libs (achtet darauf, das ihr immer das *-devel-Zeug benötigt!)
[code]postconf -m[/code]
static
sdbm
pcre
nis
regexp
environ
proxy
ldap
btree
unix
hash
[code]
unix:/usr/local/src/postfix-2.0.18 # newaliases
unix:/usr/local/src/postfix-2.0.18 # rcpostfix stop
unix:/usr/local/src/postfix-2.0.18 # make upgrade
unix:/usr/local/src/postfix-2.0.18 # rcpostfix start[/code]
Jetzt öffnet mit tail –f /var/log/mail das log und schaut,
ob irgendwelche Fehler aufgetaucht sind.
Wenn nicht, toll, dann habt ihr jetzt ein neues Postfix.
Wenn Warnungen im Log aufgetreten sind, liegt das wahrscheinlich daran,
das Postfix ein paar Konfigurationen umbenannt hat.
Das ist nicht wild, sucht einfach nach der alten (wie im Log angegeben)
und ersetzt diese durch die neue (auch wie im Log angegeben).
Anschließend noch ein Restart:
[code]unix:~ # rcpostfix restart[/code]
Und wieder Logfiles kontrollieren.
Nachdem Postfix nun richtig läuft, können wir mal anfangen das ganze
zu konfigurieren und unsere User vor Viren, Spam und (eigener?) Dummheit schützen.
unix:~ # cd /etc/postfix/
unix:/etc/postfix/ # wget http://www.twosteps.net/download/checks.tgz
unix:/etc/postfix/ # tar xvzf checks.tgz
Das holt die Body/Mime und Header-Check-Dateien von einem meiner Server
und entpackt diese unter dem Postfix-Verzeichnis.
Nun müssen wir die main.cf noch anpassen:
unix:/etc/postfix/ # mcedit main.cf
Fügt dort folgendes ziemlich weit unten ein:
header_checks = pcre:/etc/postfix/header_checks
body_checks = pcre:/etc/postfix/body_checks
mime_header_checks = regexp:/etc/postfix/mime_header_checks
Unter strict_rfc821_envelopes tragt Ihr die Spamlists ein,
die euch gefallen. Mit gefallen spamhaus, ordb und dsbl, aber jeder wie er es mag ;)
maps_rbl_domains = sbl.spamhaus.org,
relays.ordb.org,
unconfirmed.dsbl.org
Euere smtpd_recipient_restrictions sollte in etwa so aussehen:
(achtet auf die Reihenfolge!)
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_non_fqdn_hostname,
reject_unknown_recipient_domain,
reject_invalid_hostname,
reject_unknown_hostname,
reject_unknown_sender_domain,
reject_rbl_client,
permit_mx_backup,
reject_unauth_destination
Das ganze nun Abspeichern und postfix wieder neu starten.
Wenn das ohne Fehler gelaufen ist, können wir nun an den Virenscanner gehen.
Holt euch von HBV http://www.antivir.de/download/download.htm den „AntiVir MailGate Linux“.
Für den Privaten Einsatz ist der kostenlos zu registrieren.
Entpackt ihn und ruf das install-script auf.
Nun müssen wir die main.cf von Postfix wieder anpassen:
unix:/etc/postfix/ # joe main.cf
sucht dort eine Zeile mit content_filter.
Falls sie nicht da ist, fügt sie hinzu. In jedem fall sollte das ganze dann so aussehen:
content_filter = smtp:127.0.0.1:10024
Das ganze nun Abspeichern, postfix noch nicht neu starten.
editiert nun die master.cf
unix:/etc/postfix/ # mcedit master.cf
Editiert dort die Zeile localhost so dass sie hinterher so aussieht:
localhost:10024 inet n - n - - smtpd -o content_filter=
Das ganze nun Abspeichern und postfix neu starten.
Schaut wieder im Logfile, ob alles richtig läuft.
Wenn ja, dann schickt euch mal eine Mail.
Der Virenscanner sollte gleich loslegen (sichtbar mit tail –f /var/log/mail ).
So. Das wars.
Verfasser: Michael Stender
Letzte Änderung: 2008-03-01 20:29
PortSentry installieren
PortSentry kann man mittlerweile von SourceForge runterladen.
Dazu sucht man sich auf der Seite http://sourceforge.net/projects/sentrytools/ das Tool PortSentry aus, und folgt einfach den Links.
Wenn PortSentry nach /usr/src runtergeladen wurde, kann man nun fortfahren.
# cd /usr/src
# tar -xzf portsentry-1.2.tar.gz
In der Datei portsentry_config.h kann man schon einiges konfigurieren, wie z.B. den Pfad zur Konfigurationsdatei, und die Syslog Einstellungen.
Beachten sollte man hierbei, dass die Bretterkreuze (#) nicht als Kommentarzeichen dienen, sondern Anzeiger für Compilerbefehle sind, also nicht löschen!
Um meiner Empfehlung der Installation nach /usr/local/portsentry zu folgen, sollte die Datei wiefolgt abgeändert werden.
#define CONFIG_FILE "/usr/local/portsentry/portsentry.conf"
Nun muss die portsentry.conf editiert werden, dazu die Einträge suchen und abändern:
IGNORE_FILE="/usr/local/portsentry/portsentry.ignore"
HISTORY_FILE="/usr/local/portsentry/portsentry.history"
BLOCKED_FILE="/usr/local/portsentry/portsentry.blocked"
Um den Angreifer via Packet Filter zu blocken (empfohlene Methode), muss eine der Optionen KILL_ROUTE aktiviert werden.
Ich persönlich benutze IpTables, darum nehme ich das Kommentar vor
KILL_ROUTE="/usr/sbin/iptables -I INPUT -s $TARGET$ -j DROP
weg und ändere /usr/sbin/iptables auf den Pfad zu IpTables in meinem System.
Dieser Pfad lässt sich leicht mit
# whereis iptables
herausfinden.
Wer will, kann noch den Text der Variable PORT_BANNER ändern und das Kommentar davor löschen.
Nun muss die Datei portsentry.ignore bearbeitet werden.
Hier muss mindestens 127.0.0.1, 0.0.0.0 und die IP des Servers rein.
Wenn die IP-Adresse (wie beim 1&1 Rootserver) via DHCP vergeben wird, muss hier auch die Adresse des DHCP-Servers rein.
Diese DHCP-Adresse kann man mittels
# cat /var/state/dhcp/dhcpcd-eth0.info | grep DHCPSIADDR
herausfinden.
Die Datei portsentry.ignore kann dann so aussehen:
# lo
127.0.0.1
#
0.0.0.0
# IP des Servers
217.xx.xx.xx
# IP des DHCP-Servers
217.xx.xx.xx
--------------------------------------------------------------------------------
2. Kompilieren/Installieren
Um den Installationspfad auf /usr/local/portsentry zu setzen, muss Makefile noch abgeändert werden.
Dazu muss ungefähr in Zeile 40 die Variable INSTALLDIR auf /usr/local gesetzt werden.
Dann wieder in der Konsole:
# make linux
# make install
Nun ist PortSentry unter /usr/local/portsentry installiert.
--------------------------------------------------------------------------------
3. Automatisierung
Im Moment wird der Angreifer solange geblockt, bis die Filterregeln manuell entladen werden.
Um das Entladen zu vereinfachen, habe ich noch ein kleines Perlscript geschrieben, das man in das PortSentry Installationsverzeichnis mit rein packt.
# cd /usr/local/portsentry
# wget http://www.rob-schulze.de/informatik/tutorials/portsentry/filtermgr
# chmod 700 filtermgr
Im Script muss unbedingt eine Variable angepasst werden.
Je nachdem, in welches Verzeichnis man das Script packt, muss die Variable $BASE_DIR entsprechend angepasst werden.
Ich gehe hier von dem Verzeichnis aus, in das ich auch PortSentry installiert habe.
Hier bitte aufpassen, dass kein Slash am Ende steht und das Semikolon nicht vergessen.
my $BASE_DIR="/usr/local/portsentry";
Nun muss das Script mit PortSentry verbunden werden.
Dazu öffnet man die /usr/local/portsentry/portsentry.conf und löscht erstmal (oder kommentiert) alle KILL_ROUTE Einträge. Außerdem muss man sich noch folgende Einträge suchen und folgend abändern, damit nun lediglich das Script blockt, PortSentry dient nun ausschließlich zum Erkennen der Scans.
BLOCK_UDP="2"
BLOCK_TCP="2"
KILL_RUN_CMD="/usr/local/portsentry/filtermgr -a $TARGET$"
Die Zeit, nachdem eine geblockte IP wieder zugelassen werden soll, kann man innerhalb des Scripts einstellen.
Dazu einfach mit einem Editor öffnen und den Wert hinter $BLOCK_TIMEOUT (Standard habe ich als 30 Minuten festgelegt) ändern.
Achtung, die Zeit wird dort in Sekunden angegeben, man kann aber ohne Probleme die Übersicht halten, in dem man einfach z.B. 1 Stunde als 60*60 schreibt.
Hier bitte keine Anführungsstriche benutzen und das Semikolon nicht vergessen.
Um regelmäßig das Löschen der alten IPs zu veranlassen, reicht ein kleiner Cronjob.
Also die eine Datei /etc/cron.d/filtermgr erzeugen und Folgendes reinschreiben:
# Jede halbe Stunde das Loeschen alter IPs veranlassen (portsentry)
*/30 * * * * /usr/local/portsentry/filtermgr -d
So nun fehlt bloß noch eins, nämlich ein Startskript, sodass PortSentry bei jedem Start automatisch geladen wird.
# cd /etc/init.d
# wget http://www.rob-schulze.de/informatik/tutorials/portsentry/rcportsentry
# chmod 700 rcportsentry
Das Script muss nun bloß noch ins Runlevel 3 gelinkt werden:
# cd /etc/init.d
# ln -s /etc/init.d/rcportsentry /etc/init.d/rc3.d/S08portsentry
# ln -s /etc/init.d/rcportsentry /etc/init.d/rc3.d/K17portsentry
Fertig.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:47
FrontPage SuSE Linux 8.2 und Confixx
/etc/httpd/httpd.conf
LoadModule frontpage_module /usr/lib/apache/mod_frontpage.so
AddModule mod_frontpage.c
/etc/httpd/mod_frontpage.conf
# FrontpageDisable
cd /root/
wget http://download.webmasterhilfe.de/fp40.linux.tar.gz
cd /usr/local/
tar xzvf /root/fp40.linux.tar.gz
/root/confixx/confixx_main.conf
$fp_homeDir = '/usr/local/frontpage'
mv /usr/sbin/fpexec /usr/sbin/fpexec_old
cd /usr/sbin/
wget http://download.webmasterhilfe.de/fpexec)
chmod 755 /usr/sbin/fpexec
chmod u+s /usr/sbin/fpexec
mkdir /usr/local/httpd
mkdir /usr/local/httpd/htdocs
rcapache restart
/root/confixx/confixx_counterskript.pl
/root/confixx/confixx_counterskript.pl
/root/confixx/confixx_counterskript.pl
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:48
MailScanner Installation Guide
Diese Anleitung basiert auf der Anleitung von Julian Field.
http://www.sng.ecs.soton.ac.uk/mailscanner/install/
As with the other mail systems, MailScanner sits in between 2 copies of Postfix running on the same machine. The incoming one provides SMTP service and doesn't do any delivery, the outgoing one does all the delivery. MailScanner sits in between them and moves/copies messages as necessary from the delivery queue of the incoming Postfix to the incoming queue of the outgoing Postfix.
How to Set Up Postfix for MailScanner Use
Install Postfix (version 1 or 2) and get it all working.
Stop Postfix using a command
postfix stop
Make sure you have the chroot jail set up in /var/spool/postfix. You should be able to see "etc", "usr" and "lib" directories inside /var/spool/postfix). If you haven't got the chroot jail setup already, then look in the "examples" directory of the Postfix documentation and you will find a script in there to set up it up for your operating system. If you can't find that, then see the "Problems or Errors" section further down this page.
Copy the postfix configuration files for the incoming Postfix:
cp -rp /etc/postfix /etc/postfix.in
Tell the incoming Postfix not to deliver mail: Edit /etc/postfix.in/main.cf and add a line at the top that says this:
defer_transports = smtp local virtual relay
In the same file, look for the definition
queue_directory = /var/spool/postfix
and change it to
queue_directory = /var/spool/postfix.in
If you have a chroot jail setup in /var/spool/postfix, copy the postfix spool are to the incoming setup using a command
cp -rp /var/spool/postfix /var/spool/postfix.in
Otherwise, just create the new spool directory for the incoming Postfix using a command
mkdir /var/spool/postfix.in
When the incoming Postfix starts up, it will create any missing files and directories it needs in there.
Tell the outgoing Postfix not to provide an SMTP service: Edit /etc/postfix/master.cf and comment out the following line by inserting a "#" at the start of the line:
smtp inet n - y - - smtpd
How to Set up MailScanner for Use with Postfix
In your MailScanner.conf file (probably in /etc/MailScanner or /opt/MailScanner/etc), there are 5 settings you need to change. They are all really near the top of the file. The settings are
Run As User = postfix
Run As Group = postfix
Incoming Queue Dir = /var/spool/postfix.in/deferred
Outgoing Queue Dir = /var/spool/postfix/incoming
MTA = postfix
If you are using the RedHat RPM distribution, one change will enable all the Postfix support in the init.d script. Edit /etc/sysconfig/MailScanner and set
MTA=postfix
You will need to ensure that the user "postfix" can write to /var/spool/MailScanner/incoming and /var/spool/MailScanner/quarantine:
chown postfix.postfix /var/spool/MailScanner/incoming
chown postfix.postfix /var/spool/MailScanner/quarantine
If you upgrade your copy of MailScanner, unfortunately these directories will be changed back to being owned by root, so you will have to do those 2 commands again.
Starting It All Running
If on a system installed using the RedHat RPM distribution, please edit /etc/sysconfig/MailScanner and set it up for your mail system. Then just use the init.d script to do it all for you:
/etc/rc.d/init.d/MailScanner start
(or on RedHat systems just service MailScanner start) If not using the RedHat RPM distribution, then
Start the incoming Postfix
postfix -c /etc/postfix.in start
Start the outgoing Postfix
postfix -c /etc/postfix start
Start MailScanner
check_MailScanner
Problems or Errors
If you are using RedHat Linux and Postfix or sendmail, please make sure that your system is switched to the correct mail system. You can set this by running the command
redhat-switchmail-nox
and then pick the mail system you want to use. You should then edit /etc/sysconfig/MailScanner to match that setting.
sendmail: invalid option -- O
See the paragraph above. You have your RedHat system set to use Postfix while you are telling MailScanner to use sendmail. Both settings must be the same.
Unknown service
If you get lots of "smtp/tcp" "unknown service" errors in your maillog when you send a test message through it, then either your chroot jail is set up wrong or you haven't got one at all. Take a look in /etc/postfix/master.cf and find the "chroot" column in the table of settings. Set all "y" to "n" in this column so that it doesn't try to chroot.
If you want to use chroot but can't get it right, then download a copy of Postfix version 2 from www.postfix.org. In the distribution documentation directories, you will find a script that will set up the chroot jail for your operating system. Run that script and then try using the chroot jail again.
Verfasser: Michael Stender
Letzte Änderung: 2007-08-08 02:51
Outlook Authentifizieren
Outlook: Server erfordert Authentifizierung
Um mit einem E-Mail Client Nachrichten über ihren AKTIVhost Account zu versenden, ist die Anmeldung beim Postausgangsserver zwingend erforderlich. Dieses Verfahren wird ASMTP (Authenticated Simple Mail Transfer Protocol) oder SMTP-Auth bezeichnet. Die Anmeldung dient vor allem dazu, den Versand von unerwünschten E-Mails (Spam) zu verhindern.
Die folgende Anleitung zeigt Ihnen, wie Sie Ihr Programm entsprechend einrichten.
Schritt 1 - Aufrufen des E-Mail Kontos
Klicken Sie oben in der Menüleiste auf "Extras > E-Mail Konten".
Wählen Sie "Vorhandene E-Mail-Konten anzeigen oder bearbeiten". Öffnen Sie in der folgenden Übersicht bitte mit einem Linksklick ein bestehendes Konto und klicken anschließend auf "Ändern", um ein bestehendes Konto zu bearbeiten.
Bestätigen Sie mit einem Klick auf "Weiter".
Schritt 2 - Anmeldeinformationen einstellen
Stellen Sie im folgenden Fenster sicher, dass unter "Benutzername" Ihre komplette E-Mail Adresse eingetragen ist. Anschließend öffnen Sie bitte die Option "Weitere Einstellungen".
Schritt 3 - Server erfordert Authentifizierung
Wechseln Sie in die Karteikarte "Postausgangsserver" und aktivieren Sie die Option "Der Postausgangsserver (SMTP) Server erfordert Authentifizierung anmelden mit". Tragen Sie dort Ihre komplette Email Adesse und Ihr Passwort ein.
Für Mac Mail tragen Sie bitte folgendes ein:
Tragen Sie nun folgende Informationen in den Dialog "Server für ausgehende E-Mails" ein:
- Beschreibung: meinedomain.de
- Server für ausgehende E-Mails: mail.meinedomain.de
- Checkbox für "Nur diesen Server verwenden" ausfüllen
- Checkbox für "Identifizierung verwenden" ausfüllen
- Benutzername: Ihre E-Mail-Adresse oder Ihren gewählten Login-Namen z.B. ich@meinedomain.de
- Passwort: Ihr Kennwort
Verfasser: Michael Stender
Letzte Änderung: 2016-08-10 12:08