Google Chrome DNS Cache löschen

Google Chrome hat einen eigenen DNS Cache, der nicht über das Windows Kommando ipconfig /flushdns geleert werden kann. Zum Löschen wird die Hierzu wird einfach in der Adressleiste die URL chrome://net-internals/#dns eingegeben.

Markiert in:
978 Aufrufe
0 Kommentare

E-Mail mit Ubuntu und GMAIL oder Office365 versenden

Ein Ubuntu / Linux Server wird in den meisten Fällen wohl E-Mails an seinen Betreuer, Betreiber, Eigentümer..... senden sollen. Da ist z.B. Benachrichtigung Cron oder Tiger, evtl. soll eine Web-Anwendung Mails an seine Nutzer versenden. Im allgemeinen wird hierzu die Nutzung von Sendmail oder Postfix und Exim empfohlen. Wer jedoch bereits über einen Mailserver verfügt, Google oder Microsoft in der Cloud oder On-Premise bereits einen Mailserver hat, der kann SSMTP als einfache Alternative einsetzen. Da funktioniert dann sogar für DYNDNS Server, ohne feste IP. 
ssmtp ist keine Mailserver () wie Postfix und Co., sondern eine einfache Tool welches sendmail emuliert. ssmtp kann E-Mail ausschließlich senden, für den Empfang von E-Mails ist es nicht geeignet.

Die Installation dauert keine Viertelstunde und ist sehr einfach, das Beispiel hier kann unter Ubuntu 14.04 nachvollzogen werden. 

Weiterlesen
1087 Aufrufe
0 Kommentare

Google zeigt neuen zweibeinigen Roboter von Schaft

Roboter zu konstruieren, die die menschliche Bewegung imitieren, ist keine leichte Aufgabe. Das menschliche laufe ist eine extrem komplexe Aufgabe, deshalb werden meistens Räder für die Fortbewegung verbaut. Der von Googles Alphabets vorgestellte Roboter sieht schon recht seltsam aus. Er löst die Aufgabe des Laufens jedoch und darf deshalb ruhig als technisches Meisterwerk bezeichnet werden.

994 Aufrufe
0 Kommentare

Installation Ubuntu 12.04 LTS LAMP Server

Schritt für Schritt Anleitung zur Installation und Konfiguration eines Linux Apache MySQL PHP5 Server mit FastCGI.

Linux, Apache2, MySQL und PHP gehören mit zu den erfolgreichsten Serverpaketen im Internet. Viele große und kleine Websites setzen darauf auf. Auch wenn sich in den letzen Jahren viele gute alternativen zum Apache2-Web-Server etabliert haben, ist der Apache2 nach wie vor der Platzhirsch.

Für die tägliche Arbeit in einem Projekt leistet ein Webserver gute Dienste. Ein WIKI, Quellcoderepository und Jenkins kann man ohne viel Aufwand darauf einrichten. Ich habe ich die einzelnen Schritte zum installieren und konfigurieren eines Ubuntu 12.04 LTS LAMP Servers aus meinen Aufzeichnungen zusammengefasst. Die Betonung liegt hierbei auf grundsätzlich. Einfach abtippen genügt nicht, um einen Server sicher im Internet betreiben zu können.

Ein ein Betriebes- und Sicherheitskonzept brauchst du auf jeden Fall. Das braucht für den "unter dem Schreibtisch Betrieb" nicht komplett ausformuliert sein. Es ist aber notwendig sich Gedanken darüber zu machen, nicht nur um den Arbeitsaufwand einschätzen zu können.


 

Am einfachsten ist es, du führst die Schritte auf einem frisch installierten Testsystem durch. Im Downloadbereich habe ich VMWARE Images bereitgestellt. Du brauchst dir auf deinen Rechner nur noch den kostenlosen VMWARE-Player zu installieren und es kann losgehen.

Wenn du die Anleitung auf einem ROOT-Server, der im Internet steht, nachvollziehst: Bitte den Zugriff auf die IP deines Arbeitsplatzrechners mit iptables beschränken. Solange der Server nicht installiert und und grundabgesichert ist, bist du leichte Beute. Ein einfachsten geht das mit ufw (uncomplicated firewall):

sudo ufw allow proto tcp from DEINEIP to any port 80

