Debian MediaWiki: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 12: Zeile 12:
  apt-get install imagemagick
  apt-get install imagemagick


  cd /usr/local/src
mkdir -p /usr/local/src/mediawiki
  cd /usr/local/src/mediawiki
Download der aktuellsten Version von der Mediawiki-Seite: http://www.mediawiki.org/wiki/Download (z.B. Mediawiki 1.16.0):
Download der aktuellsten Version von der Mediawiki-Seite: http://www.mediawiki.org/wiki/Download (z.B. Mediawiki 1.16.0):
  wget http://download.wikimedia.org/mediawiki/1.16/mediawiki-1.16.0.tar.gz
  wget http://download.wikimedia.org/mediawiki/1.16/mediawiki-1.16.0.tar.gz
Zeile 107: Zeile 108:
  #Prevent non logged-in users from editing
  #Prevent non logged-in users from editing
  $wgGroupPermissions['*']['edit'] = false;
  $wgGroupPermissions['*']['edit'] = false;
Jeder User kann den Skin einstellen, der verwendet werden soll, wenn der jeweilige User eingeloggt ist. Für alle nicht eingeloggten User kann der Standard-Skin folgendermaßen gesetzt werden ("alter" Standard-Skin: '''''monobook'''''; "neuer" Wikipedia-Skin: '''''vector'''''):
$wgDefaultSkin = 'vector';


In der linken oberen Ecke des Wiki's kann ein beliebiges Logo angezeigt werden. Das Logo muss auf dem Server in Form von jpg- bzw. png- Bildern hinterlegt werden. Desweiteren kann ein benutzerdefiniertes FavIcon im Browser angezeigt werden. Dieses wird im Browser in der Adressleiste und in den Favoriten angezeigt. Zunächst das Logo z.B. '''''logo.png''''' und '''''favicon.ico''''' mittels WinSCP auf den Server ins Verzeichnis /var/www/mediawiki/images/ transferieren und die Eigentümerrechte setzen
In der linken oberen Ecke des Wiki's kann ein beliebiges Logo angezeigt werden. Das Logo muss auf dem Server in Form von jpg- bzw. png- Bildern hinterlegt werden. Desweiteren kann ein benutzerdefiniertes FavIcon im Browser angezeigt werden. Dieses wird im Browser in der Adressleiste und in den Favoriten angezeigt. Zunächst das Logo z.B. '''''logo.png''''' und '''''favicon.ico''''' mittels WinSCP auf den Server ins Verzeichnis /var/www/mediawiki/images/ transferieren und die Eigentümerrechte setzen
Zeile 120: Zeile 118:
Das Favicon wird mit der Variable $wgFavicon bestimmt:
Das Favicon wird mit der Variable $wgFavicon bestimmt:
  $wgFavicon = "/wiki/images/'''''favicon.ico'''''";
  $wgFavicon = "/wiki/images/'''''favicon.ico'''''";
==Optional: Neues Skin und Bearbeiten Leiste==
Mit Version 1.16 wurde ein neuer Skin eingeführt, den Wikipedia als neuen Standardskin verwendet. Zusätzlich mit diesem Skin wurden unter der sog. Usability-Initiative eine neue Bearbeiten-Werkzeugleiste eingeführt, die das Bearbeiten von Artikeln vereinfacht. Beide Neuerungen sind relativ einfach umsetzbar. Für die erweiterte Bearbeiten-Leiste ist die Installation einer Extension erforderlich.
===Neue Bearbeiten Leiste===
cd /usr/local/src/mediawiki
wget http://upload.wikimedia.org/ext-dist/UsabilityInitiative-MW1.16-r74799.tar.gz
tar -xzf UsabilityInitiative-MW1.16-r74799.tar.gz -C /var/www/mediawiki/extensions
Extension aktivieren:
vi /var/www/mediawiki/LocalSettings.php
Folgende Ergänzungen einfügen (Vor der Zeile '''''# If PHP's memory limit is very low, some operations may fail.'''''):
// UsabilityInitiative/Vector
require_once("$IP/extensions/UsabilityInitiative/Vector/Vector.php");
$wgVectorModules['editwarning']['global'] = false; // Don't enable EditWarning globally
$wgVectorModules['editwarning']['user'] = true; // Allow users to enable EditWarning in their preferences
$wgVectorUseSimpleSearch = true; // Need this as well for SimpleSearch
$wgDefaultSkin = 'vector'; // If you want to change the default skin for new users
$wgVectorUseIconWatch = true; //Enable star icon to add/remove page from watchlist
// UsabilityInitiative/WikiEditor
require_once("$IP/extensions/UsabilityInitiative/WikiEditor/WikiEditor.php");
$wgDefaultUserOptions['usebetatoolbar-cgd'] = 1;  // Default user preference to use toolbar dialogs
$wgWikiEditorModules['toolbar']['global'] = true;  // Enable the WikiEditor toolbar for everyone
$wgWikiEditorModules['toolbar']['user'] = false;  // Don't allow users to turn the WikiEditor toolbar on/off individually
===Vector Skin===
Jeder User kann selbts den Skin einstellen, der verwendet werden soll (Einstellungen/Aussehen). Hier kann einfach der neue Skin '''''Vector''''' aktiviert werden. D.h. jeder eingeloggte User kann seinen egenen Lieblingsskin verwenden. Der Standardskin, der immer dann verwendet wird, wenn kein User eingeloggt ist, bzw. für alle neu angelegten User, wird via Localsettings.php eingestellt.
vi /var/www/mediawiki/LocalSettings.php
Defaultskin ändern:
$wgDefaultSkin = 'vector';





