Archiv der Kategorie: Server

Wiki redirected

Bislang war das Wiki zu diesem Blog nur über eine unsichere Subdomain erreichbar. Insbesondere für das Verfassen von Artikeln stellt dies ein Risiko dar, daher habe ich mit Hilfe der Anleitungen aus diesen beiden Artikel (No.1 & No.2) einen Redirect eingerichtet.

Nun ist das Wiki unter https://muehlenkamp.com/wiki erreichbar. Neue Artikel werden auch bald folgen…

Microsoft SQL Server 2014 BI x64 – SQL Server Data Tools (SSDT) x86?

Wer auf seinem Server oder seinem Entwickler-System eine Microsoft SQL Server 2014 Instanz im 64bit-Modus installiert hat und nun die SQL Server Data Tools (SSDT) verwenden möchte, welche nur als 32bit-Version verfügbar sind, muss darauf achten, die Installation dieser Shared Features als neue Installation im Setup-Prozess auszuführen. Danach ist es möglich, die Tools beispielsweise in Microsoft Visual Studio 2013 zu verwenden.

 

nextcloud – HTTP error 500 nach update (memory caching)

Nach einem fehlgeschlagenen Update von Version 11.0.4.1 auf die aktuelle Version 12.0.4. auf dem Raspberry Pi 2 konnte ich die meinen privaten Onlinespeicher nicht mehr erreichen.  Nach dem Aufruf der URL reagierte der Apache-Webserver mit dem HTTP Error 500 (Internal Server Error). Ein Blick in das Fehlerprotokoll (dieses wird im Datenverzeichnis gespeichert, bei Verwendung des Editors ’nano‘ kann mit der Tastenkombination ‚Strg+W+V‘ in die letzte Zeile gesprungen werden) verriet, dass die ‚Memory Caching‘-Funktion scheinbar Verursacher der Fehlers ist. Daraufhin habe ich mir die Konfigurationsdatei im Installationsverzeichnis von Nextcloud angeschaut und den folgenden Eintrag gefunden:

'memcache.local' => '\\OC\\Memcache\\APC',

Nachdem ich diese Zeile auskommentiert habe, konnte ich das Update beenden. Eine kurze Recherche hat ergeben, dass die ‚Memory Caching‘-Funktion zur signifikanten Verbesserung der Server-Performance dient, weshalb diese genutzt werden sollte. Im Admin-Bereich erhalte ich nun auch diese Einrichtungswarnung, weshalb ich mich nach der erfolgreichen Syncronisierung aller mit dem Server verbundenen Clients um die (Re-) Aktivierung der Funktion kümmern werde.

Der PHP-OPcache ist nicht richtig konfiguriert. Für eine bessere Leistung empfiehlt es sich folgende Einstellungen in der php.ini vorzunehmen:
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Das Logo von Nextcloud ist Eigentum der Nextcloud GmbH aus Stuttgart, Deutschland.

HandBrake – Open Source Video Transcoder | Linux Ubuntu Server 12.04.2 LTS

An dieser Stelle eine kurze Vorstellung der Software HandBrake, die es als Kommandozeilen-Variante für Linux-Systeme gibt. Bitte beachten, dass die Installation von Fremdquellen immer das System gefährden. Um die Software zu installieren sind folgende Befehle auszuführen:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo apt-get update
sudo apt-get install handbrake-cli

Danach kann die Software unter Verwendung von Kommandozeilenbefehlen sowie Presets (voreingestellte Transkodierparameter) auf dem Server ausgeführt werden.

wiki.ubuntuusers – HandBrake

wiki.ubuntuusers – Hinzufügen von Fremdquellen

HandBrake – Scripting and Automation

HandBrake – Built-In Presets

Das Logo ist Eigentum des ‚The HandBrake Team‘.

 

 

Erweiterte Einstellungen – Plex Media Server Linux Ubuntu Server 12.04.2 LTS

Nachdem im ersten Beitrag zum Plex Media Server die Installation über Unity, einem Graphical User Interface (GUI), unter Verwendung des Terminals beschrieben wurde, soll nun die Installation und Konfiguration über ein SSH-Terminal nachgereicht werden. Dabei wird ein besonderes Augenmerk auf die Parameter der Datei Preferences.xml. 

