In letzter Zeit wurde der Server häufig mit Brute-Force-Angriffen geknackt. Wir haben das Eindringverhalten grob analysiert und die häufig verwendeten Sicherheitsstrategien herausgearbeitet: Minimale Berechtigungen + minimale Dienste = maximale Sicherheit
1. Ändern Sie den Standard-SSH-Verbindungsport 22 und fügen Sie über die folgenden Portschritte die Firewall „Firewalld“ hinzu: 1) Ändern Sie den Standard-SSH-Port auf 22: vi /etc/ssh/sshd_config

2) Erlauben Sie der Firewall, diesen Port zu passieren firewall-cmd --state [ob Firewalld läuft] firewall-cmd --permanent --list-port [Portliste anzeigen] firewall-cmd --permanent --zone=public --add-port=48489/tcp [Port hinzufügen] firewall-cmd --permanent --remove-port=48489/tcp [Port löschen]
3) Starten Sie den SSH-Dienst neu und beenden Sie den aktuell verbundenen SSH-Port Dienst SSHD neu starten
4) Stellen Sie dann über die SSH-Verbindungssoftware Putty eine Verbindung her. Sie können SSH nicht über den Standardport 22 aufrufen. Wenn Sie Ihr Ziel erreichen, ist es OK~ 2. Deaktivieren Sie die direkte Anmeldung per Root-Konto Der Standardadministratorname von Linux ist root. Sie müssen nur das ROOT-Passwort kennen, um sich direkt bei SSH anzumelden. Das Deaktivieren der direkten Anmeldung von Root über SSH kann die Serversicherheit verbessern. Dies kann nach den folgenden Vorgängen erreicht werden. 1) Erstellen Sie ein neues Konto und legen Sie das Kontokennwort fest Benutzer hinzufügen itangs passwd ityangs
2) Erlauben Sie root nicht, sich direkt anzumelden vi /etc/ssh/sshd_config
Suchen Sie nach „#PermitRootLogin yes“, entfernen Sie das führende „#“, ändern Sie das kurze „Yes“ in „No“ und speichern Sie die Datei. 
systemctl restart sshd.service [SSH neu starten, eine andere Möglichkeit zum Neustart]
3) Nächster Login Verwenden Sie zunächst das neu erstellte Konto „ityangs“, um sich als normaler Benutzer anzumelden. Um ROOT-Berechtigungen zu erhalten, führen Sie den folgenden Befehl in SSH aus: su-Wurzel
Führen Sie den obigen Befehl aus und geben Sie das Root-Passwort ein, um Root-Berechtigungen zu erhalten. 4) Tipps zum Wechseln zu Root mit su unter WinSCP (wenn die Remote-SSH-Anmeldung als Root verboten ist) Die Remote-Anmeldung des Root-Benutzers ist eingeschränkt, wichtige Datendateien sind jedoch alle 700. Noch trauriger ist, dass WinSCP völlig nutzlos ist. Weil sich das Root-Konto nicht anmelden kann und Protokolle wie FTP, SFTP und SCP den Benutzerwechsel nach der Anmeldung nicht unterstützen. Das SCP-Protokoll kann beim Anmelden eine Shell angeben. Die standardmäßige und empfohlene Shell ist /bin/bash, aber wir können sie auch modifizieren, um etwas Ausgefallenes zu tun, z. B. indem wir sie in sudo su ändern - Doch nun taucht ein neues Problem auf. Sudo verlangt ein Passwort, WinSCP kennt bei der Anmeldung jedoch keinen interaktiven Prozess. Es gibt jedoch immer jemanden, der das Sudu-Passwort löschen kann, indem er visudo mit Root-Rechten ausführt und die folgende Zeile hinzufügt: IhrBenutzername ALL=NOPASSWD: ALL Um sudo in einer Nicht-Putty-Umgebung zu verwenden, müssen wir auch die folgende Zeile auskommentieren: Standardanforderungen Speichern Sie es dann und Sie können beim Anmelden bei WinSCP das Root-Vergnügen genießen!
Schritt: Normale Benutzer verbinden sich per SSH mit dem Server und wechseln zu Root-Berechtigungen visudo, dann fügen Sie die Zeile yourusername ALL=NOPASSWD: ALL hinzu und kommentieren Sie Defaults requiretty aus [root@iZ252wo3Z ~]# sichtbar ities ALL=NOPASSWD: ALL #Standards erforderlich [Keine Sorge, wenn es nicht verfügbar ist]
Ändern Sie das Dateiprotokoll von WinSCP in SCP 
Ändern Sie die Umgebung-SCP/Shell-Shell in sudo su- 
Melden Sie sich einfach bei WinSCP an. 3. Installieren Sie DenyHosts [fangen Sie die angreifende IP ab, erstellen Sie eine Blacklist und verhindern Sie weitere Angriffe] DenyHosts (Projekthomepage: http://denyhosts.sourceforge.net/) ist eine Software, die unter Linux läuft und SSH-Brute-Force-Cracking verhindert. Sie kann von http://sourceforge.net/projects/denyhosts/files/ heruntergeladen werden. Anschließend kann das heruntergeladene DenyHosts-2.6.tar.gz-Quellcodepaket auf das Linux-System hochgeladen werden. Hier ist der Installationsvorgang **************************************************************** tar zxvf DenyHosts-2.6.tar.gz #Entpacken Sie das Quellpaket cd DenyHosts-2.6 #Geben Sie das Installations- und Dekomprimierungsverzeichnis ein python setup.py install #Install DenyHosts cd /usr/share/denyhosts/ #Standardinstallationspfad cp denyhosts.cfg-dist denyhosts.cfg #denyhosts.cfg ist die Konfigurationsdatei cp daemon-control-dist daemon-control #daemon-control ist das Startprogramm chown root daemon-control #Root-Berechtigungen hinzufügen chmod 700 daemon-control #Wechsel zur ausführbaren Datei ln -s /usr/share/denyhosts/daemon-control /etc/init.d #Softlink Daemon-Control für einfache Verwaltung Die Installation ist nun abgeschlossen. /etc/init.d/daemon-control start #Denyhosts starten chkconfig daemon-control on #Denghosts so einstellen, dass es beim Booten gestartet wird ****************************************************************** vi /usr/share/denyhosts/denyhosts.cfg #Bearbeiten Sie die Konfigurationsdatei. Einige Parameter der Konfigurationsdatei können Sie mit grep -v "^#" denyhosts.cfg überprüfen. SECURE_LOG = /var/log/secure #ssh-Protokolldatei, Redhat-Serie beurteilt basierend auf der Datei /var/log/secure; Mandrake und FreeBSD beurteilen basierend auf /var/log/auth.log #SUSE verwendet /var/log/messages, um Beurteilungen zu treffen, die in der Konfigurationsdatei ausführlich erläutert werden. HOSTS_DENY = /etc/hosts.deny #Datei, die die Benutzeranmeldung steuert PURGE_DENY = 30m # Wie lange dauert es, die Verbotenen zu löschen? Stellen Sie es auf 30 Minuten ein. # 'm' = Minuten # 'h' = Stunden # 'd' = Tage # 'w' = Wochen # 'y' = Jahre BLOCK_SERVICE = sshd #Der verbotene Dienstname. Natürlich wird DenyHost nicht nur für SSH-Dienste verwendet. DENY_THRESHOLD_INVALID = 1 #Die Häufigkeit, mit der ungültige Benutzer scheitern dürfen DENY_THRESHOLD_VALID = 3 #Anzahl der zulässigen fehlgeschlagenen Anmeldeversuche für normale Benutzer DENY_THRESHOLD_ROOT = 3 #Anzahl der zulässigen Root-Anmeldefehler DAEMON_LOG = /var/log/denyhosts #Der Pfad, in dem die DenyHosts-Protokolldatei standardmäßig gespeichert ist Nachdem Sie die Standardkonfiguration von DenyHosts geändert haben, starten Sie den DenyHosts-Dienst neu, damit die Änderungen wirksam werden: /etc/init.d/daemon-control restart #denyhosts neu starten
Dies ist das Ende dieses Artikels. Freunde in Not können ihn zu Rate ziehen. Das könnte Sie auch interessieren:- Implementierungsschritte zum Erstellen eines lokalen Webservers auf Centos8
- So installieren und konfigurieren Sie den Postfix-Mailserver unter CentOS 8
- Installieren Sie die Befehlsfunktionen „Zip“ und „Unzip“ unter Linux und CentOS (Server).
- Grundlegende Schritte zur Sicherheitseinstellung für den CentOS7-Server
- So installieren und konfigurieren Sie einen FTP-Server in CentOS8.0
- CentOS 7.2 erstellt einen Nginx-Webserver zum Bereitstellen des Uniapp-Projekts
- Detaillierte Erläuterung der Online-Bereitstellung des NodeJs-Projekts CentOs Linux-Server
- Detailliertes Tutorial zum Erstellen eines Gitlab-Servers auf CentOS8.1
|