Wie sichere ich einen öffentlich zugänglichen Remotedesktop-Server?

16

Ich möchte meinen Remotedesktop-Server (Terminaldienste) für den Zugriff von außerhalb unseres Netzwerks verfügbar machen. Derzeit kann nur von unserem Netzwerk aus darauf zugegriffen werden.

Ich weiß, dass es einfach genug ist, die Firewall zu öffnen und den Port weiterzuleiten.

Wie kann ich die Maschine selbst sichern und welche Best Practices gibt es dafür? Mein Anliegen ist es, dass Hacker daran arbeiten können, in das System einzudringen.

Best Practice-Richtlinien / -Empfehlungen sind sehr willkommen.


Bearbeiten:

Frage zu einem Produkt, das ich gefunden habe:

Filtern Sie eingehende RDP-Verbindungen nach IP, MAC-Adresse, Computernamen und mehr

Kann jemand die Sicherheit dazu kommentieren? Sieht so aus, als könnte ich damit auch den Zugriff nach Computername / Mac einschränken? Hat es noch jemand benutzt?

me2011
quelle
1
Ich denke, Sie fragen sich nicht nur, wie Sie diesen Computer und jede RDP-Verbindung zu ihm sichern, sondern auch, wie Sie das Risiko für den Rest Ihres Netzwerks verringern können, falls es gefährdet wird. Ist das richtig?
Dunxd
Ja, richtig, da wir so klein sind, gibt es nur einen RDP-Server, und für die internen Benutzer sind vollständige Desktopzugriffs- / Netzwerkressourcen erforderlich.
me2011

Antworten:

14

Dies ist möglicherweise mehr als das, was Sie tun möchten, aber so verwenden wir RDP für Remotebenutzer, die kein VPN verwenden.

Wir haben vor kurzem begonnen, den RD-Gateway-Manager mit Remotedesktopdiensten zu verwenden, eine Rolle in Windows 2008. Wir haben das Setup so eingerichtet, dass es über unseren TMG-Server direkt zu einem Benutzercomputer geleitet wird. Es verwendet NLA wie oben erwähnt. Der Benutzer, der eine Verbindung herstellt, muss Mitglied der richtigen AD-Gruppe und Mitglied der richtigen lokalen Gruppe sein, um Zugriff zu erhalten. Abhängig davon, wie Sie es einrichten möchten, können Sie eine Verbindung über eine Webseite herstellen, die im Allgemeinen mstsc öffnet und die Proxy-Einstellungen für das RD-Gateway eingibt, oder Sie können die Einstellungen auf Ihrem Computer manuell so festlegen, dass es bei jedem Öffnen versucht, zu wechseln über diesen Proxy. Bisher hat es ganz gut geklappt und scheint sicher zu sein.

Don
quelle
3
+1 dafür. Ich benutze auch RD Gateway mit großem Erfolg, und Sie müssen nur Port 443 für das Internet verfügbar machen, damit es funktioniert. RD Gateway war für den MS12-020-Fehler von vor einigen Wochen, der RDP bedrohte, nicht anfällig.
Ryan Ries
+1 Es gibt auch VIELE weniger Bots, die RD-Gateways angreifen, als direkte RDPs.
Grant
8

Wie die jüngste Geschichte gezeigt hat, birgt das Aufdecken des Protokolls Risiken. Sie können jedoch einige Schritte ausführen, um das System zu schützen:

  • Authentifizierung auf Netzwerkebene erzwingen.
  • Verbindungsverschlüsselung erzwingen.
  • Beschränken Sie die Benutzer, die sich über Terminaldienste anmelden dürfen, auf das absolute Minimum und erlauben Sie keine "speziellen" Konten wie das Standarddomänenkonto Administratoroder im Idealfall andere Konten mit hohen Berechtigungen.
  • Vergewissern Sie sich, dass die Kennwörter für Konten gültig sind, die sich anmelden dürfen. Dies hängt davon ab, wie viele Benutzer und wie Ihre Richtlinien derzeit aussehen. Sie müssen jedoch die Hashes sichern und versuchen, sie zu knacken, die Kennwortlänge zu erhöhen oder die Benutzer zu unterrichten gute ansätze.
Shane Madden
quelle
6

Ich empfehle dringend, den Remotedesktop-Gateway-Dienst zu verwenden. Sie erhalten einen Ort, an dem Sie Richtlinien erzwingen können, wer von wo aus eine Verbindung zu was herstellen kann. Hier können Sie gut protokollieren, sodass Sie sehen können, wer versucht, sich anzumelden, ohne die Ereignisprotokolle der einzelnen Server in Ihrer Farm zu überprüfen.

Wenn Sie es noch nicht getan haben, stellen Sie sicher, dass Ihre Kontosperrungsrichtlinien ziemlich streng sind. RDP auch mit NLA und einem Gateway geben Menschen etwas, um zu versuchen, brutale Passwörter zu erzwingen. Eine strenge Aussperrungspolitik erschwert den Erfolg von Brute-Force-Versuchen erheblich.

Richten Sie gültige SSL-Zertifikate auf den Systemen ein, damit der Client die Endbenutzer benachrichtigt, wenn jemand versucht, eine Art MITM-Angriff durchzuführen.

Zoredache
quelle
3

Dies ist nicht sehr sicher, es gibt jedoch einige Möglichkeiten, die Sicherheit zu stärken.

Internetzugriff von diesem Server aus nicht zulassen. Viele der schwerwiegenderen Malware-Angriffe versuchen, auf ihren Befehls- und Steuerungsserver zurückzugreifen, wenn sie Ihr System gefährdet. Wenn Sie eine Firewall-Zugriffsregel so konfigurieren, dass der ausgehende Zugriff standardmäßig nicht zulässig ist, und eine Regel, die den ausgehenden Zugriff nur auf interne / bekannte Netzwerke und RFC 1928-Subnetze zulässt, kann das Risiko verringert werden.

