Archiv

Archiv für die Kategorie ‘Linux’

nginx als reverse proxy vor apache2 mit froxlor

26. Dezember 2011 Keine Kommentare

nginx ist ein kleiner hochperformanter Webserver und Proxy für http, pop3 und imap.

Dieser Artikel basiert auf dem help.ubuntu.com Eintrag Nginx/ReverseProxy.

Nginx Installation auf Debian Systemen:

sudo apt-get nginx

Nginx Proxy Configuration (nur reverse, kein caching Proxy). Diese unter /etc/nginx/proxy.conf speichern.

proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffers 32 4k;

Nginx vhost Vorlage für Froxlor Domains, speichern unter /etc/nginx/TEMPLATE:

server {
listen 80;
server_name DOMAIN www.DOMAIN;
access_log /var/log/nginx/DOMAIN.access.log;
location / {
proxy_pass http://127.0.0.1:8888;
include /etc/nginx/proxy.conf;
}
}

Unter server_name werden die Froxlor Domains eingetragen, dazu gibt es gleich ein Script. proxy_pass verweisst auf die Apache2 Instanz, die hier unter 127.0.0.1 Port 8888 erreicht wird.

Froxlor Domains aus der MySQL Datenbank abfragen und als nginx vhosts speichern unter /etc/nginx/CREATE_VHOSTS:


DOMAINS=/etc/nginx/domainlist.txt
USE froxlor ; SELECT domain FROM panel_domains;
MYSQL

for domain in `cat $DOMAINS`
do
# echo $domain
sed s/DOMAIN/$domain/g /etc/nginx/TEMPLATE >/etc/nginx/sites-enabled/$domain
done

Domains auslesen und Vhosts schreiben:

sh /etc/nginx/CREATE_VHOSTS

Apache und Froxlor Configuration:

sudo apt-get install libapache2-mod-rpaf

Damit die wirkliche remote IP Adresse im Apache Logfile landet, muss das Apache2 mitgeteilt werden. In Froxlor wird unter SERVER > IPs and Ports > bearbeiten > Webserver domain config folgendes eingetragen:


<ifmodule mod_rpaf.c>
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 83.151.25.150
</ifmodule>

RPAFproxy_ips sind die nginx IP Adressen, meist also die public IP. Mehreinträge sind möglich.

Proxy und Webserver neustarten:

invoke-rc.d nginx reload
invoke-rc.d apache2 reload

Tags:

Intel D945GCLF und Realtek r8101.ko BUG: soft lookup- CPU#1 stuck for 11s! halt:7887]

14. April 2009 Keine Kommentare

Diese formschöne Fehlermeldung erhält man mit dem Intel Atom Barebone Board D945GCLF Chipsatz. Ich habe gerade Ubuntu 8.04.1 aka Hardy am Wickel. 2.6.24-23-generic Kernel.

Man kann sich zwischen verschiedenen BUGs entscheiden. Der r8169 Treiber verursacht “dropped” Packets laut ifconfig, segfaultet auch gern bei der Installation:

eth0      Link encap:Ethernet  Hardware Adresse 00:1c:c0:8d:c9:2d
inet Adresse:192.168.200.136  Bcast:192.168.200.255  Maske:255.255.255.0
inet6-Adresse: fe80::21c:c0ff:fe8d:c92d/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
RX packets:3261 errors:0 dropped:4143098811 overruns:0 frame:0
TX packets:3198 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:3130291 (2.9 MB)  TX bytes:606778 (592.5 KB)
Interrupt:220 Basisadresse:0×2000

Also den r8101.ko Treiber installieren vom Netzwerkkartenhersteller Realtek. Dieser Segfaultet nicht beim Starten des Rechners. Dafür hängt er beim Runterfahren des Rechners mit der Fehlmeldung

“BUG: soft lockup – CPU#1 stuck for 11s! [halt:7887]“

Hierzu gibt es bereits ein Bugreport. Als Workaround habe ich erstmal r8101.ko geblacklistet. Damit mir r8169.ko nicht einfach so abschmiert habe ich dbus-daemon deaktiviert. Ähnliche Probleme werden auch mit.

http://www.greenwireit.com/blog/2009/02/nc91-230-lf-progress-update-linux-issues/

Eine mögliche Lösung dieses Problems besteht in einen Kernelpatch wie http://linuxtrek1.blogspot.com/2008/10/ubuntu-on-intel-d945gclf-with-intel.html beschrieben.

Murphy’s Law und Umzug mit Arbeitgeber

30. Januar 2009 Keine Kommentare

Es gibt ja nichts schlimmeres wenn man grad keine Zeit hat und dann ein System ausfällt. So diese Woche bei http://www.hetzner.de geschehen. Arbeiten an den USV (Unterbrechungsfreie Stromversorgung) haben zu einen Stromausfall in mehreren Rechenzentren geführt. Das wiederum verursachte Supportaufwand. Und gerade in der Woche zieht mein Arbeitgeber um.