Installation und Einrichtung

1. Schritt: Zunächst muss in der Datei sources.list (/etc/apt/sources.list), in welchem die sogenannten Repositories (also die Quellen für die Pakete) enthalten sind der folgende Eintrag hinzugefügt werden:

deb http://www.plexapp.com/repo lucid main

Danach wird der Repository-Key installiert:

wget http://plexapp.com/plex_pub_key.pub
$ sudo apt-key add plex_pub_key.pub
$ rm plex_pub_key.pub

Nun wird die eigentliche Installation gestartet:

$ sudo apt-get update
$ sudo apt-get install plexmediaserver

Die wichtigsten Befehle für den Plex Media Server lauten:

sudo service plexmediaserver start
sudo service plexmediaserver stop
sudo service plexmediaserver restart

Nachdem die Installation abgeschlossen ist, kann mit der Einrichtung begonnen werden.

2. Schritt: Standardmäßig ist der Zugriff auf die Konfiguration des Medienservers nur über den localhost möglich. Da eine grafische Benutzeroberfläche auf dem Server nicht zur Verfügung steht, muss für die erste Nutzung eine Option in der Datei Preferences.xml hinzugefügt werden. Man findet die Datei unter Ubuntu in /etc/default/plexmediaserver. Durch Hinzufügen von disableRemoteSecurity = "1" in den Preferences wird die Konfigurationsmaske über jeden beliebigen Browser aufrufbar:

http://IP-ADDRESS:32400/manage/index.html

3. Schritt: Auf jeden Fall sollte man sich ein „myplex“-Benutzeraccount anlegen, um den Server später besser administrieren zu können. Die Zugangsdaten sowie weitere wichtige Einstellungen kann man über verschiedene Eingabemasken zur Verfügung stellen. Am Ende sollten folgende Parameter in der Datei Preferences.xml  enthalten sein:

MachineIdentifier="-"
ProcessedMachineIdentifier="-"
AcceptedEULA="1"
FirstRun="0"
PlexOnlineMail="-"
PlexOnlineToken="-"
PlexOnlineUsername="-"
PublishServerOnPlexOnlineKey="1"
ManualPortMappingMode="1"
FriendlyName="-"

Dabei steht „-“ für individuelle Angaben.

Danach wird  disableRemoteSecurity = "1" entfernt, jedoch steht der Server weiterhin nach Eingabe der „myplex“-Benutzerdaten zur Verfügung.

Pfad zu den wichtigen Dateien unter Ubuntu:

/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Preferences.xml
/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/

Plex Media Server – Advanced Preferences

Plex Media Server – Installation „How To“

Plex Media Server – Plex Nine Tips & Tricks

Plex Media Server – Publishing Plex Media Server

Zur Vereinfachung der Administration können auch direkte URL-Kommandos verwendet werden. Diese sind insbesondere bei der schnellen Ausführung von Befehlen hilfreich.

Plex Media Server – URL Command

Das Logo ist Eigentum der Entwickler der Website plexapp.

SSL-Verschlüsselung von Websites Apache HTTP Server | Linux Ubuntu Server 12.04.2 LTS

Bereits im Eintrag vom 30. April 2013 habe ich ansatzweise erläutert, mit welchen Mitteln eine SSL-Verschlüsselung des Webservers zu realisieren ist. Um dieses Wissen anzuwenden, werden nun jene Schritte erläutert, um eine konkrete Subdomain http://xy.meinedomain.com durch ein SSL-Zertifikat abzusichern. An dieser Stelle wird davon ausgegangen, dass ihr bereits über eine abgeschlossene Installation des Webservers als auch des entsprechenden Dienstes verfügt. Dieser soll nunmehr über die abzusichernde Subdomain aufgerufen werden.

Zunächst nochmals die wichtigsten Links zum Thema:

Wiki.Ubuntuusers.de – Apache SSL

Heise Security SSL für lau

Zertifizierungstelle StartSSL