Version vom 19. Oktober 2010, 22:41 Uhr

Installation von Mediawiki

Mediawiki ist das Wikisystem hinter www.Wikipedia.de. Obwohl Mediawiki in den Debian-Repositories enthalten ist, wird diese hier nicht verwendet, sondern die letzte stabile Version von der Mediawiki Homepage (http://www.mediawiki.org). Die Installation ist kaum aufwändiger als via apt-get, dafür kommt Version 1.16.0 (Donwload Version) anstatt 1.12.0-2 (Debian Version)zum Einsatz. Die Download-Version bietet zusätzlich den neuen Skin, der auch auf Wikipedia zum Einsatz kommt.

Voraussetzung:

→ Webserver
→ SQL-Server


Installation

apt-get update
apt-get install imagemagick
mkdir -p /usr/local/src/mediawiki
cd /usr/local/src/mediawiki

Download der aktuellsten Version von der Mediawiki-Seite: http://www.mediawiki.org/wiki/Download (z.B. Mediawiki 1.16.0):

wget http://download.wikimedia.org/mediawiki/1.16/mediawiki-1.16.0.tar.gz

Entpacken:

tar xvfz mediawiki-1.16.0.tar.gz

Verschieben auf den Webserver:

mv mediawiki-1.16.0 /var/www/mediawiki

Apache Konfigurationsdatei anlegen:

vi /etc/apache2/conf.d/mediawiki.conf

Folgende Zeilen einfügen:

Alias /wiki /var/www/mediawiki

<Directory /var/www/mediawiki/>
       Options +FollowSymLinks
       AllowOverride All
       order allow,deny
       allow from all
</Directory>

# some directories must be protected
<Directory /var/www/mediawiki/config>
       Options -FollowSymLinks
       AllowOverride None
</Directory>
<Directory /var/www/mediawiki/upload>
       Options -FollowSymLinks
       AllowOverride None
</Directory>

Die Zeile

Alias /wiki /var/www/mediawiki

evtl. anpassen. Mit Hilfe des Alias ist das Wiki nicht nur unter der Adresse http://IP_des_Server/mediawiki erreichbar, sondern auch unter http://IP_des_Server/wiki.


Inbetriebnahme und Konfiguration

Webserver neu starten:

/etc/init.d/apache2 restart

Webbrowser starten. Adresse http://IP_des_Server/mediawiki/config eingeben

Folgender Konfigurationsbildschirm erscheint: Debian Mediawiki.png


Folgende Einstellungen vornehmen:

Site Name: beliebig - z.B. Wiki
Contact email (Wiki Kontakt): gültige emailadresse z.B. wiki@domain.org  (evtl. alias in Postfix einrichten)
Language: Sprache auswählen - z.B. de - Deutsch
Copyright/licence: Lizenz je nach perönlichem Geschmack einstellen
SysOp Account: Name und Paßwort des Wiki-Admins eingenen (z.B. WikiSysOP)
Object Caching: No Cacheing
Sämtliche Email-Optionen: Enabled
MySQL-Server: localhost
Database Name: wikidb
DB Username: wikiuser
DB Password: beliebiges Passwort

Use Superuser Account: ja (abgehakt)
Superuser: root
Superuser Password: root_pwd  (siehe SQL-Server)

Databse Table Prefix: leer lassen
Storage Engine: InnoDB
Database Character: MySQL 4.1/5.0 UTF-8

Button Install Mediawiki am Ende der Webseite anwählen. Nach erfolgreicher Installation (kann einige Minuten dauern), erscheint eine Seite, auf der keinerlei Fehler angezeigt werden sollten.

Folgenden Befehl eingeben:

mv /var/www/mediawiki/config/LocalSettings.php /var/www/mediawiki/


Funktionstest

Im Webbrowser die Hauptseite des neu installierten WIKI-Systems aufrufen: http://IP_des_Server/wiki

Wenn die Hauptseite erscheint, dann ist die Installation und Konfiguration abgeschlossen. Anleitungen und Tips&Tricks zum Erstellen von Wiki-Seiten gibt es zahlreiche Anleitungen im Internet.

Feintuning

Einstellungen werden in der zentralen Konfigurationsdatei /var/www/mediawiki/LocalSettings.php vorgenommen.

vi /var/www/mediawiki/LocalSettings.php

Um Bilder oder sonstige Dateien im Wiki verwenden zu können, muss der Upload freigeschaltet werden:

$wgEnableUploads = true;
$wgCheckFileExtensions = true;
$wgStrictFileExtensions= true;
$wgFileExtensions = array('png', 'gif', 'jpg', 'svg', 'jpeg', 'doc', 'xls', 'mpp', 'pdf');

Standardmäßig ist jeder schreibberechtigt - auch ohne vorherige Anmeldung/Login. Um nur eingeloggten Usern Schreibrechte zu erteilen, folgendes am Ende von LocalSettings.php einfügen:

#Prevent non logged-in users from editing
$wgGroupPermissions['*']['edit'] = false;

In der linken oberen Ecke des Wiki's kann ein beliebiges Logo angezeigt werden. Das Logo muss auf dem Server in Form von jpg- bzw. png- Bildern hinterlegt werden. Desweiteren kann ein benutzerdefiniertes FavIcon im Browser angezeigt werden. Dieses wird im Browser in der Adressleiste und in den Favoriten angezeigt. Zunächst das Logo z.B. logo.png und favicon.ico mittels WinSCP auf den Server ins Verzeichnis /var/www/mediawiki/images/ transferieren und die Eigentümerrechte setzen

chown www-data:www-data /var/www/mediawiki/images/logo.png
chown www-data:www-data /var/www/mediawiki/images/favicon.ico

Logo und Favicon einbinden:

vi /var/www/mediawiki/LocalSettings.php

Das Logo wird mit der Variable $wgLogo bestimmt:

$wgLogo = "/wiki/images/logo.png";

Das Favicon wird mit der Variable $wgFavicon bestimmt:

$wgFavicon = "/wiki/images/favicon.ico";


Optional: Neues Skin und Bearbeiten Leiste

Mit Version 1.16 wurde ein neuer Skin eingeführt, den Wikipedia als neuen Standardskin verwendet. Zusätzlich mit diesem Skin wurden unter der sog. Usability-Initiative eine neue Bearbeiten-Werkzeugleiste eingeführt, die das Bearbeiten von Artikeln vereinfacht. Beide Neuerungen sind relativ einfach umsetzbar. Für die erweiterte Bearbeiten-Leiste ist die Installation einer Extension erforderlich.

Neue Bearbeiten Leiste

cd /usr/local/src/mediawiki
wget http://upload.wikimedia.org/ext-dist/UsabilityInitiative-MW1.16-r74799.tar.gz
tar -xzf UsabilityInitiative-MW1.16-r74799.tar.gz -C /var/www/mediawiki/extensions

Extension aktivieren:

vi /var/www/mediawiki/LocalSettings.php

Folgende Ergänzungen einfügen (Vor der Zeile # If PHP's memory limit is very low, some operations may fail.):

// UsabilityInitiative/Vector
require_once("$IP/extensions/UsabilityInitiative/Vector/Vector.php");
$wgVectorModules['editwarning']['global'] = false; // Don't enable EditWarning globally
$wgVectorModules['editwarning']['user'] = true; // Allow users to enable EditWarning in their preferences
$wgVectorUseSimpleSearch = true; // Need this as well for SimpleSearch
$wgDefaultSkin = 'vector'; // If you want to change the default skin for new users
$wgVectorUseIconWatch = true; //Enable star icon to add/remove page from watchlist
// UsabilityInitiative/WikiEditor
require_once("$IP/extensions/UsabilityInitiative/WikiEditor/WikiEditor.php");
$wgDefaultUserOptions['usebetatoolbar-cgd'] = 1;  // Default user preference to use toolbar dialogs
$wgWikiEditorModules['toolbar']['global'] = true;  // Enable the WikiEditor toolbar for everyone
$wgWikiEditorModules['toolbar']['user'] = false;  // Don't allow users to turn the WikiEditor toolbar on/off individually


Vector Skin

Jeder User kann selbts den Skin einstellen, der verwendet werden soll (Einstellungen/Aussehen). Hier kann einfach der neue Skin Vector aktiviert werden. D.h. jeder eingeloggte User kann seinen egenen Lieblingsskin verwenden. Der Standardskin, der immer dann verwendet wird, wenn kein User eingeloggt ist, bzw. für alle neu angelegten User, wird via Localsettings.php eingestellt.

vi /var/www/mediawiki/LocalSettings.php

Defaultskin ändern:

$wgDefaultSkin = 'vector';


Virtualhost

Mittels Apache2 Virtualhosts ist es möglich, das Wiki via wiki.domain.org aufzurufen. Dabei wird je ein Virtualhost für http und https erstellt. Durch eine Rewrite-Regel wird automatisch auf https:// gewechselt, wenn der Login Bildschirm angewählt wird und vorher eine HTTP-Verbindung bestand. Für das SSL-Zertifikat empfiehlt sich ein Wildcard Zertifikat zu verwenden.

vi /etc/apache2/sites-enabled/wiki_http.conf

Folgende Zeilen einfügen. Dabei domain.org mit der gewünschten Domain ersetzen

<VirtualHost *:80>
   DocumentRoot /var/www/mediawiki
   ServerName wiki.domain.org
   <Directory /var/www/mediawiki/>
       Options +FollowSymLinks
       AllowOverride All
       order allow,deny
       allow from all
   </Directory>
   # some directories must be protected
   <Directory /var/www/mediawiki/config>
       Options -FollowSymLinks
       AllowOverride None
   </Directory>
   <Directory /var/www/mediawiki/upload>
       Options -FollowSymLinks
       AllowOverride None
   </Directory>
</VirtualHost>


vi /etc/apache2/sites-enabled/wiki_https.conf

Folgende Zeilen einfügen. Dabei wiki.domain.org mit der gewünschten Domain ersetzen

<VirtualHost *:443>
   DocumentRoot /var/www/mediawiki
   ServerName wiki.domain.org
   <Directory /var/www/mediawiki/>
       Options +FollowSymLinks
       AllowOverride All
       order allow,deny
       allow from all
   </Directory>
   # some directories must be protected
   <Directory /var/www/mediawiki/config>
       Options -FollowSymLinks
       AllowOverride None
   </Directory>
   <Directory /var/www/mediawiki/upload>
       Options -FollowSymLinks
       AllowOverride None
   </Directory>
   SSLCertificateKeyFile /etc/ssl/CA/key/wildcard-key.pem
   SSLCertificateFile /etc/ssl/CA/certs/wildcard-cert.pem
   SSLEngine on
</VirtualHost>

Rewrite-Regel:

vi /var/www/mediawiki/.htaccess

Folgende Zeilen einfügen:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.+) /wiki/index.php?title=$1 [L,QSA]

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^/index.php$
RewriteCond %{QUERY_STRING} ^title=Spezial:Anmelden
RewriteCond %{REQUEST_METHOD} ^GET$
RewriteRule ^(.*)$ https://%{SERVER_NAME}/wiki/$1 [R]

Zum Schluss muss noch die Mediwiki-Konfiguration angepasst werden:

vi /var/www/mediawiki/LocalSettings.php

Folgende Parameter ändern/einfügen:

$wgScriptPath       = "/wiki";
$wgArticlePath      = "/$1";

Apache neu starten:

/etc/init.d/apache2 restart


Angreifer abwehren

Um Angreifer, die versuchen Passwörter zu knacken auszusperren siehe Anleitung Fail2ban