So erstellen Sie einen neuen Benutzer in CentOS und aktivieren die Schlüsselanmeldung

So erstellen Sie einen neuen Benutzer in CentOS und aktivieren die Schlüsselanmeldung

CentOS hat standardmäßig nur einen Root-Benutzer, aber der Root-Benutzer hat zu viele Berechtigungen und ist für die Zusammenarbeit mehrerer Personen nicht förderlich. Aus Gründen der Berechtigungsverwaltung und Sicherheit erstellen wir einen neuen Benutzer für das System und aktivieren dessen SSH-Anmeldung, während wir die Anmeldung des Root-Benutzers deaktivieren.

Basierend auf der Praxis CentOS Linux release 7.6.1810 (Core) ;

Neuen Benutzer anlegen

In CentOS gibt es keinen Unterschied zwischen adduser und useradd :

[root@centos_7_6_1810 ~]# ll /usr/sbin/ | grep-Benutzer
lrwxrwxrwx 1 root root 7 Jun 24 10:14 adduser -> useradd
-rwxr-xr-x. 1 root root 33104 3. August 2017 fuser
-rwxr-xr-x. 1 root root 15832 13. April 2018 lnewusers
-rwxr-xr-x. 1 Wurzel Wurzel 15752 13. April 2018 luseradd
-rwxr-xr-x. 1 Wurzel Wurzel 11576 13. April 2018 luserdel
-rwxr-xr-x. 1 root root 19896 13. April 2018 lusermod
-rwxr-xr-x 1 root root 76232 14. März 2019 neue Benutzer
-rwxr-xr-x 1 root root 33072 14. März 2019 runuser
-rwxr-xr-x. 1 root root 19720 11. April 2018 sasldblistusers2
-rwxr-x--- 1 root root 118224 14. März 2019 useradd
-rwxr-x--- 1 root root 80400 14. März 2019 userdel
-rwxr-x--- 1 root root 113856 14. März 2019 usermod
-rwsr-xr-x. 1 root root 11376 31. Oktober 2018 usernetctl

Aus dem obigen Befehl können wir erkennen, adduser nur ein Softlink des Befehls useradd ist.

Was Softlinks betrifft, können Sie sich diese vorübergehend als Verknüpfungen im Windows-System vorstellen.

Verwenden Sie den Befehl useradd , um einen neuen Benutzer zu erstellen:

[root@centos_7_6_1810 ~]# Benutzeradd luizyao
[root@centos_7_6_1810 ~]# ls /home/
Abonnieren

In den meisten Linux-Distributionen erstellt der Befehl useradd kein entsprechendes Benutzerverzeichnis unter /home/ . Wenn Sie eines erstellen möchten, müssen Sie dem Befehl die Option -m (--create-home) hinzufügen. CentOS erstellt dieses Benutzerverzeichnis jedoch automatisch für uns.

Wenn wir uns mit diesem Benutzernamen am System anmelden möchten, müssen wir dafür ein Passwort festlegen:

[root@centos_7_6_1810 ~]# passwd luizyao
Passwort für Benutzer luizyao ändern.
Neues Passwort:
Neues Passwort wiederholen:
passwd: Alle Authentifizierungstoken erfolgreich aktualisiert.

Anschließend können wir uns mit diesem Benutzer am System anmelden:

[luizyao@centos_7_6_1810 ~]$ werami
Abonnieren

Neue Benutzer autorisieren

Normalerweise haben neue Benutzer volle Berechtigungen in ihrem eigenen Benutzerverzeichnis (/home/luizyao/), und andere Verzeichnisse erfordern die Autorisierung anderer. Die am häufigsten verwendeten Berechtigungen sind die des Root-Benutzers, und sudo kann uns dabei helfen: Er ermöglicht vertrauenswürdigen Benutzern, Befehle als andere Benutzer auszuführen, und standardmäßig wird der Root-Benutzer verwendet.

Der neue Benutzer befindet sich nicht in der Liste der vertrauenswürdigen Benutzer, daher können wir den Root-Benutzer nicht zum Ausführen von Befehlen verwenden:

Hinweis: Melden Sie sich jetzt als neuer Benutzer beim System an.

[luizyao@centos_7_6_1810 /]$ sudo whoami
[sudo] Passwort für luizyao:
luizyao ist nicht in der sudoers-Datei. Dieser Vorfall wird gemeldet.

In CentOS haben wir zwei Möglichkeiten, neue Benutzer zur Sudoers-Liste hinzuzufügen:

Hinweis: Melden Sie sich jetzt als Root beim System an.

Methode 1: Den neuen Benutzer zur wheel -Benutzergruppe hinzufügen

Bei RedHat-Distributionen wie CentOS und Fedora wurden der Benutzergruppe wheel Sudo-Berechtigungen gewährt. Daher können wir der Benutzergruppe „ wheel neue Benutzer hinzufügen, um diese mit Sudo-Berechtigungen auszustatten:

[root@centos_7_6_1810 ~]# Gruppen luizyao
luizyao: luizyao
[root@centos_7_6_1810 ~]# usermod -aG Rad luizyao
[root@centos_7_6_1810 ~]# Gruppen luizyao
luizyao: luizyao-Rad

Mit dem Befehl usermod fügen wir den neuen Benutzer zur wheel -Benutzergruppe hinzu. Mit dem Befehl groups können Sie die Benutzergruppen anzeigen, zu denen der Benutzer gehört.

An diesem Punkt kann der neue Benutzer Befehle mit Root-Rechten ausführen:

[luizyao@centos_7_6_1810 root]$ sudo whoami
[sudo] Passwort für luizyao:
Wurzel

Beachten:

Bei dieser Methode müssen Sie das Kennwort des neuen Benutzers eingeben, um den Befehl sudo auszuführen, da dies die Standardkonfiguration der wheel Benutzergruppe ist, wie unten gezeigt:

# /etc/sudoers

106 ## Ermöglicht Personen in der Gruppe „wheel“, alle Befehle auszuführen
107 %Rad ALLE=(ALLE) ALLE
108
109 ## Dasselbe ohne Passwort
110 # %wheel ALLE=(ALLE) NOPASSWD: ALLE

Entfernen Sie einen Benutzer aus einer Gruppe. Sie können den folgenden Befehl verwenden:

[root@centos_7_6_1810 ~]# gpasswd -d luizyao Rad
Benutzer „luizyao“ aus der Gruppe „wheel“ entfernen
[root@centos_7_6_1810 ~]# Gruppen luizyao
luizyao: luizyao

Methode 2: Einen neuen Benutzer zur sudoers -Liste hinzufügen

In der Datei /etc/sudoers können Sie Sudo-Berechtigungen für Benutzer und Benutzergruppen konfigurieren. Dies ist ein flexiblerer Ansatz. Darüber hinaus gibt es zwei Möglichkeiten, Berechtigungen für neue Benutzer zu konfigurieren:

1. Sie können die Berechtigungen des neuen Benutzers direkt in der Datei /etc/sudoers konfigurieren. Beachten Sie jedoch, dass die Standardberechtigung dieser Datei schreibgeschützt ist. Sie müssen daher zuerst die Schreibberechtigung hinzufügen und sie nach der Bearbeitung dann auf schreibgeschützt wiederherstellen.

Bitte verwenden Sie den Befehl visodu , um die Datei /etc/sudoers zu ändern, da er Ihnen bei der Überprüfung auf Syntaxfehler hilft.

2. Sie können auch eine dedizierte Konfigurationsdatei für den neuen Benutzer im Verzeichnis /etc/sudoers.d hinzufügen (empfohlen):

bash [root@centos_7_6_1810 ~]# echo "luizyao ALL=(ALL) NOPASSWD:ALL" | tee /etc/sudoers.d/luizyao luizyao ALL=(ALL) NOPASSWD:ALL [root@centos_7_6_1810 ~]# ll /etc/sudoers.d/luizyao -rw-r--r-- 1 root root 32. Sep. 17 17:51 /etc/sudoers.d/luizyao

