So installieren und erstellen Sie einen Beispieldienst mit Xinetd unter RHEL 8 / CentOS 8 Linux

So installieren und erstellen Sie einen Beispieldienst mit Xinetd unter RHEL 8 / CentOS 8 Linux

Xinetd oder The Extended Internet Services Dämon ist ein sogenannter Super-Server. Sie können es so konfigurieren, dass es an Ort für viele Dienste zuhört und den Dienst starten kann, der eine eingehende Anfrage nur dann bearbeiten sollte. Dies scheint zwar nicht eine große Sache für ein System zu sein, in dem der Verkehr relativ dauerhaft ist.

In diesem Artikel werden wir Xinetd auf einem RHEL 8 / CentOS 8 installieren, und wir werden das setzen sshd Dämon unter seiner Sorge. Nachdem wir das Setup überprüft haben, werden wir die Konfiguration ein wenig optimieren, um die Zugriffskontrolle in Aktion zu sehen.

In diesem Tutorial lernen Sie:

  • So installieren Sie Xinetd
  • So richten Sie SSHD auf RHEL 8 / CentOS 8 als Xinetd -Service ein
  • So ermöglichen Sie den Zugriff nur von einem bestimmten Netzwerk auf den SSHD -Dienst von Xinetd
  • So prüfen Sie den Datenverkehr von Xinetd -Protokolleinträgen
Ermöglichen Sie Zugriff von einem bestimmten Netzwerksegment auf SSHD.

Softwareanforderungen und Konventionen verwendet

Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Rhel 8 / Centos 8
Software Xinetd 2.3.15-23, OpenSSH 7.8p1
Andere Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

So installieren Sie den Xinetd -Service in Red Hat 8 Schritt für Schritt Anweisungen

Xinetd kann nach der Einrichtung der offiziellen Abonnementverwaltungsrepositories in den Basis -Repositories gefunden werden. Der sshd Der Server ist standardmäßig in jedem roten Hut (und so ziemlich jede Linux -Verteilung) installiert.