Beim experimentieren mit der Firewall kann man sich leider selbst aussperren (Rate mal, wem das schon passiert ist). Zu IPTABLE und ufw gibt es aber eine Reihe von Howtos im Internet, einschließlich meinem

Die Anleitung erhebt weder einen Anspruch auf Vollständigkeit noch Richtigkeit.

Die Grundinstallation besteht aus den Komponenten:

Darüber hinaus gibt es für weitere Themen kleine Anleitungen von mir:

  • mod_expires : Browser Cache für statische Web-Inhalte aktivieren.
  • mod_evasive : Bandbreite für einzelne Besucher begrenzen
  • mod_chroot : Apache2 chrooten
  • mod_security : Webapplication Firewall
  • mod geoip: Besuchern, abhängig von ihrem Standort, Inhalte anbieten oder blockieren.

Die Installation kannst du direkt aus dem Ubuntu Repository machen. Es ist kein Compiler oder Make notwendig.

Installation MySQL

MySQL installieren:

apt-get install mysql-server mysql-client

Während der Installation werdet ihr aufgefordert, ein Root-Passwort für die Datenbank einzugeben. Bitte nicht vergessen. Falls ihr das Root-Passwort doch einmal vergessen habt. Hier ist eine kleine Anleitung von mir:Root Passwort einer MySQL Datenbank wiederherstellen.

PHP 5

apt-get install php5 php5-cli php5-fpm
php5 server-side, HTML-embedded scripting language (metapackage)
php5-cli command-line interpreter for the php5 scripting language
php5-fpm server-side, HTML-embedded scripting language (FPM-CGI binary)

PHP 5 Module

apt-get install php5-gd php5-ps php5-xsl php5-imap php5-ming php5-intl php5-snmp php5-curl php5-tidy php5-mysql php5-common php5-pspell php5-recode php5-recode php5-mcrypt php5-xmlrpc php5-suhosin php5-xcache php-pear
php5-gd GD module
php5-ps postscript module
php5-xsl XSL module
php5-imap IMAP module
php5-ming Ming (flash) module
php5-intl internationalisation module
php5-snmp SNMP module
php5-curl CURL modul
php5-tidy tidy module
php5-mysql MySQL module
php5-common Common files for packages built from the php5 source
php5-pspell pspell module
php5-recode recode module
php5-mcrypt MCrypt module
php5-xmlrpc XML-RPC module
php5-imagick ImageMagick module
php5-suhosin advanced protection module
php5-xcache Fast, stable PHP opcode cacher
php-pear PEAR - PHP Extension and Application Repository

Der suhosin Patch dient zur Härtung der PHP Installation. Im Kapitel Grundabsicherung gibt es weitere Infos dazu, auch wie Module abgeschaltet werden können.

Apache2

Für den Webserver genügt es, zuerst die Basismodule zu installieren. Da ich PHP-FPM als FastCGI Process Manager für PHP verwenden, können wir den Apache 2 mit dem effizienten Multi-Processing-Modul . Prefork brauchst du nicht.

apt-get install apache2 apache2.2-bin apache2.2-common apache2-utils apache2-mpm-worker libapache2-mod-FastCGI cronolog
apache2 Apache HTTP Server metapackage
apache2.2-bin Apache HTTP Server common binary files
apache2-utils utility programs for webservers
apache2.2-common Apache HTTP Server common files
apache2-mpm-worker Apache HTTP Server - high speed threaded model
libapache2-mod-FastCGI Apache 2 FastCGI module for long-running CGI scripts

Virtuelle Hosts einrichten.

Die Installation der Basiskomponenten ist abgeschlossen. Bevor wir einen Ersten "hurra es geht"-Test machen können, muss zunächst eine Website (vHost, virtueller Host etc.) eingerichtet werden.

Zum nachvollziehen der einzelnen Schritte muss der Domainname an die jeweiligen Gegebenheiten angepasst werden. Die Konfigdatei heiߟt in meinenm Beispiel vhost1.
Zuerst ein Verzeichnis für Website angelegen:

sudo mkdir /var/www/vhost1

Asnchließend die Konfigurationdatei erstellen:

sudo /etc/apache2/sites-available/

