Server Setup · 5 min read · Oct 08, 2025
Der perfekte Server - CentOS 6.3 x86_64 (nginx, Dovecot, ISPConfig 3) - Seite 3
4 /etc/hosts anpassen
Als nächstes bearbeiten wir /etc/hosts. Es sollte so aussehen:
vi /etc/hosts| 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 192.168.0.100 server1.example.com server1 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 |
5 Die Firewall konfigurieren
(Sie können dieses Kapitel überspringen, wenn Sie die Firewall am Ende der grundlegenden Systeminstallation bereits deaktiviert haben.)
Ich möchte ISPConfig am Ende dieses Tutorials installieren, das mit seiner eigenen Firewall kommt. Deshalb deaktiviere ich jetzt die Standard-CentOS-Firewall. Natürlich können Sie sie aktiviert lassen und nach Ihren Bedürfnissen konfigurieren (aber dann sollten Sie später keine andere Firewall verwenden, da sie wahrscheinlich mit der CentOS-Firewall in Konflikt gerät).
Führen Sie aus
system-config-firewallund deaktivieren Sie die Firewall.
Um zu überprüfen, ob die Firewall wirklich deaktiviert wurde, können Sie anschließend ausführen
iptables -L Die Ausgabe sollte so aussehen:
[root@server1 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[root@server1 ~]#
6 SELinux deaktivieren
SELinux ist eine Sicherheitserweiterung von CentOS, die erweiterte Sicherheit bieten soll. Meiner Meinung nach benötigen Sie es nicht, um ein sicheres System zu konfigurieren, und es verursacht normalerweise mehr Probleme als Vorteile (denken Sie daran, nachdem Sie eine Woche lang Fehlerbehebung betrieben haben, weil ein Dienst nicht wie erwartet funktionierte, und dann stellen Sie fest, dass alles in Ordnung war, nur SELinux das Problem verursachte). Daher deaktiviere ich es (das ist ein Muss, wenn Sie später ISPConfig installieren möchten).
Bearbeiten Sie /etc/selinux/config und setzen Sie SELINUX=disabled:
vi /etc/selinux/config| # Diese Datei steuert den Zustand von SELinux im System. # SELINUX= kann einen dieser drei Werte annehmen: # enforcing - SELinux-Sicherheitsrichtlinie wird durchgesetzt. # permissive - SELinux gibt Warnungen aus, anstatt durchzusetzen. # disabled - Keine SELinux-Richtlinie wird geladen. SELINUX=disabled # SELINUXTYPE= kann einen dieser beiden Werte annehmen: # targeted - Zielprozesse sind geschützt, # mls - Multi Level Security-Schutz. SELINUXTYPE=targeted |
Anschließend müssen wir das System neu starten:
reboot7 Zusätzliche Repositories aktivieren und Software installieren
Zuerst importieren wir die GPG-Schlüssel für Softwarepakete:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*Dann aktivieren wir die RPMforge- und EPEL-Repositories auf unserem CentOS-System, da viele der Pakete, die wir im Verlauf dieses Tutorials installieren werden, nicht in den offiziellen CentOS 6.3-Repositories verfügbar sind:
rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txtcd /tmp
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
(Wenn der obige Link nicht mehr funktioniert, finden Sie die aktuelle Version von rpmforge-release hier: http://packages.sw.be/rpmforge-release/)
rpm –import https://fedoraproject.org/static/0608B895.txt
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpm
Wir müssen auch das Remi RPM-Repository aktivieren, das das php-fpm-Paket enthält, das wir später installieren werden:
rpm –import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum install yum-prioritiesBearbeiten Sie /etc/yum.repos.d/epel.repo…
vi /etc/yum.repos.d/epel.repo… und fügen Sie die Zeile priority=10 zum [epel]-Abschnitt hinzu:
| [epel] name=Extra Packages for Enterprise Linux 6 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 [...] |
Dann machen Sie dasselbe für den [remi]-Abschnitt in /etc/yum.repos.d/remi.repo, und ändern Sie enabled auf 1:
vi /etc/yum.repos.d/remi.repo| [remi] name=Les RPM de remi pour Enterprise Linux $releasever - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/$releasever/remi/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/remi/mirror enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi failovermethod=priority [remi-test] name=Les RPM de remi en test pour Enterprise Linux $releasever - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/$releasever/test/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/test/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi |
Dann aktualisieren wir unsere vorhandenen Pakete im System:
yum updateJetzt installieren wir einige Softwarepakete, die später benötigt werden:
yum groupinstall 'Development Tools'8 Quota
(Wenn Sie ein anderes Partitionierungsschema gewählt haben als ich, müssen Sie dieses Kapitel anpassen, damit Quota auf den Partitionen angewendet wird, wo Sie es benötigen.)
Um Quota zu installieren, führen wir diesen Befehl aus:
yum install quotaBearbeiten Sie /etc/fstab und fügen Sie ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 zur /-Partition (/dev/mapper/vg_server1-lv_root) hinzu:
vi /etc/fstab| # # /etc/fstab # Erstellt von anaconda am Wed Jul 11 17:52:57 2012 # # Zugängliche Dateisysteme, die durch Referenz verwaltet werden, befinden sich unter '/dev/disk' # Siehe man-Seiten fstab(5), findfs(8), mount(8) und/oder blkid(8) für weitere Informationen # /dev/mapper/vg_server1-lv_root / ext4 defaults,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 1 UUID=806910a1-dbdf-4746-bd94-cbe73ce81493 /boot ext4 defaults 1 2 /dev/mapper/vg_server1-lv_swap swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 |
Führen Sie dann aus
mount -o remount /quotacheck -avugm
quotaon -avug
um Quota zu aktivieren.
9 Die Systemuhr synchronisieren
Es ist eine gute Idee, die Systemuhr mit einem NTP ( n etwork t ime p rotokoll) Server über das Internet zu synchronisieren. Führen Sie einfach aus
yum install ntpund Ihre Systemzeit wird immer synchronisiert sein.
10 MySQL installieren
Installieren Sie MySQL wie folgt:
yum install mysql mysql-serverErstellen Sie dann die Systemstartlinks für MySQL und starten Sie es:
chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start
Setzen Sie Passwörter für das MySQL-Root-Konto:
mysql_secure_installation[root@server1 tmp]# mysql_secure_installation
HINWEIS: ALLE TEILE DIESER SKRIPTE WERDEN FÜR ALLE MySQL
SERVER IN PRODUKTION EMPFOHLEN! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!
Um sich bei MySQL anzumelden, um es zu sichern, benötigen wir das aktuelle
Passwort für den Root-Benutzer. Wenn Sie MySQL gerade installiert haben und
Sie das Root-Passwort noch nicht festgelegt haben, ist das Passwort
leer, sodass Sie hier einfach die Eingabetaste drücken sollten.
Geben Sie das aktuelle Passwort für root ein (drücken Sie die Eingabetaste für keines):
OK, Passwort erfolgreich verwendet, weiter…
Das Setzen des Root-Passworts stellt sicher, dass niemand
auf den MySQL-Root-Benutzer zugreifen kann, ohne die
richtige Autorisierung zu haben.
Root-Passwort setzen? [Y/n] <– EINGABETASTE
Neues Passwort: <– IhrrootSQLPasswort
Neues Passwort erneut eingeben: <– IhrrootSQLPasswort
Passwort erfolgreich aktualisiert!
Aktualisieren der Berechtigungstabellen..
… Erfolg!
Standardmäßig hat eine MySQL-Installation einen anonymen Benutzer,
der es jedem ermöglicht, sich bei MySQL anzumelden, ohne
ein Benutzerkonto erstellt zu haben. Dies ist nur
für Tests gedacht und soll die Installation etwas
reibungsloser gestalten. Sie sollten sie entfernen,
bevor Sie in eine Produktionsumgebung wechseln.
Anonyme Benutzer entfernen? [Y/n] <– EINGABETASTE
… Erfolg!
Normalerweise sollte root nur von ‘localhost’
verbindbar sein. Dies stellt sicher, dass
niemand das Root-Passwort aus dem Netzwerk erraten kann.
Root-Login aus der Ferne verbieten? [Y/n] <– EINGABETASTE
… Erfolg!
Standardmäßig kommt MySQL mit einer Datenbank namens
‘test’, auf die jeder zugreifen kann. Dies ist
auch nur für Tests gedacht und sollte entfernt
werden, bevor Sie in eine Produktionsumgebung wechseln.
Testdatenbank und Zugriff darauf entfernen? [Y/n] <– EINGABETASTE
- Testdatenbank wird gelöscht…
… Erfolg! - Berechtigungen auf Testdatenbank entfernen…
… Erfolg!
Das Aktualisieren der Berechtigungstabellen stellt sicher,
dass alle bisher vorgenommenen Änderungen sofort
wirksam werden.
Berechtigungstabellen jetzt aktualisieren? [Y/n] <– EINGABETASTE
… Erfolg!
Aufräumen…
Alles erledigt! Wenn Sie alle oben genannten Schritte
abgeschlossen haben, sollte Ihre MySQL-Installation
jetzt sicher sein.
Danke, dass Sie MySQL verwenden!
[root@server1 tmp]#
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.