Erforderliche Erstkonfiguration bei der Installation von CentOS.


Datum der Veröffentlichung:8. Dezember 2020.



INFOMARTION > Erforderliche Erstkonfiguration bei der Installation von CentOS.

Überblick.

Dieser Abschnitt beschreibt die ersten notwendigen Einstellungen nach der Installation von CentOS. Es wurde mit CentOS 7.6 (1810) erstellt.

Das Inhaltsverzeichnis

  1. Grundeinstellung
  2. Zusammenfassung

1. Grundeinstellung

Dieser Abschnitt beschreibt die grundlegenden Einstellungen, die unmittelbar nach der Installation von CentOS erforderlich sind.

1-1. Überprüfen des Betriebssystems

Stellen Sie zunächst sicher, dass Sie das richtige Betriebssystem installiert haben.

[root@hostname ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

CentOS Linux Release 7.6.1810 (Core)" ist das installierte Betriebssystem. Prüfen Sie, ob sie korrekt ist.

1-2. Installieren des Tools

Unmittelbar nach der Installation können grundlegende Befehle wie ifconfig nicht ausgeführt werden. Daher wird die Installation so durchgeführt, dass grundlegende Netzwerk- und andere Befehle durch yum-Befehle ausgeführt werden können.

Bitte führen Sie dies bei Bedarf durch, da es möglich ist, die bereits installierte Software mit "yum -y update" zu modernisieren.

[root@hostname ~]# yum install -y net-tools
[root@hostname ~]# yum install -y wget
[root@hostname ~]# yum install -y tcpdump
[root@hostname ~]# yum install -y traceroute

net-tools・・・Der Befehl ifconifg und andere können nach der Installation verwendet werden.

wget・・・Buchstäblich, aber der Befehl wget kann verwendet werden. Kurz gesagt, dieser Befehl sendet eine http-Anfrage.

tcpdump・・・Buchstäblich, aber der Befehl tcpdump kann verwendet werden. Kurz gesagt, es kann die an den Server gesendeten Anfragen überwachen.

traceroute・・・Buchstäblich, aber der Befehl traceroute kann verwendet werden. Kurz gesagt, es zeigt die Route der Ziel-IP.

1-3. Deaktivieren von selinux

Deaktivieren Sie selinux, da es aktiviert ist und sich unerwartet verhalten kann.

Zunächst einmal ist selinux eine sicherheitsrelevante Einstellung. Wenn Sie in der Lage sind, sie zu benutzen, können Sie sie aktivieren, aber wenn es schwierig ist, deaktivieren Sie sie. Die Deaktivierung von selinux führt nicht zwangsläufig zu Sicherheitslücken.Es ist wahrscheinlicher, dass sie Probleme verursacht, wenn sie aktiviert ist, auch wenn ich persönlich sie nicht gut verstehe. Die einfache Erklärung ist, dass selinux eine Sicherheitsmaßnahme ist, nachdem der Server angegriffen wurde (konfiguriert, um den Schaden im Falle eines Angriffs zu minimieren), so dass es wichtiger ist, Sicherheitsmaßnahmen zu ergreifen, um zu verhindern, dass der Server angegriffen wird.

Nachfolgend finden Sie die Schritte zur Deaktivierung.

[username@hostname ~]$ getenforce
Disabled

Wenn sie nicht deaktiviert ist, kann sie mit dem folgenden Verfahren geändert werden.

[username@hostname ~]$ vi /etc/selinux/config


config【Vor der Änderung】


SELINUX=enforcing


config【nach der Änderung】


SELINUX=disabled

SELINUX" und "SELINUXTYPE", aber es ist das "SELINUX", das geändert werden muss. Beachten Sie, dass der Server nicht startet, wenn Sie den "SELINUXTYPE" versehentlich ändern.

Starten Sie den Server neu, damit die Konfiguration wirksam wird.

1-4. zusätzlicher betrieblicher Nutzer

Es ist gefährlich, sich als Root-Benutzer anzumelden und zu arbeiten, also fügen Sie einen Benutzer hinzu, der sich anmeldet. In einem weiteren Schritt deaktivieren Sie die Anmeldung des Root-Benutzers.

Das Risiko, als angemeldeter Root-Benutzer zu arbeiten, besteht darin, dass Sie alles tun können, was Sie wollen. Das Risiko, alles tun zu können, besteht darin, dass Sie versehentlich wichtige Änderungen im Zusammenhang mit dem Betriebssystem ändern oder löschen könnten. Wenn Sie den Server für den persönlichen Gebrauch nutzen, z. B. als Hobby oder zum Lernen, und Sie keine so gewöhnlichen Fehler machen, sehe ich persönlich kein Problem darin, sich als Root-User anzumelden. Der Hauptgrund dafür, dass sich der Root-Benutzer nicht anmelden kann, ist die Gewaltenteilung. Das App-Entwicklungsteam verwendet Benutzer, die das Verzeichnis nur für die App-Entwicklung berühren. Das Batch-Entwicklungsteam verwendet Benutzer, die nur das Batch-Entwicklungsverzeichnis berühren. Es ist besser, die Benutzer zu trennen, so dass die erforderlichen Teams auf die erforderlichen Verzeichnisse zugreifen können, wie z. B.

Nachfolgend finden Sie die Schritte zum Hinzufügen von Benutzern.

[root@hostname ~]# useradd xxxxxx
[root@hostname ~]# passwd xxxxxx

※xxxxxxxx ist der Name des Benutzers, der hinzugefügt werden soll. Legen Sie ein beliebiges Passwort fest.

1-5. Root-Benutzerpasswort ändern

Wenn Sie nicht der Root-Benutzer sind, wechseln Sie mit su - zum Root-Benutzer und führen Sie den folgenden Befehl aus

[username@hostname ~]$ su -
[root@hostname ~]# passwd

※Legen Sie ein beliebiges Passwort fest.

Geben Sie niemals das ursprüngliche Passwort auf. Das Passwort "root" ist das schlimmste. Die Kennwörter "password" und "1234" sind ebenfalls sehr gefährlich. Ein Minimum von acht Ziffern, einschließlich alphanumerischer Zeichen, ist gut.

Diese Kennworteinstellung ist für die Sicherheit sehr wichtig und sollte mit äußerster Sorgfalt festgelegt werden. Das Ändern des Passworts des Root-Benutzers ist recht einfach, aber wir haben schon viele Geschichten von Sicherheitsvorfällen gehört, die dadurch verursacht wurden. Gehen Sie nicht davon aus, dass niemand Ihren Server angreifen wird, nur weil er klein ist. Der Angreifer greift mit dem Benutzernamen "root" und dem Passwort "root" auf einen beliebigen Server zu.

1-6. Konfiguration zum Verbot von Anmeldungen durch nicht betriebsbereite Benutzer (verbietet Anmeldungen durch den Benutzer root und andere Benutzer).

Begrenzen Sie die Anzahl der Benutzer, die sich anmelden können. Insbesondere sollte es Root-Benutzern nicht erlaubt sein, sich anzumelden. Wenn Sie als root eingeloggt sind, sind alle Sicherheitsmaßnahmen deaktiviert.

Nachfolgend finden Sie die Schritte zum Deaktivieren des Root-Benutzer-Logins und zum Hinzufügen von Benutzern, die sich anmelden können. Wechseln Sie zum Benutzer root und ändern Sie dann die Konfigurationsdatei. (Es ist möglich, mit 'su-' zum Root-Benutzer zu wechseln, nur um sich nicht anmelden zu können).

[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config


sshd_config【Vor der Änderung】


#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10


sshd_config【nach der Änderung】


#LoginGraceTime 2m
PermitRootLogin no
AllowUsers xxxxxx
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

※xxxxxxxx ist der operative Benutzername, den Sie gerade hinzugefügt haben.


Wenn der Name "AllowUsers" falsch ist, kann sich niemand anmelden. Prüfen Sie daher die Benutzernamen sorgfältig.

Überprüfen Sie die Syntax und starten Sie sshd neu.

[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd

Wenn Sie sich abgemeldet und bestätigt haben, dass Sie sich nicht als root anmelden können und dass Sie sich als der hinzugefügte operative Benutzer anmelden können, sind Sie fertig.


1-7. Zeitsynchronisierung

Prüfen Sie, ob die Uhrzeit synchronisiert ist. Manchmal ist die Uhrzeit des Servers nicht synchronisiert, so dass Datum und Uhrzeit der Protokollausgabe zu einer anderen Zeit als erwartet ausgegeben werden und es lange dauert, das Problem zu analysieren.

Prüfen Sie den Start des Zeitsynchronisationsprozesses (chronyd). Überprüfen Sie den Status der Zeitsynchronisation. Beachten Sie, dass CentOS7 'chronyd' ist, aber früher 'ntpd', also seien Sie vorsichtig, wenn Sie auf 6 oder früher sind.

[root@hostname ~]# ps aux | grep chronyd
chrony     567  0.0  1.3 117804 13664 ?        SL    5月04   0:04 /usr/sbin/chronyd
root     32489  0.0  0.0 112732   972 pts/1    S+   16:30   0:00 grep --color=auto chronyd
[root@hostname ~]# timedatectl
      Local time: Tag (des Monats) 2020-11-29 16:30:43 JST
  Universal time: Tag (des Monats) 2020-11-29 07:30:43 UTC
        RTC time: Tag (des Monats) 2020-11-29 07:30:43
       Time zone: Asia/Tokyo (JST, +0900)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

Es ist OK, wenn 'Lokale Zeit' mit der aktuellen Zeit übereinstimmt, 'NTP aktiviert' ist und 'NTP synchronisiert' ist.


1-8. Einstellungen für die Schlüsselauthentifizierung

Erlauben Sie den soeben hinzugefügten operativen Benutzern, sich nur mit Schlüsselauthentifizierung anzumelden.

Die einfache Deaktivierung der Passwortauthentifizierung erhöht die Sicherheit erheblich. Bei der Kennwortauthentifizierung werden Sie bei Verwendung eines komplexen Kennworts grundsätzlich nicht eingeloggt, aber die Wahrscheinlichkeit liegt nicht bei null Prozent. Bei der Schlüsselauthentifizierung können Sie sich jedoch nur dann anmelden, wenn Sie den Schlüssel überhaupt besitzen, d. h. solange Sie Ihren Schlüssel richtig verwalten, werden Sie nicht angemeldet.

Im Folgenden wird das Verfahren zur Einrichtung der Schlüsselauthentifizierung beschrieben.

[username@hostname ~]$ su - xxxxxx
[xxxxxx@hostname ~]$ ssh-keygen -t rsa -b 2048

※xxxxxxxx ist der Name des zusätzlichen operativen Benutzers.

※Nachdem Sie den Befehl "ssh-keygen -t rsa -b 2048" ausgeführt haben, werden Sie aufgefordert, eine Antwort zu geben, alle Standardwerte einzugeben und die Eingabetaste zu drücken. Auch ohne Passwort einzurichten. (Die Eingabe eines Passworts bietet zusätzliche Sicherheit als Schlüsselauthentifizierung plus Passwortauthentifizierung, aber in diesem Fall wird kein Passwort vorausgesetzt).


Überprüfen Sie dann, ob der Schlüssel erstellt wurde.

[xxxxxx@hostname ~]$ ll /home/xxxxxx/.ssh

※xxxxxxxx ist der Name des zusätzlichen operativen Benutzers.

Prüfen Sie, ob der private Schlüssel "id_rsa" und der öffentliche Schlüssel "id_rsa.pub" gespeichert sind.

Benennen Sie den öffentlichen Schlüssel um und verschieben Sie das Verzeichnis zum Herunterladen des privaten Schlüssels.

[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa.pub /home/xxxxxx/.ssh/authorized_keys
[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa /home/xxxxxx/id_rsa

※xxxxxxxx ist der Name des zusätzlichen operativen Benutzers.

Löschen Sie den privaten Schlüssel (id_rsa) vom Server, nachdem Sie ihn lokal verschoben haben.

Verschieben Sie /home/xxxxxxxx/id_rsa nach local. (Gehen Sie z.B. zu WinSCP).

Führen Sie nach dem Verschieben den Löschbefehl aus.

[xxxxxx@hostname ~]$ rm /home/xxxxxx/id_rsa

※xxxxxxxx ist der in Schritt (3) hinzugefügte Nutzername.

Damit ist die Einrichtung der Schlüsselauthentifizierung abgeschlossen. Überprüfen Sie, ob Sie sich mit dem von Ihnen erstellten privaten Schlüssel anmelden können.

Sobald Sie die Bestätigung haben, dass Sie sich anmelden können, müssen Sie im letzten Schritt die Einstellungen so ändern, dass Sie sich nicht mit der Passwortüberprüfung anmelden können.

[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config


sshd_config【Vor der Änderung】


PasswordAuthentication yes


sshd_config【nach der Änderung】


PasswordAuthentication no

Überprüfen Sie die Syntax und starten Sie sshd neu.

[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd

Damit ist die Einrichtung der Schlüsselauthentifizierung abgeschlossen.


2. Zusammenfassung

Wir haben die bei der Installation von CentOS erforderliche Erstkonfiguration beschrieben.

Die Informationen in diesem Artikel sind das Minimum, das bei der Installation von CentOS implementiert werden sollte. Wenn Sie also nach dem Lesen dieses Artikels das Gefühl haben, dass es Defizite gibt, versuchen Sie bitte, diese zu beheben.

Danke, dass Sie bis zum Ende zugesehen haben.