Der obige Befehl bedeutet, dass luizyao jeden Befehl (das dritte ALL) auf jedem Host (das erste ALL) als jeder Benutzer (das zweite ALL, standardmäßig root) ohne Passwort ausführen kann:

[luizyao@centos_7_6_1810 root]$ sudo whoami
Wurzel

Hinweis: Der Name der Datei kann beliebig sein, aber wir konfigurieren ihn normalerweise auf den Benutzernamen.

Aktivieren Sie die SSH-Schlüsselanmeldung für neue Benutzer

Melden Sie sich jetzt als neuer Benutzer beim System an.

Erstellen Sie ein Schlüsselpaar:

[luizyao@centos_7_6_1810 ~]$ ssh-keygen -t ecdsa # Elliptic Curve Digital Signature Algorithm. Generieren eines öffentlichen/privaten ECDSA-Schlüsselpaars.
Geben Sie die Datei ein, in der der Schlüssel gespeichert werden soll (/home/luizyao/.ssh/id_ecdsa): # Wählen Sie den Ordner aus, in dem das Schlüsselpaar gespeichert ist. Verzeichnis „/home/luizyao/.ssh“ erstellt.
Geben Sie die Passphrase ein (leer, wenn keine Passphrase vorhanden ist): # Passwort für den privaten Schlüssel. Geben Sie die gleiche Passphrase erneut ein: # Bestätigen Sie das Passwort des privaten Schlüssels. Ihre Identifikation wurde unter /home/luizyao/.ssh/id_ecdsa gespeichert.
Ihr öffentlicher Schlüssel wurde in /home/luizyao/.ssh/id_ecdsa.pub gespeichert.
Der Schlüsselfingerabdruck ist:
SHA256:FljQN9JFxB/C83Mv7N3rFNLCxXICRxaKzKDb+Tzsgwo luizyao@centos_7_6_1810
Das Randomart-Bild des Schlüssels ist:
+---[ECDSA 256]---+
| .+.. B==. |
| .o* = X o |
| .. .* o B = |
| o .. . X .|
| . oS = =.|
| .+ = o|
| E .= . +.|
| . .... oo|
| .. .. .o.|
+----[SHA256]-----+

Laden Sie den privaten Schlüssel auf Ihren lokalen Computer herunter:

Basierend auf der Mac OS-Praxis;

Verwenden Sie den scp -Befehl, um den privaten Schlüssel herunterzuladen:

yaomengdeMacBook-Air:~ yaomeng$ scp luizyao@<IP-Adresse>:/home/luizyao/.ssh/id_ecdsa ~/.ssh/

An dieser Stelle benötigen wir noch ein Passwort zum Einloggen:

yaomengdeMacBook-Air:~ yaomeng$ ssh luizyao@<IP-Adresse>
Geben Sie die Passphrase für den Schlüssel „/Users/yaomeng/.ssh/id_ecdsa“ ein: # Geben Sie das Kennwort für den privaten Schlüssel ein. Die Anmeldung ist fehlgeschlagen. Kennwort [email protected]: # Benutzerkennwort von luizyao. Letzte Anmeldung: Di., 17. September 2019, 22:50:22

SSH-Anmeldung ohne Passwort

Benennen Sie den öffentlichen Schlüssel in authorized_keys um:

[luizyao@centos_7_6_1810 ~]$ mv ~/.ssh/id_ecdsa.pub ~/.ssh/authorized_keys
[luizyao@centos_7_6_1810 ~]$ ll ~/.ssh/
insgesamt 8
-rw-r--r-- 1 luizyao luizyao 185 17. September 22:58 autorisierte Schlüssel
-rw------- 1 luizyao luizyao 314 Sep 17 22:58 id_ecdsa

Beachten:

Da ich vorher keine authorized_keys-Datei hatte, habe ich sie hier einfach umbenannt. Wenn Sie bereits eine authorized_keys-Datei haben, können Sie den öffentlichen Schlüssel mit dem folgenden Befehl am Ende der Datei hinzufügen:

Katze >> ~/.ssh/authorized_keys < ~/.ssh/id_ecdsa.pub

Beachten Sie: Wenn anderen Benutzern Schreibberechtigungen für die Datei authorized_keys, das Verzeichnis ~/.ssh/ oder das Home-Verzeichnis des Benutzers (/home/luizyao/) erteilt werden, erkennt sshd die Datei als unsicher und verwendet sie nicht, sofern Sie „StrictModes“ nicht auf „no“ gesetzt haben.

Sie können die Hilfedokumentation über den Befehl man sshd anzeigen:

~/.ssh/autorisierte_schlüssel
   Listet die öffentlichen Schlüssel (DSA, ECDSA, Ed25519, RSA) auf, die für die Anmeldung als dieser Benutzer verwendet werden können. Das Format dieser Datei ist oben beschrieben. Der Con
   Der Inhalt der Datei ist nicht hochsensibel, aber die empfohlenen Berechtigungen sind Lesen/Schreiben für den Benutzer und kein Zugriff durch andere.

   Wenn diese Datei, das Verzeichnis ~/.ssh oder das Home-Verzeichnis des Benutzers für andere Benutzer beschreibbar sind, könnte die Datei von nicht autorisierten Benutzern geändert oder ersetzt werden.
   rifizierte Benutzer. In diesem Fall lässt sshd die Verwendung nicht zu, es sei denn, die Option StrictModes wurde auf „no“ gesetzt.

An diesem Punkt können wir SSH verwenden, um uns ohne Passwort anzumelden:

yaomengdeMacBook-Air:~ yaomeng$ ssh [email protected]
Geben Sie die Passphrase für den Schlüssel "/Users/yaomeng/.ssh/id_ecdsa" ein: # Privater Schlüssel Passwort Letzte Anmeldung: Mi 18. Sep 2019 00:00:41 von 49.65.108.161

Deaktivieren der SSH-Passwortanmeldung

Jetzt können wir uns immer noch mit einem Passwort anmelden, was immer noch unsicher ist. Jetzt werden wir die Verwendung von Passwörtern zum Anmelden beim System verbieten.

Für CentOS-Systeme müssen Sie lediglich PasswordAuthentication in der SSH-Konfigurationsdatei /etc/ssh/sshd_config auf no ändern.

Starten Sie den SSH-Dienst neu:

[luizyao@centos_7_6_1810 ~]$ sudo systemctl sshd neu starten

Wir haben die Passwortanmeldung für SSH deaktiviert und erlauben nur die Anmeldung mit Schlüsseln;

andere

Um die Sicherheit des Systems weiter zu verbessern, können wir noch etwas tun:

Deaktivieren Sie die Anmeldung des Root-Benutzers über SSH

Ändern Sie einfach PermitRootLogin in der SSH-Konfigurationsdatei /etc/ssh/sshd_config in no und starten Sie dann den SSH-Dienst neu.

Verwenden eines unkonventionellen SSH-Ports

Der Standard-SSH-Port ist 22. Wir können ihn in einen ungewöhnlichen Port ändern: Ändern Sie Port Wert in der SSH-Konfigurationsdatei /etc/ssh/sshd_config (zum Beispiel: 10178) und starten Sie dann den SSH-Dienst neu;

Wir müssen auch die SSHD-Konfiguration in der Firewall ändern. CentOS 7 verwendet standardmäßig Firewalld. Wir konfigurieren es wie folgt:

Kopieren Sie die Standardkonfigurationsdatei von Firewalld über SSH in den Systemkonfigurationsordner:

[luizyao@centos_7_6_1810 ~]$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/

Ändern Sie die Portkonfiguration in der Konfigurationsdatei:

<!-- /etc/firewalld/services/ -->

