seeseekey.net - Invictus Deus Ex Machina

Wenn man einen OpenVPN-Server in der Standardkonfiguration betreibt, wird man sich unter Umständen wundern, an welcher Stelle ist das OpenVPN Log zu finden ist. Das liegt daran das der OpenVPN-Server das ganze in /var/log/syslog speichert. Möchte man nun die OpenVPN betreffenden Punkte filtern so sollte man auf der Konsole folgendes eingeben:

grep VPN /var/log/syslog

Alternativ kann man auch die OpenVPN-Konfiguration anpassen. Dazu muss die Datei /etc/openvpn/server.conf bearbeitet werden. Dort gibt es eine Option log-append, welche wie folgt angepasst wird:

log-append /var/log/openvpn.log

Nach einem Neustart des Service mittels:

service openvpn restart

wird die neu eingestellte Logdatei genutzt.

Unter Ubuntu gibt es neben den halbjährlichen Versionen auch solche welche über einen längeren Zeitraum unterstützt werden. Diese sogenannten Long Term Releases erscheinen dabei alle zwei Jahre und werden fünf Jahre lang unterstützt. Bei Ubuntu kann man das System nun so konfigurieren das nur LTS Versionen oder jedes Release zum Upgrade angeboten wird. Möchte man diese Einstellung ändern, so muss man im Terminal:

nano /etc/update-manager/release-upgrades

eingeben. Im Editor öffnet sich dann folgende Datei:

# Default behavior for the release upgrader.

[DEFAULT]
# Default prompting behavior, valid options:
#
#  never  - Never check for a new release.
#  normal - Check to see if a new release is available.  If more than one new
#           release is found, the release upgrader will attempt to upgrade to
#           the release that immediately succeeds the currently-running
#           release.
#  lts    - Check to see if a new LTS release is available.  The upgrader
#           will attempt to upgrade to the first LTS release available after
#           the currently-running one.  Note that this option should not be
#           used if the currently-running release is not itself an LTS
#           release, since in that case the upgrader won't be able to
#           determine if a newer release is available.
Prompt=lts

Dort kann man unter Prompt die gewünschte Einstellung festlegen und bekommt damit vom System nur noch Hinweise wenn die gewünschten Versionen erscheinen.

Für einen Server hatte ich vor einigen Tagen unter Ubuntu 14.04 LTS eine Netzwerkbrücke eingerichtet. Die /etc/network/interfaces Datei sah danach in etwa so aus:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto br0
iface br0 inet dhcp
bridge_ports eth0

Nach einem Neustart gab es dann allerdings ein Problem. Der Server war nicht mehr erreichbar. Der Grund dafür war simpel — es fehlte das Paket bridge-utils — nach der Installation desselben mittels:

apt-get install bridge-utils

funktionierte die Netzwerkbrücke wieder ohne Probleme.

Bei einer Aktualisierung eines Ubuntusystems mittels des Paketmanagers wurde der Vorgang am Ende mit der Zeile:

The link /vmlinuz.old is a damaged link
Removing symbolic link vmlinuz.old 
 you may need to re-run your boot loader[grub]

abgeschlossen. Die Lösung für das Problem ist dabei relativ unkompliziert. Es reicht auf der Konsole:

update-grub

einzugeben. Damit wird die menu.lst erneut geschrieben.

Um die Versionsnummer eines installierten Postfix zu ermitteln, reicht es im Terminal folgendes einzugeben:

postconf -d mail_version

Anschließend erhält man eine Ausgabe nach dem Schema:

mail_version = 2.11.0

Da die Parameter aus der main.cf ausgelesen werden, ist es wichtig den Parameter –d anzugeben. So werden nicht die überschriebenen Werte zurückgegeben, sondern die Standardwerte, in diesem Fall die korrekte Versionsnummer.

Da sitzt man vor seinem Ubuntu-Upgrade und eine unbedachte Handbewegung später hat man das Upgrade abgebrochen. In einem solchen Fall sollte man das Upgrade natürlich fortsetzen, wer möchte schon gerne ein halbfertiges System. Wurde die SSH Verbindung unterbrochen, muss sich im ersten Schritt mit dem Server verbunden werden. Anschließend gibt man im Terminal folgendes ein:

dpkg --configure -a
apt-get dist-upgrade
apt-get autoremove
apt-get autoclean
reboot