WARNUNG
Denk daran, dass sshd wird während dieses Setups ausgeschaltet. Versuchen Sie nicht, diese Anleitung in einem System zu vervollständigen, auf das Sie nur mit SSH zugreifen können. Andernfalls verlieren Sie Ihre Verbindung zum System in der Minute, in der Sie SSHD ausschalten, um den Xinetd -Server zu starten.
  1. Faust Wir müssen die installieren Xinetd Dämon. Wir werden verwenden DNF:
    # DNF Installieren Sie Xinetd
  2. Wenn Ihr System aus irgendeinem Grund keine OpenSSH -Installation enthält, können Sie Pakete wie in diesem Fall installieren OpenSsh Verpacken Sie genauso wie oben:
    # DNF Install OpenSSH


  3. Xinetd wird mit einer Standardkonfigurationsdatei geliefert /etc/xinetd.Conf, sowie einige ordentliche Beispiele in der /etc/xinetd.D/ Verzeichnis, alle standardmäßig deaktiviert. Mit einem Texteditor wie vi oder Nano, Erstellen wir eine neue Textdatei /etc/xinetd.d/ssh Mit dem folgenden Inhalt (beachten Sie, dass die neue Zeile nach dem Dienstnamen obligatorisch ist):
    Service SSH disable = no socket_type = Stream Protocol = TCP port = 22 Wait = none = root server =/usr/sbin/sshd server_args = -i
    Kopieren
  4. Wenn der sshd Der Server läuft auf dem System, wir müssen es ansonsten stoppen Xinetd kann nicht an TCP Port 22 binden. Dies ist der Schritt, in dem Sie getrennt werden, wenn Sie über SSH angemeldet sind.
    # Systemctl Stopp SSHD

    Wenn wir auf lange Sicht SSHD über Xinetd verwenden möchten, können wir auch deaktivieren systemd Service dafür, um zu verhindern, dass es zur Startzeit beginnt:

    SystemCTL Deaktivieren SSHD
  5. Jetzt können wir anfangen Xinetd:
    # Systemctl Start Xinetd

    Und optionales Aktivieren Sie das Start zur Startzeit:

    # Systemctl aktivieren Xinetd
  6. Nach dem Start von Xinetd können wir uns von SSH anmelden, da unser grundlegender Setup keine zusätzliche Einschränkung enthält. Um den Service zu testen, bitten wir um eine Anmeldung auf Lokalhost:
    # SSH localhost root@localhosts Passwort: Letzte Login: Sun 31. März 17:30:07 2019 von 192.168.1.7 #
  7. Fügen wir eine weitere Zeile hinzu zu /etc/xinetd.d/ssh, Kurz vor dem Schlussarmband:
    […] Server =/usr/sbin/sshd server_args = -i nur_from = 192.168.0.0 

    Mit dieser Einstellung haben wir den Zugriff nur aus dem Netzwerksegment 192 einschränken.168.*.*. Wir müssen Xinetd neu starten, damit diese Konfigurationsänderung wirksam wird:

    # SystemCTL Neustart Xinetd neu starten
  8. Unser Laborgerät hat mehr als eine Schnittstellen. Um die obige Einschränkung zu testen, versuchen wir, eine Verbindung zu einer Schnittstelle herzustellen, die durch die Xinetd -Konfiguration nicht zulässig ist, und eine, die tatsächlich zulässig ist:
    # Hostname -i Fe80 :: 6301: 609f: 4A45: 1591%ENP0S3 FE80 :: 6F06: DFDE: B513: 1A0E%ENP0S8 10.0.2.15 192.168.1.14 192.168.122.1

    Wir werden versuchen, die Verbindung aus dem System selbst zu öffnen, sodass unsere Quell -IP -Adresse dem Ziel entspricht, mit dem wir eine Verbindung herstellen möchten. Daher, wenn wir versuchen, eine Verbindung zu einer Verbindung zu haben 10.0.2.15, Wir dürfen sich nicht anschließen:

    # SSH 10.0.2.15 SSH_EXCHANGE_IDIENTIFIZIERUNG: Lesen: Verbindungsreset durch Peer

    Während die Adresse 192.168.1.14 liegt innerhalb des zulässigen Adressbereichs. Wir erhalten die Passwortaufforderung und können sich anmelden:

    # SSH 192.168.1.14 [email protected] Passwort von 14:


  9. Da wir die Standard -Protokollierungskonfiguration nicht geändert haben, werden unsere Anmeldesversuche (oder mit anderen Wörtern unsere Versuche, auf den Xinetd -Dienst zuzugreifen) angemeldet /var/log/messages. Die Protokolleinträge können mit einem einfachen gefunden werden Grep:
    Katzen/var/log/messages | GREP XINETD 31. März 18:30:13 RHEL8LAB XINETD [4044]: START: SSH PID = 4048 von = :: ffff: 10.0.2.15. März 31. 18:30:13 RHEL8LAB XINETD [4048]: Fail: SSH -Adresse von = :: ffff: 10.0.2.15. März 31. 18:30:13 RHEL8LAB XINETD [4044]: Beenden: SSH Status = 0 PID = 4048 Dauer = 0 (Sek.) 31. März 18:30:18 rhel8lab xinetd [4044]: Start: ssh pid = 4050 from = :: ffff: 192.168.1.14

    Diese Nachrichten machen es leicht zu wissen, wie auf unsere Dienste zugegriffen werden. Während es viele andere Optionen gibt (einschließlich begrenzter übereinstimmender Verbindungen oder Zeitüberschreitungen nach fehlgeschlagenen Verbindungen, um DOS-Angriffe zu verhindern), zeigt dieses einfache Setup hoffentlich die Kraft dieses Super-Servers, das das Leben des Sysadmins erleichtert-insbesondere überfüllt, im Internet ausgerichtet Systeme.

Verwandte Linux -Tutorials:

  • Dinge zu installieren auf Ubuntu 20.04
  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Big Data Manipulation zum Spaß und Gewinn Teil 1
  • Vergleich von Linux Apache Pre -Onk -vs -Worker -MPMs
  • So richten Sie einen OpenVPN -Server auf Ubuntu 20 ein.04
  • Erweiterte Protokollierung und Prüfung unter Linux
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Mint 20: Besser als Ubuntu und Microsoft Windows?
  • So exportieren Sie Repositorys mit dem Git-Daemon
  • Mastering -Bash -Skriptschleifen beherrschen