Installiertes SSH auf Ubuntu-Computer, kann keine Verbindung vom Computer über das Internet herstellen


2

Ich habe eine sudo apt-get install ssh auf meinem Heim-PC läuft Ubuntu.

Als ich zur Arbeit kam, versuchte ich mich mit nur zu verbinden ssh x.x.x.x Wo ist das meine Heimat-IP-Adresse?

Die Verbindung läuft über das Internet aus, aber als ich auf diesem Ubuntu-PC war, mit dem ich verbunden war ssh localhost und es hat gut funktioniert.

Muss ich etwas mit meinem Netzwerk oder dieser Box tun, um externe Verbindungen zuzulassen?

Antworten:


5

Wenn Sie eine Heimrouterlösung verwenden, müssen Sie eingehende Nachrichten weiterleiten TCP/22 an den Ubuntu-Rechner, auf dem SSH läuft, damit die eingehende Verbindung ordnungsgemäß an Ihre Linux-Box weitergeleitet wird. Dies ist normalerweise beschriftet port forwarding oder port mapping in der Weboberfläche Ihres Routers. Dies behebt jedoch nichts, wenn Ihr Arbeitsplatz blockiert ist TCP/22 ausgehend.


1
Ich schlage vor, Sie leiten einen beliebigen Port für den Netzzugriff ohnehin an 22 weiter, da Port-Sniffer standardmäßig auf bekannte Ports abzielen und die Nichtbeachtung des Standardports nicht so viel Aufmerksamkeit auf Sie lenken. Verbindet mit ssh user@x.x.x.x -p 1234
invert

1
Was Wesley hier vorschlägt, ist eine gute Idee, aber fühlen Sie sich nicht sicherer auf diese Weise ( en.wikipedia.org/wiki/Security_through_obscurity ).
Sean C.

Wenn Sie dem Vorschlag von @ Wesley folgen, empfehle ich, den von tatsächlich verwendeten Port zu ändern sshd (im /etc/ssh/sshd_config ), nicht Weiterleiten eines beliebigen Ports an 22. Ich verwende gelegentlich einige Computer, die tcp / 22 abhören, aber an die beliebige Ports weitergeleitet werden (alle hinter derselben v4-Adresse). Es verwirrt mich, wenn ich Port verwenden muss 22 über IPv6, Port 13524 über IPv4, Port 22 im LAN ... Es wäre viel konsistenter, wenn sshd, nicht der router, wurde konfiguriert, um einen anderen Port abzuhören. (Zu Ihrer Information, Sie können mehrere haben Port Zeilen in der Konfig.)
grawity

2

Normalerweise bei der Installation openssh-server Der Hafen wird geöffnet. Möglicherweise möchten Sie sicherstellen, dass die Firewall ( ufw ) blockiert es nicht.

Außerdem muss Ihr Router den Port weiterleiten und Ihr Arbeitgeber muss diesen ausgehenden Hafen zulassen. An einigen Orten sind nur 80 und 443 zulässig, und die meisten Internetdienstanbieter zu Hause lassen diesen Eingang nicht zu.

Wenn Sie externe Chat-Clients (MSN oder AIM usw.) bei der Arbeit ausführen können, können Sie immer einen dieser Ports weiterleiten, und Sie müssen stattdessen ssh an diesen Port senden.

AOL Instant Messenger uses TCP 5190
ICQ uses TCP 5190
IRC uses TCP 6667 (almost certainly blocked)
MSN uses TCP 1863

Nur Verwenden Sie einen alternativen Anschluss, wenn die Standardanschlüsse nicht funktionieren. Sie werden mit ziemlicher Sicherheit den Dienst unterbrechen, der normalerweise den Port verwendet.


1

Überprüfen Sie den Firewall-Status Ihres Ubuntu-Servers:

sudo ufw status

Wenn der Status aktiviert ist, müssen Sie eine Regel hinzufügen, um Verbindungen mit Port 22 zuzulassen, siehe https://help.ubuntu.com/community/UFW wie das gemacht wird.


1

Wenn Sie die Portweiterleitung auf dem Router bereits ordnungsgemäß eingerichtet haben, vergewissern Sie sich, dass Sie versuchen, ssh an die externe IP Ihres Routers und nicht an die interne IP Ihres Home-Desktops zu senden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.