Verwenden Sie Smartcards oder eine andere Art der Zwei-Faktor-Authentifizierung. Dies ist in der Regel teuer und findet sich hauptsächlich in großen Unternehmen. Allerdings verbessern sich die Optionen (PhoneFactor fällt ein). Beachten Sie, dass Smartcards als Option für die Konfiguration auf Kontoebene pro Server erforderlich sind.

Konfigurieren Sie ein Umkreisnetzwerk, platzieren Sie den Remotedesktopserver im Umkreis und verwenden Sie ein kostengünstiges VPN, um den Zugriff bereitzustellen. Ein Beispiel wäre Hamachi. Beachten Sie, dass das Deaktivieren des Internetzugriffs über ein Umkreisnetzwerk ebenfalls eine gute Vorgehensweise ist.

Stellen Sie nach Möglichkeit keinen vollständigen Desktop zur Verfügung, sondern veröffentlichen Sie die benötigten Anwendungen. Wenn jemand nur Zugriff auf eine einzelne Anwendung benötigt, kann auch ein "Startprogramm" konfiguriert werden, bei dem es sich um eine einfache Wrapper-Shell handeln kann, die beim Schließen der Anwendung eine Abmeldung erzwingen kann.

Greg Askew
quelle
1

Ich würde folgende Maßnahmen vorschlagen:

  1. Ändern Sie den für die Remotedesktopverbindung verwendeten Anschluss
  2. Verwenden Sie keine generischen Benutzernamen, sondern eine kompliziertere Namensrichtlinie
  3. Hohe Anforderungen an Passwörter
  4. Schließen Sie alle anderen nicht verwendeten Ports von außen (eingehend)

Optional

  1. Verwenden Sie ein VPN (CISCO, Open VPN usw.) und stellen Sie dann über eine interne IP-Adresse eine Verbindung zum Server her.
  2. Verwenden Sie nach Möglichkeit die Smartcard-Anmeldung
Alex H
quelle
Ich neige dazu, den Port auf der Firewall zu ändern, nicht auf dem Server (dies erfordert Änderungen an der Registrierung). In der Regel ist es einfacher, eine Portweiterleitung auf dem Router einzurichten und sicherer (ohne dass die Registrierung berührt wird).
JohnThePro
Ja :), ich habe nur gesagt, dass einige Leute keinen Zugang oder keine Kenntnisse zur Weiterleitung von Benutzerports haben. Auch wenn empfohlen wird, die Registrierung nur dann zu ändern, wenn dies erforderlich ist, hatte ich nie Probleme. Das einzige Problem, auf das Sie stoßen können, besteht darin, dass Sie einen bereits verwendeten Port verwenden.
Alex H
Ja, ich meine, es ist nicht das größte Geschäft der Welt, und jeder, der Regedit kennt, ist wahrscheinlich schlau genug, vorsichtig zu sein ... aber das kann man nicht wissen. :)
JohnThePro
1

Sie können WinSSHD auf Port 22 ausführen und dann mit dem Tunnelier- Client einen Tunnel für Sie erstellen und mit EINEM Mausklick automatisch eine Terminaldienstesitzung durch den Tunnel öffnen. Dies gibt Ihnen auch eine sehr schöne sichere FTP-Option zum Übertragen von Dateien.

Djangofan
quelle
1

Ich verwende ssh port forwarding für diese Dinge und erlaube nur die Authentifizierung mit öffentlichen Schlüsseln auf Benutzerebene. Alle privaten Schlüssel des Benutzers sollten ebenfalls verschlüsselt werden. Unter Windows funktioniert Putty gut, und mit pageant können Benutzer ihren Schlüssel problemlos laden. Wenn Sie keine Linux / BSD-Server ausführen, die standardmäßig über ssh verfügen, können Sie OpenSSH in Cygwin verwenden, um dies zu tun.

Ich empfehle einen dedizierten Remote-Shell-Server mit einer lokalen Firewall, die Dinge blockiert, an denen keine Remotezugriffe durchgeführt werden sollen, da das Zulassen der Portweiterleitung in SSH im Grunde jeden internen Server / Port für die gewünschten Benutzer öffnet.

Jon Zobrist
quelle
1

Bitvise SSH ist eine gute kostenlose SSH für Windows.

Ich würde mich für eine kostengünstige SSL-VPN-Terminierung vom Client zum Internet-Gateway entscheiden, die nicht nur für den gelegentlichen Gebrauch gedacht ist (z. B. Commercial In-Confidence).

Die obigen Beiträge zum Sichern von RDP sind ebenfalls eine gute Praxis und sollten immer gemacht werden, wenn Sie Ihre Computer nicht für Freeloader freigeben möchten.

werden
quelle
0

Nicht wirklich die beste Vorgehensweise, aber einige zufällige Gedanken:

  • Halten Sie Ihr System auf dem neuesten Stand - erlauben Sie automatisierte Updates, verwenden Sie keine Produkte, die nicht mehr aktuell sind,
  • Verwenden Sie für alle Systemkonten lange / komplizierte Kennwörter
  • Ich werde hier beschimpft, weil ich die "Sicherheit durch Dunkelheit" vorschlage, aber es wird Ihnen keinen Schaden zufügen, wenn Sie:
    • Ändern Sie den Standard-3389 / tcp-Port in 26438 / tcp
    • Füge Port-Knocking (wenn möglich) auf der Firewall-Ebene hinzu, so dass potenzielle RDP-Benutzer zuerst eine Webseite besuchen müssen und erst dann RDP auf deinen Server übertragen können.
pQd
quelle