Ein SSL-Zertifikat kann durch kommerzielle Anbieter (Verisign, RapidSSL etc.) ausgestellt werden, dessen Preisen sich nach Authentifizierungsmethode und Laufzeit richten. Es gibt jedoch auch einen israelischen Anbieter (StartSSL), der ein kostenloses Zertifikat für ein Jahr Laufzeit ausstellt. Dessen Wurzelzertifikat ist bereits in allen gängigen Webbrowsern enthalten ist. Dadurch wird keine Fehlermeldung bei Aufruf der Domain ausgegeben. StartSSL verwendet als Authentifizierungsmethode eine Domainvalidierung. Diese ist Voraussetzung für die Ausstellung eines Zertifikats.

Theorie:

  1. Aktivierung des entsprechenden Apache-Moduls
  2. Änderung des Port-Konfiguration des Apache-Webservers
  3. Generierung eines Schlüsselpaars (öffentlicher und privater Schlüssel)
  4. Auslesen des öffentlichen Schlüssels und Erstellung eines Certificate Signing Request (CSR)
  5. Übermittlung des CSR an die Certificate Authority (CA)
  6. Ausstellen des Zertifikats durch die CA
  7. Speicherung des Zertifikats auf dem Webserver und Auslieferung an die Clients

Praxis:

Alle Arbeiten an der Konfiguration des Webservers sollten im Ordner /etc/apache2 durchgeführt werden.

Einige Befehle für den Apache-Webserver:

sudo service apache2 start
sudo service apache2 stop
sudo service apache2 restart
sudo service apache2 force-reload

1. Schritt: Änderung der Konfiguration ports.conf (/etc/apache2) des Apache-Webservers, so dass dieser auf Anfragen des Ports 443 reagiert (Standard-Port für HTTPS-Verbindungen). Falls der Server über einen SSH-Dienst verfügt, kann die Konfiguration bequem über eine SFTP-Verbindung übertragen und am lokalen Rechner bearbeitet werden. Jedoch ist die Bearbeitung mittels eines SSH-Terminals und einem passenden Editors (z.B. vi) in der Regel komfortabler.

sudo vi /etc/apache2/ports.conf

Die folgenden beiden Argumente sollten nicht auskommentiert, also aktiv sein:

[IfModule mod_ssl.c]
Listen 443
[/IfModule]
[IfModule mod_gnutls.c]
Listen 443
[/IfModule]

Bitte <> anstelle [] verwenden!

2. Schritt: Danach kann das SSL-Modul aktiviert werden.

sudo a2enmod ssl

Über den Befehl sudo a2dismod ssl kann das Modul auch jederzeit wieder deaktiviert werden.

3. Schritt: Nun wird das Schlüsselpaar (öffentlicher und privater Key) generiert:

openssl genrsa -out xy.meinedomain.com.com.key 2048

Anschließend kann das CSR erstellt werden:

openssl req -new -nodes -newkey rsa:2048 -keyout xy.meinedomain.com.key -out xy.meinedomain.com.csr

Dabei werden einige Punkte abgefragt sowie ein Challenge Password gefordert. Dieser Punkt kann mit einer Enter-Bestätigung übersprungen werden. Nach diesem Schritt befinden sich zwei neue Dateien xy.meinedomain.com.key sowie xy.meinedomain.com.csr im Arbeitsordner /etc/apache2. Diese sollten im Anschluss auf den lokalen Rechner gespeichert werden.

3. Schritt: Jetzt wird mit dem Anlegen eines Benutzeraccount bei StartSSL begonnen: Control Panel – Sign-Up. Nachdem alle Angaben gemacht wurden, wird die Validierung der Domain durchgeführt: Validations Wizard – „Type“ Domain Name Validation. Abgeschlossen wird der Vorgang mit der Zusendung und Eingabe des Bestätigungscodes.

4. Schritt: Im Anschluss kann das Zertifikat beantragt werden: Certificates Wizard – „Certificate Target“ WebServer SSL/TLS – Skip „Generate Private Key“ – Submit Certificate Request (CSR). Hier den Inhalt der Datei  xy.meinedomain.com.csr einfügen und übermitteln. Danach den „Top Target Domain“ auswählen und Subdomain festlegen. Damit ist der Prozess abgeschlossen. Mit einem Klick auf „Continue“ wird der Zertifikatinhalt erzeugt. Dieser wird vollständig in eine Textdatei kopiert und mit der Endung .crt abgespeichert.

