Hier ist eine Frage von Gokul, einem der regelmäßigen Leser bei Techglimpse – hosts.allow funktioniert nicht mit der Minimalinstallation von CentOS 7.
Frage:Ich habe kürzlich eine Minimalversion von CentOS auf meinem VPS installiert. Nach der Installation habe ich versucht, hosts.allow so zu konfigurieren, dass TCP-Verbindungen nur von bekannten IP-Adressen und ihren Bereichen zugelassen werden. Dazu bearbeite ich im Allgemeinen /etc/hosts.allow und erlaube IP-Adressen wie folgt:
ALLE:10.180.*.*, 106.*.*.*:erlauben
Aber aus irgendeinem Grund konnte ich von einer nicht vertrauenswürdigen IP-Adresse (diejenige, die in hosts.allow nicht erlaubt war) mit SSH auf den Server zugreifen. Es scheint, als ob hosts.allow bei der minimalen Installation von CentOS 7 nicht funktioniert. Wie kann dieses Problem gelöst werden? – Gökul
Reparieren Sie hosts.allow, das bei der Minimalinstallation von CentOS 7 nicht funktioniert
Im Allgemeinen hosts.allow
enthält Regeln zum Zulassen oder Ablehnen von Verbindungen zu Netzwerkdiensten, die von tcp_wrappers
gesteuert werden Bücherei. Wenn also Ihre hosts.allow
Einträge korrekt sind und wenn es immer noch nicht funktioniert, dann müssen Sie nachsehen, ob tcp_wrappers
Bibliothek wird in der minimalen Betriebssysteminstallation installiert. In den meisten Fällen ist tcp_wrapper
bei den minimalen Installationen möglicherweise nicht enthalten Bibliothek vorinstalliert. Daher könnte die Installation von tcp_wrapper das Problem lösen.
tcp_wrapper-Bibliothek installieren:
Eigentlich der Daemon, der hosts.allow
liest und hosts.deny
ist tcpd
. Sie müssen also prüfen, welche Bibliothek tcpd
bereitstellt Daemon wie folgt:
# yum provides tcpd
Beispielausgabe:
tcp_wrappers-7.6-77.el7.x86_64 : A security tool which acts as a wrapper for TCP : daemons Repo : base Matched from: Filename : /usr/sbin/tcpd
Die Beispielausgabe bestätigt, dass die Datei tcpd
binär wird von tcp_wrappers
bereitgestellt Bücherei. Installieren Sie tcp_wrappers
Bibliothek mit yum
.
# yum install tcpd ::::::::::::::::::::: Installed: tcp_wrappers.x86_64 0:7.6-77.el7
Nach dem Bearbeiten von hosts.allow
und hosts.deny
, starten Sie den Daemon wie folgt:
# /usr/sbin/tcpd
Prüfen Sie, ob hosts.allow
erlaubt zu Recht nur vertrauenswürdigen Hosts den Zugriff auf Netzwerkdienste.
Funktioniert immer noch nicht? In den meisten Fällen sollten Sie immer DENY ALL
in hosts.deny
bevor Sie hosts.allow
zulassen
Zum Beispiel
What has always worked for me is: /etc/hosts.deny = ALL: ALL: DENY /etc/hosts.allow = sshd: 10.168.1.21
Hoffe es hilft.