SSH zwischen 2 Macs?
Hey. Ich hab ein MacMini M1 und ein MacBook 2013 Retina 15"
Ich möchte gerne von meinem MacMini M1 aus auf das Terminal meines MacBooks zugreifen können. Die beiden befinden sich NICHT im selben Netzwerk. (MacBook nutzt mein Handy-Datenvolumen, mein MacMini benutzt mein normales Ethernet-Lan).
Ich hab gehört dass ich eine SSH-Verbindung dafür aufbauen muss.
Remote-Desktop-Apps kommen für das, was ich vorhabe nicht unbedingt in Frage, da ich lediglich Befehle an das Terminal schicken möchte und dessen Output sehen möchte.
Kann mir da jemand ein Tutorial empfehlen oder erklären wie ich das bewerkstellige?
Danke im Voraus!
2 Antworten
EDIT: ganz übersehen, dass du vom Heimnetz auf ein mobiles Netz zugreifen willst. Da geht das mit der Portfreigabe natürlich nicht. Ngrok könnte eventuell dennoch funktionieren, müsstest du jedoch testen.
Ursprüngliche Antwort:
Dafür müsstest du im Router eine Portfreigabe einrichten. Gerade bei SSH ist das kritisch, wenn man nicht aufpasst. Vermutlich sind schon wenige Minuten nach Freigabe etliche Login-Versuche gemacht worden. Wenn du das wirklich machen willst, solltest du für den SSH-Server am besten einen alternativen Port festlegen, fail2ban einrichten und nur die Pubkey-Authentifizierung für den Login erlauben - und dabei den Login als root verhindern.
Egal wie, auf dem Rechner, auf welchen du dich verbinden willst, muss ein entsprechender SSH-Server laufen.
Besser wäre es, wenn du das eben nicht durch eine Portfreigabe löst, sondern einen VPN-Server im Heimnetz einrichtest (vielleicht bietet dein Router schon die Funktionalität) und dann eben im gleichen Netzwerk die Verbindung nutzt.
Egal wie: Da du ein anderes Netzwerk nutzt, musst du die öffentliche IP deines Rechners/Routers nutzen - welche in der Regel immer wieder wechselt. Eine Lösung hierfür wäre ein DynDNS-Dienst.
Eine Alternative, die auch einen Tunnel aufbaut, wäre z.B. Ngrok. Dafür musst du auch keine Portfreigabe machen, das wird von Ngrok von innen aufgebaut. Du bekommst da von Ngrok eine entsprechende Adresse, mit welcher du dich verbindest
Nicht möglich. Da du wohl kaum auf deinem Smartphone / über deinen LTE-Vertrag Ports freigeben kannst, ist das MacBook nach außen hin (ins Internet) nicht erreichbar. Selbst innerhalb des Netzwerks könnte das je nach Smartphone schon schwierig werden...
Anders rum (MacBook greift auf Mac Mini zu) wäre es möglich, indem du in deinem Heimnetzwerk einen entsprechenden Port für die SSH-Nutzung freigibst. Dann einfach in den Einstellungen unter Freigaben die Entfernte Anmeldung aktivieren und per SSH anmelden.
Nein, nur läuft nur über SSH. Da gibt es keine andere Software, SSH ist Standard. Dein Anwendungszweck ist da zu speziell als dass es da etwas anderes gäbe.
TeamViewer wäre die einzige Möglichkeit, die ich da sehe. TeamViewer, und vergleichbare Software, läuft über einen "Mittel-Server", wo die Daten zwischen Host und Client ausgetauscht werden. Dadurch wird keine Incoming Connection aufgebaut, was den Vorteil hat, dass keine Ports geöffnet werden.
Nachteil ist halt, da hast du den gesamten Bildschirm.
Das heißt aber im Übrigen auch, dass, wenn du eine Maschine in der Mitte hast, die eingehende Verbindungen problemlos annehmen und auch ausgehende Verbindungen aufbauen kann, man darüber ggf. eine SSH-Verbindung auf das MacBook starten kann. Eventuell ist sowas sogar über Ngrok möglich - siehe hier (ist zwar für Linux, macOS ist aber auch unixoid, Ablauf dürfte also ähnlich sein): https://www.endtoend.ai/tutorial/ngrok-ssh-forwarding/
In dem Fall schaltet sich eben ein Server von Ngrok dazwischen. Allerdings keine Garantie, ich selbst nutze Ngrok nur für das Exposen von Webservern, mit dem Exposen von SSH hab ich da keine Erfahrung.
Ah ok schade. Ich hatte gehofft dass das gehen könnte. Wäre es (nur mal angenommen) nicht aber über ein Programm möglich? Quasi etwas wie Anydesk, Teamviewer etc. eine Verbindung zwischen den beiden Geräten aufzubauen, aber nur ein Terminal freizugeben, statt den kompletten Bildschirm?