Sie sind hier
Installation CentOS 7 Webserver (LAMP)
Name: |
CentOS |
Version | 7 |
Homepage: |
|
Erscheinungsdatum | 7. Juli 2014 |
Supportende | 30. Juni 2024 |
Releasenotes: | http://wiki.centos.org/Manuals/ReleaseNotes/CentOS7 |
Verfügbare Software (offiziell) |
http://mirror.centos.org/centos-7/7/os/x86_64/Packages/ http://mirror.centos.org/centos-7/7/centosplus/x86_64/Packages/ |
Verfügbare Software (Inoffiziell) |
http://download.fedoraproject.org/pub/epel/7/x86_64/repoview/ |
Diese Anleitung beschreibt die Netzwerk bzw DVD Installation von CentOS7 im Textmodus und die Grundeinrichtung eines Webserver.
Die hier beschreibene Konfiguration reicht für Testumgebungen, für Produktivumgebungen sollte man sich in die Möglichkeiten der Absicherungen eines Servers weiter informieren.
Es steht zur Zeit nur die 64Bit Version zur Verfügung. Angeboten wird eine Netzwerkinstallations-CD, eine DVD mit den gängigsten Programmen und eine KomplettDVD, diese benötigt eine Doublelayer DVD, da das Image die Maximalgröße übersteigt.
http://ftp5.gwdg.de/pub/linux/centos/7/isos/x86_64/ |
Dieses Anleitung beschreibt die Installation im Textmodus, da bei einigen Servern die grafische Installation nicht funktioniert.
Wir laden das gewünschte Image, Brennen es auf DVD oder schreiben es auf einen USB-Stick (Anleitung)
Wenn wir das Image booten sehen wir folgenden Screen:
+
Wir drücken auf die "TAB-Taste" (links neben dem "Q" ) und ergänzen die Zeile unten um das Wort "text".
Der Installer läd.
Wir sehen folgenden Bildschirm:
Die Fehlermeldungen kommen daher weil wir nich keine Internet Verbindung haben.
Wir fangen daher mit der Netzwerkverbindung an und geben "5" und enter ein.
Mit "1" setzen wir den Hostname (in der Regel die Domain unter der der Server erreichbar sein soll)
Mit "2" konfigurieren wir die Netzwerkkarte.
Für IPv4 sehetzen wir unter "1" DHCP (sofern im Netz verfügbar) und unter "4" auto für IPv6.
Unter "7" sorgen wir dafür, dass das Netzwerk beim Booten startet und unter "8" starten wir das Netzwerk für den Installer.
Die Netzwerkkonfiguration verlassen wir mit "c"
Unter "1" setzen wir die Zeitzone.
Unter Europe wählen wir Berlin aus.
Nun wählen wir mit "2" die Paketquellen aus.
Für die Netzwerkinstallation nehem wir die Option "3".
Mit "1" wählen wir "http" aus.
Mit "1" könnwn wir eine URL eingeben.
Dier URL lautet:
Mit "c" gehts zur Hauptauswahl zurück.
Als nächstes wählen wir unter "3" die zu installierende Software aus.
Ich habe "Minimal Install" ausgewählt. Alternativ könnte man schon hier "Basic Webserver" Wählen.
Wie immer kommt man mit "c "zum Hauptmenü.
Als nächsten wählen wir mit "4" das Installationsziel aus.
Als erstes die Festplatte.
Dann die Partionierung, die im Textmodus eingeschränkt ist (man kann nur wählen zwischen erstzen des bisherigen Linuxes, der ganzen Platte, oder dem noch freiem Platz.
Im nächsten Schritt können wir zwischen BTRFS, LVM und Standard Partition wählen.
Mit "7" richten wir einen Benutzer ein.
Hier müssen wir erstmal "1" eingeben.
Mit "2" geben wir den ganzen Namen ein.
Gegebenenfalls mit "3" den login.
Mit "4" geben wir an, dass wir ein Passwort setzen wollen.
Dies setzen wir mit "5".
Hinweis: Die Tastatur verwendet als englische Layout ("z" und "y" vertauscht, Sonderzeichen anders belegt)
Mit "6" könnte man ihn zum Administrator machen, dann verhält sich der Account wie der Admin unter Ubuntu, der mit sudo "root-Rechte" erhällt.
Mit 7. kann man ihn weiteren Gruppen zuordnen.
Mit "6" setzen wir das root-Passwort.
Nachdem wir alles eingegeben haben, starten wir die Installation mit "b".
Nachdem sie abgeschlossen ist, können wit mit "Enter" neu starten.
Wir können uns einloggen. Achtung Die Tastatur verwendet immer noch das englische Layout.
Wir stellen die Sprache auf Deutsch um:
localectl set-locale LANG=de_DE.UTF-8 |
Danach die Deutsche Tastatur:
localectl setkeymap de-latin1 |
Danach muss die initrd neu erzeugt werden.
dracut -f |
Dann starten wir neu:
reboot |
In meinem Test war nach dem Reboot immer noch nicht die deutsche Tastatur aktiv.
In der Datei /etc/default/grub
"vconsole.keymap=us" entfernen und mit
grub2-mkconfig >/boot/grub2/grub.cfg |
Grub neu konfigurieren. nach einem weiterem Reboot funktionierte die deutsche Tastatur.
Einen Server wartet man in der Regen von einem anderen Rechner aus mit ssh.
Wir öffnen daher am Klientrechner ein Terminal.
Wir geben ein:
ssh benutzername@IP-Adresse |
Wir bestätigen die Sicherheitsabfrage.
mit
su |
werden wir zu root.
Zuerst installieren wir alle verfügbaren Updates.
yum update |
Sofern wir mit dem Editor vi nicht klarkommen installieren wir den Editor "nano".
yum install nano |
Wir installieren den Apache-websetver:
yum install httpd |
Wir sorgen dafür dass der Webserver beim booten startet:
systemctl enable httpd |
und starten ihn:
systemctl httpd |
Damit wir auf ihn zugreifen können öffen wir den Firewall-Port:
firewall-cmd --add-service=http |
Wenn wir im Browser die IP des Servers aufrufen, sehen wir folgende Testseite:
Wir installieren die SSL-Unterstützung:
yum install mod-ssl |
Wir starten Apache neu:
systemctl restart httpd |
Und öffen den https-Port im Firewall:
firewall-cmd --add-service=https |
Wenn wir jetzt im Browser die Seite über https aufrufen, sehen wir fongende Sicherheitswarnung. Diese würden wir nur los wenn wir ein kommerzielles Zertifikat einrichten würden, was für Testzecke nicht sinnvoll ist.
Nun installieren wir die PHP-Unterstützung:
yum install php |
Wir richten eine Testseite ein:
echo "<?php phpinfo(); ?>" > /var/www/html/test.php |
nachdem wir mit
systemctl restart httpd |
den Webserver erneut neu gestartet haben. sehen wir unter ip-adresse/test.php folgende Testseite:
In CentOS7 ersetzt mariadb mysql wir instelallieren den Mariadb-Server
yum install mariadb-server |
Wer sorgen dafür, dass mariadb beim Systemstart gestartet wird:
systemctl enable mariadb |
und starten den Datenbank Server:
systemctl start mariadb |
als nächstes richten wir mariadb ein:
mysql_secure_installation |
Wir drücken auf "Enter" weil noch kein Passwort gesetzt ist.
Wir setzen ein Passwort für den mysql-root (nicht mit den root User des Bestriebsystems zu verwechseln.)
Wir entfernen "anonymous users".
Ein "remote root login" sollte deaktiviert werden.
Die Testdatenbank kann entfernt werden.
"Reload privilege tables now" sollte mit "y" beantwortet werden.
Wir installieren wget:
yum install wget |
Wir laden von
http://download.fedoraproject.org/pub/epel/7/x86_64/repoview/epel-release.html |
das neuste Epel-Release herunter.
Und installieren es
yum install epel-release-7-x.noarch.rpm |
Nun können wir phpMyAdmin installieren:
yum install phpMyAdmin |
Wir bestätigen, dass wir Paketen aus EPEL vertrauen.
wir editieren die Konfiguration:
nano /etc/httpd/conf.d/phpMyAdmin.conf |
Bei "Require ip" geben wir den IP Bereich an, von dem wir aus zugreifen wollen.
nach dem wir mal wieder en Wenserver neu starten:
systemctl restart httpd |
können wir uns unter https://IP/phpMyAdmin
mit den Mysql-Root Daten einloggen
Wir installieren den Imapserver dovecot:
yum install dovecot |
Wir sorgen davür , dass das Emailsystem mein Booten startet und starten es:
systemctl enable dovecot systemctl enable postfix systemctl start dovecot systemctl start postfix |
Damit Postfix an dovecot ausliefern kann:
postconf -e 'home_mailbox=Maildir/' |
Wir schalten die Firewall Posts frei:
firewall-cmd --add-service=smtp firewall-cmd --add-service=imaps firewall-cmd --add-service=pop3s |