Unter Ubuntu Apache, MySQL und PHP installieren

Verfasst am: 06. 12. 2010 [22:33]
Ultima
867 Beiträge
Fachinformatiker / Anwendungsentwicklung
Dabei seit: 09.07.2010

✓ Seitenreport Vorantreiber
Themenersteller

Beitrag hilfreich?

Hallo @ All,

Um den neuen Bereich etwas zu füllen und für alle die Ubuntu einmal testen möchten, ist hier eine kleine Anleitung von mir wie man unter Ubuntu Apache, MySQL und PHP installiert.


Als erstes öffnet Ihr das Terminal, das findet Ihr unter "Anwendungen" -> "Zubehör".

Dort meldet Ihr euch als Root mit folgenden Befehl an.
sudo su
(Aus Sicherheitsgründen solltet Ihr euch nur als Root anmelden wenn es auch nötig ist.)


So nun wollen wir den Apache Server installieren, das geht so:
apt-get install apache2


Als nächstes kommt der MySQL Server:
apt-get install mysql-server

Bei der Installation werdet Ihr nach einen Passwort für den root User des MySQL-Servers gefragt. Den root User von MySQL bitte nicht mit den root User von Linux verwechseln.

Nach dem das Geschafft ist installieren wir die PHP Erweiterung für den Apache Server.
apt-get install php5


Mann muss nicht alles einzeln eintippen, das mach ich nur um es leicht verständlich zu halten. Man kann auch alle Pakete der Reihe nach aufführen. Als Beispiel installieren wir mal ein paar PHP Erweiterungen (MySQL, cUrl, Gd2, mCyrpt), die auch ganz nützlich sind. Wenn Ihr euch jetzt fragt, schon wieder MySQL? Das ist die PHP Erweiterung damit man über PHP auf den MySQL-Server zugreifen kann.
apt-get install php5-mysql php5-gd php5-curl php5-mcrypt


Das wichtigste ist nun installiert. Um es nutzen zu können müssen wir den Apache Server neu starten.
/etc/init.d/apache2 restart


So im Prinzip wars das schon. Das root Verzeichnis des Webservers liegt hier:
/var/www

Das Verzeichnis gehört root, das bedeutet Ihr habt vorerst keinen Zugriff darauf. Da Ihr aber noch als root angemeldet seid wechselt Ihr den Besitzer des Verzeichnisses oder gebt es einfach für alle frei.
Mit chown könnt Ihr den Besitzer und Gruppe wechseln, chmod setzt die Zugriffsrechte.
chown ultima:ultima /var/www
chmod -c 0777 /var/www

chown erwartet als ersten Parameter den Benutzernamen, an den die Datei oder das Verzeichnis gehen soll, das 2. ultima ist die Gruppe, diese wird mit einen : vom Benutzernamen getrennt angegeben, die Gruppe ist allerdings optional und kann auch weggelassen werden. Anstelle der Namen können auch die Benutzer und Gruppen IDs verwendet werden. (Ubuntu legt für jeden Benutzer eine gleichnamige Gruppe an und weist sie dem Benutzer zu)

Wenn Ihr zu einem Befehl Fragen habt, könnt Ihr mit dem Parameter -h oder--help eine kurze Erklärung euch anzeigen lassen. Für mehr Informationen gibt es die Manpages.
chmod --help
man chmod


Noch besser wäre es aber wenn Ihr das root Verzeichnis des Web Servers in euer home Verzeichnis legt.
Denn bei einer cleveren Partitionierung habt Ihr den Einhängepunkt für das home Verzeichnis auf eine separate Platte bzw. Partition gelegt. Denn so bleiben euch die Daten und persönlichen Einstellungen erhalten wenn Ihr die Partition mit dem Betriebssystem formatiert. Wie Ihr das Verzeichnis nennt ist euch überlassen, ich nenne es für das Beispiel einfach www.

Ihr öffnet dazu einfach die 000-default Konfigurationsdatei des Apache in einem Editor zB den gEdit wenn ihr in der Desktopumgebung seit oder den nano für die Konsole. (Der VI geht auch, die Bedienung ist aber etwas gewöhnungsbedürftig)
gedit /etc/apache2/sites-enabled/000-default
nano /etc/apache2/sites-enabled/000-default