Danach sollte der Server auf dem aktuellsten Stand sein und das Upgrade durchgeführt sein. Sollte man das Upgrade vor dem Umstellen der Paketlisten abgebrochen haben, dürfte ein einfaches „do-release-upgrade“ genügenum den Upgrade-Vorgang erneut zu starten.

Standardmäßig hört der Mail Transfer Agent Postfix auf dem Port 25. Möchte man nun das Postfix auch auf einem zusätzlichen Port hört, so muss man die „/etc/postfix/master.cf“-Datei bearbeiten. Dort sucht man die Zeile:

smtp      inet  n       -       -       -       -       smtpd

Unter der Zeile fügt man die Zeile:

587      inet  n       -       -       -       -       smtpd

hinzu. Anschließend muss der Dienst noch neugestartet werden:

service postfix restart

Damit hört Postfix neben Port 25 nun auch auf Port 587, dem bevorzugten Port für die Maileinlieferung von Clients.

Dank der Heartbleed-Sicherheitslücke, sollten Applikationen welche OpenSSL nutzen, neue Zertifikate erzeugen. Dies trifft auch auf den Mailserver Dovecot zu. Um hier ein neues Zertifikat zu erzeugen gibt man im Terminal folgendes ein:

openssl req -new -x509 -days 3650 -nodes -out /etc/dovecot/dovecot.pem -keyout /etc/dovecot/private/dovecot.pem

Die zeitliche Gültigkeit des Zertifikats sollte man dabei je nach seinen Bedürfnissen über den Parameter „days“ anpassen. Anschließend muss Dovecot neugestartet werden:

service dovecot restart

Nach dem Neustart wird das neue Zertifikat genutzt.

Weitere Informationen gibt es unter:
http://wiki2.dovecot.org/SSL/CertificateCreation

Für Ubuntu sind eine Reihe von Proxyservern verfügbar. Die meisten dieser Dienste sind relativ schwergewichtig, was sich unter anderem auf die Konfiguration auswirkt. Tinyproxy und Polipo dagegen gehören zu den leichtgewichtigeren Varianten. Tinyproxy scheidet allerdings aus, da er keine Authentifikation anbietet. Es existiert zwar ein entsprechender Bugreport, aber augenscheinlich wird dieser nicht bearbeitet. So bleibt nur noch Polipo. Um dieses einzurichten muss es im ersten Schritt installiert werden:

apt-get install polipo

Anschließend kann die Konfiguration bearbeitet werden

nano /etc/polipo/config

In diesem Fall soll ein Server konfiguriert werden welcher von außen mittels Authentifizierung erreichbar ist. Dazu müssen folgende Optionen aktiviert werden:

### Basic configuration
### *******************

proxyAddress = "::0"        # both IPv4 and IPv6

### Authentification
### *******************

authCredentials=seeseekey:geheim

Nachdem die Konfiguration geändert wurde muss der Dienst neugestartet werden:

service polipo restart

In den Proxyeinstellungen für die Clientseite muss der Server, Port, Nutzername und das Passwort angegeben werden. Polipo nutzt dabei standardmäßig den Port 8123. Bei der Authentifizierung sollte man beachten das diese unverschlüsselt erfolgt und somit nicht wirklich sicher ist.

Die Proxy-Einstellungen von FoxyProxy

Für den Firefox empfielt sich auf Clientseite das AddOn FoxyProxy, welcher die Proxy-Konfiguration von Firefox erheblich verbessert. Damit auch DNS-Anfragen beim Proxy aufgelöst werden, sollte unter „about:config“ die Option „Network.proxy.socks_remote_dns“ auf true gesetzt werden. FoxyProxy erledigt dies in der Standardeinstellung automatisch.

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/Polipo

Betreibt man einen Minecraft-Server auf einem Ubuntu basierten Server, so möchte man meist, das dieser mit dem Server startet. Dafür benötigt man ein Init-Skript. Natürlich kann man sich dieses selbst schreiben und damit einige Minuten bis Stunden verbringen. Mit Hilfe des in der Minecraft Wiki stehenden Skriptes geht das ganze aber wesentlich schneller. Auf der entsprechenden Seite der Wiki findet sich das Skript neben einer Installationsanleitung. Wenn man das ganze auf seinem Server eingerichtet hat, startet Minecraft automatisch und kann mittels des „service“-Kommandos kontrolliert werden.