In die Datei folgende Zeilen kopieren:

	ServerAdmin webmaster@localhost
        DocumentRoot /var/www/vhost1
        HostnameLookups on
        ErrorLog  "|/usr/bin/cronolog /var/log/apache2/vhost1/%Y-%m-%d-error.log"
        CustomLog "|/usr/bin/cronolog /var/log/apache2/vhost1/%Y-%m-%d-access.log" vhost_combined
      
                Allowoverride All
       
        
                Order deny,allow
                Deny from all
                Allow from all
        

In der Datei ports.conf die Zeile:

NameVirtualHost *:80

auskommentieren (# einfügen).

sudo nano /etc/apache2/ports.conf

Du hasst jetzt einen virtuellen Host, der auf alle eingehenden Anfragen reagiert. Naja, das ist keine Änderung am Standardverhalten, aber du hast jetzt ein Gerüst, um weitere virtuelle Hosts anzulegen. Nicht vergessen: Wenn du mehrere virtuelle Hosts betreiben möchtest, must du in allen vhost Dateien den jeweilige Domänenname angegeben ().

Logrotation

Logrotate Daemon

Logrotation für den Apache 2 wird in Ubuntu schon automatisch konfiguriert. Es gibt jedoch Alternativen, ich bin ein Fan von cronolog. Damit du selbst entscheiden kannst, stelle ich dir in Kurzform drei Möglichkeiten vor:

Die Standard-Apache-Installationen auf Ubuntu verwendet logrotate um Protokolldateien zur rotieren und alte zu löschen. Dies funktioniert auch recht gut. Die allermeisten Damons und Anwendungen schreiben nämlich nur wenig Meldungen in ihre Log-Dateien. Für einen Apache 2, der ordentlich unter Feuer steht, können die Protokolle unter umständen, mit Tausenden Zeilen pro Sekunde vollgesemmelt werden. Passiert aber bei den meisten Websites wohl eher nicht, im Projektbetrieb habe ich das jedenfalls noch nicht erlebt. Die logrotate muss für eine saubere Funktion den Apache leider stoppen. Nur so können die Protokolldateien aus dem Weg geschafft und neu leere Dateien angelegt werden. Und hier liegt der Knackpunkt, der für Ärger auf einem Build-Server führen kann.

Apache rotatelogs

Die Apache2 Packages enthalten das rotatelogs Tool. Rotatelogs funktioniert wie eine Pipe. Der Webserver schiebt seine Logs in rotatelog rein, das Tool schreibt die Protokolldatei. Das Ganze könnte perfekt gut sein, da der Webserver nicht gestoppt werden muss. Rotatelogs kann aber lediglich in einem festen Intervall neue Protokolldatei anlegen. Das ist nicht so richtig üübersichtlich und für eine automatische Archivierung sehr unpraktisch.

cronolog

Cronolog ist seit vielen Jahren meine Wahl. Im Prinzip funktioniert cronolog wie rotatelogs. Cronolog erlaubt aber ein sehr flexible das Logging, an die jeweiligen Bedürfnisse angepasst. Details kannst du auf der cronolog Homepage nachlesen. In meiner Beispielkonfiguration werden die Protokolldateien in der Form JAHR-MONAT-TAG..log angelegt.

Fast fertig

Zuletzt wird die default Site disabled und unsere Site enabled. Sollte eine weite Site angelegt werden, einfach eine weitere Datei erzeigen und enablen.

sudo a2dissite default
sudo a2ensite vhost 
sudo service apache2 restart

Test (hurra es geht)

Testseite kopieren:

sudo cp /usr/share/apache2/default-site/index.html /var/www/vhost1

Jetzt kannst du deine Website zum ersten mal testen. Im Browser einfach die IP-Adresse des Servers/der virtuellen Maschine eingeben. Wenn du die IP-Adresse nicht kennst, ifconfig zeigt sie dir an. Der Browser sollte folgendes anzeigen:

b2ap3_thumbnail_apache.png

FastCGI einrichten.

Nachdem der Webserver läuft, kann FastCGI konfiguriert werden. Ich lasse FastCGI über einen Socket mit dem Webserver kommunizieren, das spart den TCP-Overhead und einen Listener. Anpassen der PHP-FPM Konfiguration:

sudo nano /etc/php5/fpm/pool.d/www.conf

Einfach die Zeile:

listen = 127.0.0.1:9000

durch

listen = /var/run/php5-fpm.sock

ersetzen.

Jetzt brauchst nur noch php5-fm im Apache zu aktivieren:

sudo nano /etc/apache2/conf.d/FastCGI

In die Datei folgende Zeilen kopieren:

AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCGIExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization

Zwei Anmerkungen:

  1. Ich konfiguriere alle Apache2 Module in Debian/Ubuntu Manier im Verzeichnis
     /etc/apache2/conf.d
    "Kann man machen, muss man aber nicht". Ich finde es so übersichtlich.
  2. Dem einen oder anderen fällt vielleicht auf, dass ich nicht verwende. Die nicht verwende. Die

Leg dir eine Testseite für PHP an:

sudo nano /var/www/vhost1/phptest.php

Dateiinhalt:

 

OK, das war schon alles. Jetzt nur noch das actions Modul im Apache2 aktivieren und die Services neu starten:

sudo a2enmod actions
sudo service php-fpm restart
sudo service apache2 restart

Jetzt kannst du FastCGI und PHP5 testen. Im Browser gibst du einfach http://IPADRESSE/phptest.php ein:

b2ap3_thumbnail_php.png

 

Wenn Ihr das Bild im Browser seht, ist es geschafft. Ansonsten musst du die einzelnen Schritte noch mal durchgehen. Wenn du nicht weiterkommst, schreibe einen Kommentar mit dem Problem. Auf nette Kommentare gibt es garantiert eine Antwort.

2448 Aufrufe
0 Kommentare

VMware vSphere hot add

VMware vSphere hot add

Mit der VMware vSphere hot add Funktion, kann der Systemadministrator die RAM-Kapazität einer laufenden virtuellen Maschine (VM) ohne Ausfallzeiten erhöhen.

VSphere hot add kann für VMs mit Hardwareversion 7 und höher, auf kompatiblen Betriebssystemen und mit VMware Tools aktiviert werden. vSphere hot add standardmäßig deaktiviert. Für die Aktivierung muss die VMs leider heruntergefahren werden. Als Administrator solltest du dir bereits bei der Installation überlegen hot add zu aktivieren. Ach ja, den RAM kannst du natürlich auch verkleinern. D. h., du kannst den Speicher kurzfristig erhöhen, wenn etwas besonders anliegt.

2697 Aufrufe
0 Kommentare

UEFI booten min VMWare Workstation

Wer die Installation von Geräten mit UEFI (Unified Extensible Firmware Interface) ausprobieren will, war bisher auf ein entsprchendes Gerät angewiesen. Mit einem kleinen Trick ist es jedoch möglich, VMWare Workstation 8 und 9 mit UEFI booten zu lassen.

UEFI in VMWare Workstation 8 und 9 akivieren

UEFI läst sich in VMWare Workstation 8 und 9 durch bearbeiten der .VMX Datei aktivieren. Hierzu wird in der .VMX Datei eine bestehenden virtuellen Maschine der Eintrag firmware="efi" gesetzt. Anschließend die .VMX Datei speichern und pre UEFI booten.

2494 Aufrufe
0 Kommentare

AWS senkt Preise für EC2, S3, RDS, ElastiCache und Elastic MapReduce

Amazon informierte heute seinen Kunden über eine deutliche Preissenkung.

Details sind dem englischsprachigem Amazon AWS Blog zu entnehmen. http://phpshaper.eu/1jDMzjv

1037 Aufrufe
0 Kommentare

Problem mit mod_rewrite? Debuggen hilft

Wer schon mal Rewrite Rules für das Apache 2 Modul mod_rewrite gebaut hat weiß: Es funktioniert auf Anhieb garantiert anders als erwartet.

Zum Glück kann man sehr einfach mod_rewrite das zu bringen, Debug-Ausgaben zu generieren. Fügt in Konfiguration der Website (/etc/apache2/sites-available/) oder die entsprechende .htaccess Datei folgende zwei Zeilen ein:

RewriteLog "/var/log/apache2/rewrite.log"

RewriteLogLevel 3

Wer alles ganz genau nachlesen möchte, hier die Links zur Dokumentation:

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritelog

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriteloglevel

2146 Aufrufe
0 Kommentare

Problem mit mod_rewrite? Debuggen hilft!

Apache 2 und mod_rewrite

Wer schon mal Rewrite Rules für das Apache 2 Modul mod_rewrite gebaut hat weiß: Es funktioniert auf Anhieb garantiert anders als erwartet.

Zum Glück kann man sehr einfach mod_rewrite das zu bringen, Debug-Ausgaben zu generieren. Fügt in Konfiguration der Website (/etc/apache2/sites-available/) oder die entsprechende .htaccess Datei folgende zwei Zeilen ein:

RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 3

Wer alles ganz genau nachlesen möchte, hier die Links zur Dokumentation:

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritelog

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriteloglevel

2170 Aufrufe
0 Kommentare

MySQL startet nicht mehr: File '' not found (Errcode: 2)

MySQL startet nicht mehr

Nach dem Neustart eures Server starte MySQL nicht mehr, das LOG enthält die gleichen oder ähnliche Meldungen:

120501 11:10:40 [Note] Plugin 'FEDERATED' is disabled.
120501 11:10:40  InnoDB: Initializing buffer pool, size = 32.0M
120501 11:10:40  InnoDB: Completed initialization of buffer pool
120501 11:10:40  InnoDB: Started; log sequence number 0 64255962
/usr/sbin/mysqld: File '' not found (Errcode: 2)
120501 11:10:40 [ERROR] Failed to open log (file '', errno 2)
120501 11:10:40 [ERROR] Could not open log file
120501 11:10:40 [ERROR] Can't init tc log
120501 11:10:40 [ERROR] Aborting
120501 11:10:40  InnoDB: Starting shutdown...
120501 11:10:45  InnoDB: Shutdown completed; log sequence number 0 64255962
120501 11:10:45 [Note] /usr/sbin/mysqld: Shutdown complete

Entscheidend ist die Zeile:/usr/sbin/mysqld: File '' not found (Errcode: 2)

Lösung:
Schaut in die Datei /var/log/mysql/mysql-bin.index und nehmt dort die "@"-Zeichen raus.

1970 Aufrufe
0 Kommentare

Mit Java SE die Windows Registry lesen. Ohne JNI

Mit Java SE die Windows-Registry lesen. Ohne JNI

Ich habe meinen alten Quellcode Archive aufgeräumt und noch das ein oder ander nützliche gefunden. Heute stelle ich euch eine sehr einfache Möglichkeit vor, die Windows-Registry mit Java auszulesen. JNI oder zusätzliche Bibliotheken braucht ihr nicht.

Vor vielen Jahren stand ich als PL for dem Problem Einstellungen aus der Windows-Registry auslesen zum müssen. Im Internet fanden sich dazu zwar allerhand Tipps und Beispiel. Es war jedoch immer notwendig per JNI das Win32k API aufzurufen. Die kam aber leider nicht infrage. Die Deployment Richtlinie war gegen mich.

In den Java Docs ist mir dann mehr oder weniger zufällig die Klasse Preferences über den Weg gelaufen. Es gibt für jede Plattform eine angepasste Implementierung. Die für Windows, WindowsPreferences, speichert Daten in der Registry. Der Quellcode war auf kickjava veröffentlicht. Der Rest war dann eigentlich ganz einfach.

Der Quellcode ist auf Google Code abgelegt. Da die meisten wahrscheinlich keine Lust haben ein svn Repository einzubinden den Quellcode in ein ZIP-File gestopft und unter DOWNLOADS abgelegt. Auf Google Code ist zusätzlich eine einfache Testklasse, anhand ihr auch die Verwendung anschauen könnt.

Noch etwas zum Schluss. Ich weiß Google Code ist out und alle und jeder ist jetzt bei github.com. Aber was soll's, ist ja auch schon etwas angestaubter Code.

2543 Aufrufe
0 Kommentare
IT Architektur- und Strategieberatung
IT Architektur- und Strategieberatung
Management Consultant
• IT Architektur • IDM • IT Security • Sicherheitsanalyse • Migration • IT Modernisierung • Code-Review • Code-Audit
Bonner Str. 1
Bad Soden, Hessen
65812
Deutschland
info@do1o.de
+4961965255150
SiteLock