Ich habe gerade zum ersten Mal Remote-SSH mit openssh eingerichtet.
Ich konnte mit Kitt mit den folgenden drei Einstellungen auf meinen Server ssh:
/etc/init.d/ssh Neustart
# What ports, IPs and protocols we listen for Port 1234
dd-wrt Netzwerksteuerung (192.168.1.1 in die URL des Browsers)
Anwendung ---- Port von ---- Protokoll ---- IP-Adresse ---- Port von ---- Aktivieren
myssh ---------- 1234 ---------- TCP --------- 192.168.1.x --- 1234 ------- ja
Kitt
Hostname (oder IP-Adresse) ---- Port
wxyz ----------------------------- 1234
Gibt es einen Grund, warum ich Port 22 anstelle von 1234 verwenden sollte?
networking
ssh
putty
user784637
quelle
quelle
Antworten:
Erstens sind bekannte Portnummern "bekannt". Sie eliminieren einige Vermutungen darüber, welchen Port ein bestimmter Dienst abhört.
Zweitens können die Ports 1024 und darunter nur von geöffnet werden
root
. Dies gibt diesen Diensten ein zusätzliches Maß an "Vertrauen". IE, der Dienst, mit dem ich über Port 22 eine Verbindung herstelle, muss als Root ausgeführt werden (oder gestartet worden sein). Wenn ein Dienst auf 1234 ausgeführt wird, kann es sich um jeden Benutzer handeln, der Zugriff auf die Box hat, die ein Programm "Programm, das sich wie SSHD verhält, aber Kennwörter abfängt" geöffnet und gestartet hat. (Dies setzt voraus, dass kein NAT oder andere Umleitungen vorhanden sind - siehe die Antwort von mmi.)Auch mit einem Punkt von mmi einverstanden - ich würde nicht unnötig ein Programm als root ausführen, nur um die gewünschte Portnummer zu erhalten. Wenn ein Programm, das als Root ausgeführt wird, gefährdet wird, wird das gesamte System gefährdet. Wenn ein Programm jedoch bereits als Root für andere Anforderungen ausgeführt wird, kann auch die richtige Portnummer verwendet werden.
Einige Leute raten davon ab, die bekannten Ports zu verwenden, um allgemeine Dienste zu "verbergen", die für Exploit-Versuche verwendet werden könnten, aber ich betrachte dies nur als "Sicherheit durch Dunkelheit" - und rate davon ab.
quelle
root
" lautet. Ihr aktueller Wortlaut impliziert, dassroot
keine höheren Ports geöffnet werden können.Es hängt im Wesentlichen davon ab, wie sehr Sie diesen Dienst verbergen möchten.
Personen (und Bots, die nach Sicherheitslücken suchen) gehen davon aus, dass SSH auf Port 22, HTTP auf Port 80 usw. ausgeführt wird. Wenn ein Dienst auf einem nicht standardmäßigen Port ausgeführt wird, ist er weniger leicht zu erkennen, für legitime Benutzer jedoch schwieriger zu verwenden.
http://servername
http://servername:8042
, um es zu erreichenUnd so weiter...
quelle
Sie können einen beliebigen Port verwenden. Die Verwendung von Port 22 für
ssh
ist konventionell, und Sie werden feststellen, dass viele Firewalls, SSH-Clients und Daemons dies aus Bequemlichkeitsgründen standardmäßig verwenden.Die bessere Frage sollte lauten: "Warum sollte ich Port 22 nicht verwenden?". Dies hat einige umstrittene Sicherheitsvorteile, die mich jedoch nie persönlich überzeugt haben.
quelle
Ich bin irgendwann nicht mehr mit ziesemer einverstanden: Diese Programme müssen NICHT unbedingt von root ausgeführt werden. Es wird NICHT empfohlen, einen netzwerkbezogenen Dienst als Root auszuführen, es sei denn, Sie müssen dies tun. Wenn jemand Ihren Dienst nutzen kann, erhält er Root-Rechte.
Außerdem kann ein NAT Port 80 von außen in einen beliebigen Port im LAN übersetzen. Daher können Sie einen Dienst als Nicht-Root ausführen.
Der Hauptvorteil bekannter Ports (insbesondere Port 80): Sie werden normalerweise nicht durch Firewalls (Portfilter) blockiert. Wenn Sie versuchen, von der Schule aus auf Ihren Server zuzugreifen, kann dies je nach Routerkonfiguration der Schule fehlschlagen.
quelle
Gibt es einen Grund, warum ich Port 22 anstelle von 1234 verwenden sollte?
Denn dort hören die anderen 99% der SSH-Dienste zu und die Leute werden es erwarten. Konvention ist keine feste Regel, aber Sie werden feststellen, dass die meisten Administratoren SSH auf Port 22, HTTP auf Port 80 usw. erwarten. Es sei denn, Sie haben einen sehr guten Grund, von der etablierten Konvention abzuweichen - ich schlage vor, Sie tun dies nicht.
Neun von zehn Fällen hat jemand, der viel schlauer ist als Sie (oder ich), die Standardeinstellungen aus gutem Grund ausgewählt, und wenn Sie keine bessere haben, warum sollten Sie sie ändern?
(Es ist wirklich ärgerlich, wenn Sie Ihren ersten Arbeitstag damit verbringen müssen, alles abzubilden, um herauszufinden, auf welchen "nicht konventionellen" Ports der vorherige Administrator / Berater / BOFH beschlossen hat, alles auszuführen).
quelle
Es gibt einen guten Grund, 22 für ssh zu verwenden. Vermeiden Sie die Notwendigkeit, das Konfigurieren oder zusätzliche Parameter für die Verwendung in mehreren Clients, ssh, scp, git, rsync usw. zu erlernen. Vermeiden Sie es auch, vorgefertigte Skripte zu ändern, die so geschrieben wurden, dass sie den Standardport annehmen.
Es gibt immer subjektive Sicherheitsgewinne beim Ändern eines Standardports, aber ich denke, dass dies ein guter und nicht zu umgehender Grund sein sollte, ein Standardverhalten zu ändern.
quelle