Wichtig ist das Ihr die Datei mit root rechten öffnet sonst könnt Ihr die Änderungen nicht speichern. Dort ändert Ihr einfach die beiden Einträge:
DocumentRoot /var/www
<Directory /var/www/>
zu euren neuen Verzeichnis.
In meinem Fall wäre es so:
DocumentRoot /home/ultima/www
<Directory /home/ultima/www/>

Um die Änderungen zu übernehmen müsst Ihr den Server neu starten. Bitte beachtet auch das unter Linux Groß- und Kleinschreibung unterschieden wird wenn Ihr das Verzeichnis eintragt.

Wenn Ihr jetzt noch weitere Module für den Apache Server aktivieren wollt, zB rewrite geht das mit folgendem Befehl.
a2enmod rewrite

Um Module wieder zu deaktivieren:
a2dismod rewrite

Bei dem Modul rewrite müsst Ihr allerdings auch die Konfigurationsdatei des Apache anpassen.
Öffnet einfach nochmal die 000-default und ändert die Zeilen mit AllowOverride auf All.
Hier ist ein Auszug meiner Konfigurationsdatei.
DocumentRoot /home/ultima/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/ultima/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

Wenn Ihr ein Modul oder eine Konfigurationsdatei verändert, müsst Ihr den Server neu starten um die Änderungen zu Ãœbernehmen. Die Konfigurationsdatei für PHP findet Ihr hier:
/etc/php5/apache2/php.ini



So ich hoffe ich hab mich verständlich ausgedrückt icon_smile.gif
Wenn Ihr noch Fragen habt, immer her damit.


Viel Spaß mit Ubuntu und viele Grüße
Thomas

Mein Portal: Ultima-Project.net


Verfasst am: 06. 12. 2010 [23:42]
seitenreport
1931 Beiträge
Seitenreport Inhaber
TYPO3 Senior Developer
Dabei seit: 28.03.2009

✶✶ Sehr aktiver Seitenreport Vorantreiber

Beitrag hilfreich?

Hallo Thomas,

super und sehr ausführliches Tutorial - absolut nichts hinzuzufügen. Danke.

Gruß,
Matthias

Matthias Gläßner. TYPO3 Senior Developer, war u.a. Chefentwickler
beim FOCUS-Campus Nachfolger WHIZKID, Senior Entwickler bei Maybelline New York, Statoil und bei s.Oliver /
Inhaber von Seitenreport, der SEO und Website Analyse


Verfasst am: 07. 12. 2010 [15:23]
masa8
1087 Beiträge
Selbständig
Dabei seit: 22.10.2009

✭✭ Aktiver Seitenreport Vorantreiber

Beitrag hilfreich?

Der Beitrag ist dach fast zu schade, um irgendwann im Forum unterzugehen.

Ich finde der gehört in die Seitenreport Fachartikel.

Gruß Matthias

Mein Blog über Wordpress, SEO, interne Verlinkung und mehr
alles-mit-links
BLACKINK Webkatalog 20-25 Backlinks "Lifetime"


Verfasst am: 07. 12. 2010 [16:57]
prskd
16 Beiträge
cio
Dabei seit: 16.06.2010

Nicht Untätiger

Beitrag hilfreich?

Das sehe ich ähnlich wie Matthias. Er gehört ein wenig abgerundet und dann als Artikel veröffentlicht.
@Thomas, klasse Tutorial. Wenn man die richtige Reihenfolge kennt, dann geht es meist sehr einfach.
Danke



Verfasst am: 07. 12. 2010 [17:15]
Ultima
867 Beiträge
Fachinformatiker / Anwendungsentwicklung
Dabei seit: 09.07.2010

✓ Seitenreport Vorantreiber
Themenersteller

Beitrag hilfreich?

Danke für die Blumen, aber für einen Fachartikel reicht es nicht.

Mein Portal: Ultima-Project.net


Verfasst am: 07. 12. 2010 [17:27]
seitenreport
1931 Beiträge
Seitenreport Inhaber
TYPO3 Senior Developer
Dabei seit: 28.03.2009

✶✶ Sehr aktiver Seitenreport Vorantreiber

Beitrag hilfreich?

@Matthias: Ja, halte ich (vorrausgesetzt, dass Thomas damit einverstanden ist), ebenfalls für eine gute Idee (allerdings besser innerhalb der Seitenreport Knowledge Base <-- kommt bald).

Anbei noch eine kleine Erweiterung (schließt sich quasi nahtlos an das Tutorial von Thomas an):

