30. Mai 2011

MiniDLNA - Kleiner aber feiner DLNA-Server

Das Projekt MiniDLNA stellt eine Server-Software  für DLNA/UPnP-AV Clients bereits, die auch auf kleinen NAS-Servern läuft.
Leider funktioniert das Statische-File nicht auf einem Armel-Server. Man muss also das ganze aus dem Sourcecode selbst kompilieren.
Vorher werden jedoch noch einige Pakete benötigt:
apt-get install libavcodec-dev libavformat-dev libavutil-dev libflac-dev libvorbis-dev libogg-dev libid3tag0-dev libexif-dev libjpeg62-dev libsqlite3-dev
Danach den Sourcecode entpacken und kompilieren:
tar xvzf minidlna_1.0.19_src.tar.gz

cd minidlna1.0.19

make
Nach erfolgreichen kompilieren noch die Programmdatei und die Konfiguration kopieren:
cp minidlna /usr/sbin/
cp minidlna.conf /etc
und die /etc/minidlna.conf anpassen. Viel ist dabei nicht zu tun. Als Standardschnittstelle ist eth0 eingestellt, sollte der Server eine andere nutzen, muss die in der minidlna.conf eingetragen werden.
Dann sollte man das media_dir nach den eigenen Erfordernissen ändern, also dass Verzeichnis in dem die Media-Dateien liegen. Das kann für Audio, Video und Bilder auch getrennt erfolgen.
Wer man kann noch den Namen des Servers (friendly_name) ändern.

28. Mai 2011

Webserver mit lighttpd

Anleitung für die Installation eine Webservers mit lighttpd, php5 und sqlite3 unter Debian Squeeze

folgende Pakete werden benötigt:

apt-get install lighttpd php5-cgi sqlite3 php5-sqlite

Anschließend muss noch php5 aktiviert werden:
lighty-enable-mod fastcgi fastcgi-php

/etc/init.d/lighttpd reload
Danach sollte der Server bereits verfügbar sein. Wenn statt der Startseite nur das Verzeichnis mit der Datei index.lighttpd.html angezeigt wird, so liegt das an einem Fehler in der Datei /etc/lighttpd/lighttpd.conf. Hier werden unter index-file.names alle möglichen Startseiten definiert. Bei der Default-Startseite ist jedoch ein Leerzeichen zuviel. Wenn man aus " index.lighttpd.html" das Leerzeichen am Anfang entfernt und den Server neustartet wird die Startseite angezeigt:

Im Verzeichnis /var/www nun die Datei index.php anlegen:
cat /var/www/index.php

Damit kann man gleich die Funktionsfähigkeit von PHP testen.

Zusätzliche Module für php5 lassen sich ebenfalls problemlos installieren. So z.B.:
apt-get install php5-gd

Absichern mit Fail2ban

Installation mit
apt-get install fail2ban

Anschließend die Konfigurationsdatei erstellen:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

In der jail.local sollten einige Anpassungen vorgenommen werden:
Alle IP-Adressen, die nicht blockiert werden sollen (z.B. Rechner im eigenen LAN)
ignoreip = 127.0.0.1 192.168.178.xxx

Empfängeradresse für evtl. Warnemails
destemail = root@localhost

Was soll erfolgen, nur Ban oder auch eine (ausführliche) EMail
action = %(action_mwl)s

Danach noch einzelne Einstellungen für die verschiedenen überwachten Dienste wie SSH, Proftpd usw.

SSMTP als Alternative zu sendmail

Wenn es nur darum geht, hin und wieder eine Mail vom Server zu verschicken benötigt man kein sendmail. Es genügt das kleinere SSMTP zum Verschicken.

Installiert wird es mit
apt-get install ssmtp

Danach müssen noch die beiden folgenden Dateien konfiguriert werden:
cat /etc/ssmtp/ssmtp.conf
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000 # Make this empty to disable rewriting. root=postmaster # The place where the mail goes. The actual machine name is required no # MX records are consulted. Commonly mailhosts are named mail.domain.com mailhub=smtp.live.com:587 # Beispiel für live/hotmail # Where will the mail seem to come from? #rewriteDomain= # The full hostname hostname=SERVERNAME # Are users allowed to set their own From: address? # YES - Allow the user to specify their own From: address # NO - Use the system generated From: address FromLineOverride=YES AuthUser=LOGIN-Name AuthPass=Passwort UseTLS=yes UseSTARTTLS=yes



# cat revaliases
# sSMTP aliases
#
# Format: local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:LOGIN-Name:smtp.live.com:587
www-data:LOGIN-Name:smtp.live.com:587

Da die Datei ssmtp.conf das Passwort im Klartext enthält sollte man verhindern, dass unbefugte Nutzer diese auslesen können. Andererseits muss aber auch sichergestellt werden, dass Dienste und User die Datei auslesen können.