5. Schritt: Zuletzt müsst ihr noch die Zertifikate „StartComm Root CA (PEM encoded)“ und das „Class 1 Intermediate Server CA“ herunterladen. Nun alle Dateien auf den Server übertragen und  in einem separaten Ordner unter /etc/apache2 abspeichern.

Abschließender Schritt: Abschließend muss ein VirtualHost für den SSL-Zugriff angelegt werden. Falls der abzusichernde Webservice bereits über eine Subdomain erreicht wird, kann auch eine Änderung notwendig sein. In der Regel werden die VirtualHost-Dateien unter /etc/apache2/sites-available unter ihrem Subdomainnamen abgespeichert. Die beispielhafte Konfiguration ist nachfolgend dargestellt:

2013-08-05_190730

 

Durch Ausführen eines Neustarts des Apache-Webservers wird die neue Konfiguration übernommen und der Webservice sollte nun verschlüsselt über die Subdomain aufgerufen werden können.

Plex Media Server Linux Ubuntu Server 12.04.2 LTS

Die Einrichtung des Medienservers „Plex“ gestaltet sich denkbar einfach. Zunächst muss das entsprechende Programmpaket heruntergeladen und installiert werden.

Installation über das Terminal:

sudo apt-get update

sudo apt-get install plexmediaserver

oder Installation über das Software Center durch Download des Programmpaketes

Nach erfolgreicher Installation kann der Server konfiguriert werden. Dies kann über einen beliebigen Webbrowser (sowohl über localhost als auch im Netzwerk) erledigt werden:

http://localhost:32400/web/index.html

Die Beschreibung der genauen Einrichtung spare ich an dieser Stelle aus, da gibt es im Netz genügend Informationen. Wichtig ist, dass nach der Installation ein neuer Nutzer plex zur Verfügung steht. In den entsprechenden Verzeichnissen muss dieser über die korrekten Rechte verfügen, um die reibungslose Funktion zu gewährleisten.

Dieser Befehle fügt den User plex der gewünschten Benutzergruppe hinzu:

sudo chown YOURUSER:plex -R /home/user/MEDIADIRECTORY

Und mit diesem Befehle wird dem User Lese-/Schreibrecht eingeräumt:

sudo chmod 770 -R /home/user/MEDIADIRECTORY

FTP Server „vsftpd“ Linux Ubuntu Server 12.04.2 LTS

Um einen einfachen und sicheren Austausch von großen Dateien zu ermöglichen, soll ein FTP-Serverdienst auf dem System zur Verfügung stehen.

sudo apt-get install vsftpd

no images were found

Nach der Installation kann die Konfiguration über die Datei /etc/vsftpd.conf erledigt werden. Wichtig sind mir dabei folgenden Punkte:

  • Keine anonyme Anmeldungen
  • Nur lokal angelegte Benutzer haben Zugriff
  • Absicherung durch SSL-Verschlüsselung

Um die Datei bearbeiten zu können, kann sie mit root-Rechten unter Verwendung des folgenden Befehls im Terminal geöffnet werden:

sudo vi /etc/vsftpd.conf

Zunächst muss die folgende Zeile mit einem # kommentiert werden.

#anoymous_enable=YES

Danach den lokalen Benutzer die Verwendung des FTP-Servers erlauben:

local_enable=YES

Damit der FTP-Server auch Daten empfangen kann, muss das „Globale Schreiben“ aktiviert sein:

write_enable=YES

Eine zusätzliche Absicherung wird durch eine SSL-Verschlüsselung erreicht. Damit alle Benutzer zur Verwendung einer gesicherten Verbindung verwenden, muss folgende Zeile hinzugefügt werden:

force_local_data_ssl

Mit dem Befehl ESC :wq  wird die Bearbeitung der Konfiguration vorerst abgeschlossen.

Nun muss noch ein passendes Zertifikat erstellt werden, damit der Datenverkehr darüber verschlüsselt bzw- abgesichert wird.

sudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Im Dialog müssen einfach alle Fragen beantwortet werden.

Um weitere Konfigurationen vorzunehmen, ist der dieser Artikel empfehlenswert.