<?xml version="1.0" encoding="utf-8"?>
<Dienst>
 <kurz>SSH</kurz>
 <description>Secure Shell (SSH) ist ein Protokoll zum Anmelden bei und Ausführen von Befehlen auf Remote-Rechnern. Es bietet sichere verschlüsselte Kommunikation. Wenn Sie planen, über eine Firewall-Schnittstelle per SSH remote auf Ihren Rechner zuzugreifen, aktivieren Sie diese Option. Damit diese Option nützlich ist, muss das OpenSSH-Server-Paket installiert sein.</description>
 <Port-Protokoll="tcp" Port="10178"/>
</Dienst>

Firewalld-Konfiguration neu laden:

[luizyao@centos_7_6_1810 ~]$ sudo firewall-cmd --reload
Erfolg

Ping deaktivieren

Fügen Sie der Firewall folgende Regeln hinzu und laden Sie die Konfiguration neu:

[luizyao@centos_7_6_1810 ~]$ sudo firewall-cmd --permanent --add-icmp-block=echo-reply
[luizyao@centos_7_6_1810 ~]$ sudo firewall-cmd --permanent --add-icmp-block=echo-request
[luizyao@centos_7_6_1810 ~]$ sudo firewall-cmd --reload

Zusammenfassen

Oben ist die Methode, die ich Ihnen vorgestellt habe, um einen neuen Benutzer zu erstellen und die Schlüsselanmeldung in CentOS zu aktivieren. Ich hoffe, sie wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • So sperren Sie einen Benutzer und verhindern, dass er sich nach N fehlgeschlagenen Anmeldeversuchen in Centos7 anmeldet
  • Lösung für das Problem, dass nach der Konfiguration der passwortfreien SSH-Anmeldung in CentOS immer noch ein Passwort eingegeben werden muss
  • So ändern Sie den SSH-Anmeldeport in CentOS7
  • Redhat 7/CentOS 7 SSH-Anmeldemethode ohne Passwort
  • So ändern Sie den SSH-Port und deaktivieren die Root-Remote-Anmeldung in CentOS 6.5
  • Tutorial zur passwortfreien SSH-Anmeldekonfiguration in CentOS 6.5
  • Konfigurationsdatei für die passwortlose SSH-Anmeldung unter CentOS

<<:  Ausführliche Erläuterung des Prinzips des MySQL Innodb-Index

>>:  Einige Erfahrung im Aufbau des React Native-Projektframeworks

Artikel empfehlen

Detaillierte Erklärung der Sperrstruktur in MySQL

Mysql unterstützt 3 Arten von Sperrstrukturen Spe...

So verwenden Sie die MySQL-Indexzusammenführung

Die Indexzusammenführung ist ein intelligenter Al...

So lösen Sie das Problem, dass MySQL nicht geschlossen werden kann

Lösung, wenn MySQL nicht geschlossen wird: Klicke...

Analyse und Lösung des abnormalen Problems beim Laden von JAR in Tomcat

Beschreibung des Phänomens: Das Projekt verwendet...

Einige allgemeine erweiterte SQL-Anweisungen in MySQL

Erweiterte MySQL-SQL-Anweisungen benutze kgc; Tab...

Zusammenfassung der speicherbezogenen Parameter von MySQL 8.0

Theoretisch entspricht der von MySQL verwendete S...

Mit CSS3 implementierte Schaltfläche zum Hovern von Bildern

Ergebnis:Implementierungscode html <ul Klasse=...

Analyse der Vor- und Nachteile von gespeicherten MySQL-Prozeduren

MySQL Version 5.0 begann, gespeicherte Prozeduren...

...

JS removeAttribute()-Methode zum Löschen eines Attributs eines Elements

Verwenden Sie in JavaScript die Methode removeAtt...

Implementierungscode zum Betreiben einer MySQL-Datenbank in Golang

Vorwort Golang stellt das Datenbank-/SQL-Paket fü...

Fallerklärung für den Nginx-Reverse-Proxy zu Go-FastDFS

Hintergrund go-fastdfs ist ein verteiltes Dateisy...

Analyse des Remote-Debuggings und des Timeout-Betriebsprinzips von Webdiensten

Remote-Debugging von Webdiensten In .NET ist die ...