Herrlich.

Nicht nur das ich als Mulli hergehalten habe, auch hat die Telekom ihre Termin so geschoben dass wir erst fünf Tage später Internet und Telefon bekommen. Super :) Das ist ein Fall für Murphy’s Law. Wenn jemand weiss welche Tätigkeiten zumutbar sind und was nicht, gern ein Link als Kommentar absetzen. Das interessiert mich schon. Denn im EDV (Ende der Vernunft) Bereich muss ja nicht immer jeglicher Krempel mitgemacht werden.

OpenWRT – Soekris will nicht booten ohne serielles Kabel

26. Oktober 2007 Keine Kommentare

Sobald man eine Soekris 4801 mit Grub allein booten will, wartet Grub auf eine Eingabe. Sobald aber gar keine Tastatur oder keine serielle Konsole angeschlossen ist, wartet Grub in alle Ewigkeit. Also deaktivieren und schon fluppt das.

Meine menu.lst dazu schaut so aus:

serial –unit=0 –speed=38400 –word=8 –parity=no –stop=1
terminal –timeout=2 –dumb serial
#######

hiddemenu
default 0
timeout 2

title OpenWRT
root (hd0,0)
kernel /boot/vmlinuz block2mtd.block2mtd=/dev/hdb2,65536,rootfs root=/dev/mtdblock0 rootfstype=jffs2 init=/etc/preinit noinitrd console=ttyS0,38400n8 reboot=bios
boot

Tags: , ,

Fonera und WRT54 serielle Konsole mit Handydatenkabel

8. Juli 2007 Keine Kommentare

Hab heute mal mein Siemens USB Telefondatenkabel umgebaut, damit man dies als Systemkonsole (engl. serial console) für Router wie den Fonera oder den Linksys WRT54GL nutzen kann. Diese Geräte benötigen einen Pegelwandler, da die 12 Volt einer normalen seriellen Schnittstelle zu viel sind.

Unter Linux braucht man dann noch das passende Modul (uhci_hcd ist abhänig vom jeweiligen USB-Chipsatz des Rechners). usbcore,pl2303,usbserial,usbhid,uhci_hcd

Einstöpseln sollte dann in /var/log/syslog folgendes bringen:
Jul 8 18:11:28 thinkpad2 kernel: usbcore: registered new driver pl2303
Jul 8 18:11:28 thinkpad2 kernel: drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver
Jul 8 18:18:18 thinkpad2 kernel: pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0

Die Verdrahtung ist auch kein großes Geheimnis:
Schwarz = GND (Ground)
Orange = TX
Braun = RX

Achja, das Ding ist ein Siemens S30880-S5601-A810 mit Leds für Power, TX und RX. Sehr nett.

Tags: , ,

VirtualBox 1.4.0 und OpenBSD Gast mit IDE timeouts unter Debian GNU/Linux

5. Juli 2007 Keine Kommentare

habe mich einen paar Stunden mit VirtualBox 1.4.0 binary Version rumgeärgert. Mein Debian Etch sollte ein OpenBSD 4.0 beherbergen. Leider kam immer beim anlegen der Partitionstabelle folgende Fehlermeldung:

wd0c: device timeout writing fsbn 0 (wd0 bn 0; cn 0 tn 0 sn 0), retrying
wd0(pciide0:0:0): timeout
type: ata
c_bcount: 512
c_skip: 0

Lösung: Die Version 1.4.0 hat einen Bug. SVN Version holen und kompilieren.

VirtualBox 1.4.0 und OpenBSD als Gast unter Debian GNU/Linux

Tags: , , ,

Sicherheitsupdate für madwifi-ng Treiber in fli4l 3.0.2

26. Mai 2007 1 Kommentar

Gestern habe ich die aktuelle Version 0.9.3.1 von madwifi-ng in fli4l eingepflegt. Da ich den 2.4er kernel selten nutze war das wieder ein spannendes Erlebnis. Die neue Release von madwifi beseitigt drei Sicherheitslücken wie in der News vom Projekt zu lesen. Ich finde für ein Freizeitprojekt ist fli4l  somit sehr zügig gewesen.

Tags: , ,

#1017 – Can’t find file: ‘frm’ (errno: 13)

3. Mai 2007 Keine Kommentare

Aua aua, nach dem das Freifunk Wiki in Hannover heute mit der Datenbank (naja eigentlich ohne Datenbank) Probleme bekam, hab ich mir doch nochmal mein MySQL Backup angeschaut. Beim Script schreiben ist mir ein “chmod 0600 datenbank” blöderweise im falschen Ordner entfleucht. Sprich einige Ordner unterhalb von /var/lib/mysql waren nicht mehr durchschreitbar (+x) für den mysql Server. Super. Da bekommt man dann den o.g. Fehler beim reparieren der Datenbank (z.B. mit PhpMyAdmin). Sauber. Das Backup konnt trotzdem gebrauchen, einige Tabellen haben sich dann doch verabschiedet.

Tags: ,