=====================
Sicherheit
=====================
Verfügt der Rechner über einen Internetanschluss, so muss der Apache natürlich noch abgesichert werden. Ohne die Absicherung kann jeder, der die IP-Adresse des Rechners kennt, auf den Webserver zugreifen und unter Umständen Daten oder Webseiten sehen, die nicht für ihn bestimmt sind. Dies kann u.U. zum schwerwiegenden Sicherheitsleck werden.

Darum:
1. Zugriff nur per localhost
nano /etc/apache2/ports.conf

#listen 80 ersetzen durch
listen 127.0.0.1:80

Diese Zeile bewirkt, dass auf den Webserver nur vom localhost (also vom eigenen Rechner) aus zugegriffen werden kann, nicht aber von außerhalb.

2. Für das Verzeichnis /var/www reichen die Schreibrechte 0775 aus
chmod 0775 /var/www

(wenn der Rechner keine Internet-Verbindung hat und nur vertrauliche Personen Zugriff auf den PC haben, kann dieser Wert natürlich durchaus ruhig auch auf 0777 stehen)

3. fail2ban installieren
(nur notwendig, wenn Zugriff auch außerhalb von localhost)
Auch auf den MySQL Server kann von außerhalb zugegriffen werden (z.B. mit dem MySQL Administrator). Die Datenbanken sind zwar per Passwort geschützt, allerdings lassen sich diese per BruteForce Angriff knacken. Abhilfe schafft fail2ban.

apt-get install fail2ban

(und konfigurieren)

fail2ban sorgt z.B. dafür, dass ein externer "Besucher" nach mehreren unerlaubten Zugriffen (z.B. falscher Passworteingabe) automatisch für eine festlegbare Dauer gesperrt wird.

=====================
Webseiten aufrufen
=====================
Zum Aufrufen einer Webseite (die sich je nach Konfiguration in /var/www/ oder /home/username/www/ befinden muss) gibt man im Browser seiner Wahl als Adresse einfach
localhost
oder http://127.0.0.1 ein


Bei Verwendung des Webservers in einem (Firmen-)Netzwerk o.ä. ggf. auch an Dinge wie mod_security denken und unnötig offene Ports schließen.

Der Ãœbergang zur Absicherung eines echten Webservers (der auch vom Netz aus erreichbar ist), wird hier fließend... (für erste Tests also am Besten wirklich NUR den localhost ran lassen.... icon_wink.gif )

nicht vergessen natürlich trotz aller Absicherung auch hier regelmäßig die Logs zu lesen. Diese befinden sich in

cd /var/log/apache2

# Logs auflisten per
ls -l


Grüße,
Matthias

Matthias Gläßner. TYPO3 Senior Developer, war u.a. Chefentwickler
beim FOCUS-Campus Nachfolger WHIZKID, Senior Entwickler bei Maybelline New York, Statoil und bei s.Oliver /
Inhaber von Seitenreport, der SEO und Website Analyse





to Top to Top

Du bist nicht eingeloggt. Bitte beachte, dass Du eingeloggt sein musst, um Themen zu erstellen oder auf Beiträge zu antworten.

RSS Feed abonnieren

Werde in Echtzeit über neue Foren-Beiträge informiert:

RSS Feed abonnieren


2 Mitglieder waren innerhalb der letzten 15 Minuten online (46 heute gesamt):
NISALO, PistolPete

Administratoren und Moderatoren:
[keine]

Seitenreport hat 45809 registrierte Mitglieder, 4288 Themen und 37434 Beiträge.
Der aktuelle Mitgliederzuwachs liegt bei durchschnittlich 6 bestätigten Neuregistrierungen pro Tag.
Pro Tag werden im Seitenreport Forum durchschnittlich 0 neue Themen und 0 Beiträge erstellt.
Die Durchschnittszahlen berechnen sich aus den letzten 7 Tagen.

Mehrfach empfohlen

Seitenreport ist einer der bekanntesten SEO und Website Analyse Dienste im deutschsprachigen Raum und wurde u.a. schon empfohlen:
von Mr. Wong im Wong Letter
vom Leserservice der Deutschen Post
vom Technik Blog SiN
und vielen anderen

Seitenreport API

Verfolge die SERP Positionen Deiner Keywords und erhalte Informationen über verwendete Mikroformate, frage die Ergebnisse unserer Analysen live ab oder greife auf unsere History-Datenbank zu. Dies alles bietet Dir die neue Seitenreport API. Kontaktiere uns, um weitere Infos zu erhalten.