Mittwoch, 6. Juni 2012

Ubuntu Server unter VirtualBox einrichten

Ich brauche zum Entwickeln einer PHP-Applikation einen lokalen LAMP-Server, möchte ihn aber nicht direkt in meinem Produktiv-System installieren. Daher habe ich einen LAMP-Server unter VirtualBox (Version 4.1.2) installiert.

Als Gastsystem habe ich Ubuntu Server 12.04 ausgewählt, als Hostsystem benutze ich Mint Linux 12 (es sollte aber auch mit jedem anderen Gastsystem funktionieren).

Installation

Zuerst habe ich das Ubuntu Server-Image heruntergeladen und als eine neue virtuelle Maschine mit 768MB RAM und einer virtuellen 4GB Festplatte installiert. Vor dem ersten Starten ist es wichtig, dass unter Maschine ändern -> System -> Prozessor die Option PAE/NX aktiviert wird, da sonst Ubuntu Server nicht startet. Die restliche Installation ist Ubuntu-typisch unkompliziert. Zwischendurch wird man dazu angehalten, zusätzliche Pakete zur Installation auszuwählen. Dort habe ich OpenSSH server, LAMP server und Mail server ausgewählt.

Lokaler Zugriff

Da der Server zu Entwicklung dient, soll er nicht im Netzwerk, sondern nur im Hostsystem sichtbar sein. Dazu muss zuerst ein Host-only Netzwerkadapter eingereichtet werden: Im VirtualBox Manager auf Datei -> Globale Einstellungen... -> Netzwerk gehen und dort ein Host-only Netzwerk hinzufügen. Anschließend muss in den Einstellungen für die virtuelle Maschine unter Netzwerk noch bei Angeschlossen an die Option Host-only Adapter und der eben erstellte Adapter ausgewählt werden.
Hinweis: Nach der Umstellung des Netzwerkadapters auf Host-only ist der Zugriff des Gastsystems auf das Internet nicht mehr möglich. Die einzige Lösung (für Updates, Paketinstallationen, etc.), die ich bis jetzt gefunden habe, ist temporär den Netzwerkadapter wieder auf NAT umzustellen und den Server neuzustarten. Dann ist natürlich der Server nicht mehr lokal erreichbar.

Anschließend kann die virtuelle Maschine gestartet werden. Nach dem Einloggen findet man über den Befehl ifconfig die IP heraus. Diese kann man nun im Browser des Hostsystems eingeben und schon erhält man die Apache-Startseite:
Erfolgreiche Apache-Startseite
Hinweis: Die Konfigurationsdatei von Apache (normalerweise httpd.conf) heißt unter Ubuntu /etc/apache2/apache2.conf.

FTP-Server

Nun fehlt noch ein FTP-Server, um die Dateien bequem auf den Server zu kopieren. Dazu eignet sich am besten ProFTPD. Das Installieren und Einrichten des FTP-Servers, insbesondere die Benutzeraccounterstellung, wird gut unter http://wiki.ubuntuusers.de/ProFTPD beschrieben. Als Servermodus habe ich standalone statt Inetd genommen, da dies zu weniger Problemen geführt hat.
Die Erstellung des virtuellen Benutzers hat bei mir jedoch nicht wie Beschrieben geklappt. So hat es bei mir funktioniert: Nachdem die Konfigurationsdatei angepasst ist, kann man mit

cat /etc/passwd | grep var-www

die UDI und GID des Apache-Users herausfinden (bei mir in beiden Fällen die 33). Anschließend habe ich den Benutzer ftpuser mit dem Befehl

sudo ftpasswd --passwd --name ftpuser --uid 33 --gid 33 --home /var/www --shell /bin/false --file /etc/proftpd/ftpd.passwd

erstellen können. Jetzt muss man auf dem Server noch mit

sudo chown www-data /var/www/

die Schreibrechte anpassen. Anschließend kann man über ein FTP-Programm und die IP des Servers Dateien in den Rootordner des Apaches kopieren.

MySQL-Server

Als letzter Schritt muss noch der externe Zugriff auf den MySQL-Server zugelassen werden, um beispielsweise mit der MySQL Workbench die Datenbank administrieren zu können. Die Grundkonfiguration ist im ubuntuusers-Wiki erläutert. Da ich bei einem lokalen, von außen nicht erreichbaren Server keine großen Sicherheitsbedenken habe, nehme ich den root-User, um auf die Datenbanken zuzugreifen. Mit

mysql -uroot -ppasswort

auf dem Gastsystem erhält man Zugriff auf die MySQL-Kommandozeile und kann mit

GRANT ALL ON *.* TO 'root'@'%';

dem root-User alle Zugriffsrecht einräumen. Anschließend ist der Zugriff von außen über den root-User möglich.

1 Kommentar:

  1. Diesen supertollen Blog verfolge ich schon länger. Mach weiter so! http://www.echinodorus-bleheri.blogspot.de/

    AntwortenLöschen