GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie man SSH unter Linux von Android aus macht

Übersicht

Wie im Titel erwähnt, werden wir von einem Android-Telefon aus eine SSH-Verbindung zu unserem Linux-Server einrichten. Das bedeutet, dass wir mit diesem Setup von einer SSH-Android-Client-App aus innerhalb des LAN-Netzwerks auf unsere Linux-Server und auch auf Remote-Server – wie Cloud-Server – zugreifen können. Außerdem werden wir die Schritte zum Erstellen der SSH-Schlüssel und deren Installation auf unserem Server behandeln. Um dies alles einzurichten, müssen Sie bereits Zugriff auf den Server haben, auf dem Sie den SSH-Zugriff aktivieren möchten.

SSH-Setup auf dem Server

Wie bereits erwähnt, müssen Sie zunächst bereits Zugriff auf Ihren Linux-Server haben und auch das Terminal verwenden können. Ein weiterer wichtiger Punkt für dieses Setup ist, dass auf Ihrem Server ein SSH-Server installiert ist. Bei einigen Distributionen ist der SSH-Server standardmäßig installiert. Wenn Sie jedoch keinen SSH-Server installiert haben, können Sie beispielsweise den OpenSSH-Server installieren. Befehle zum Installieren des OpenSSH-Servers auf Debian/Ubuntu-basierten Distributionen:

sudo apt update && sudo apt upgrade -y
sudo apt install openssh-server

Stellen Sie sicher, dass der SSH-Dienst gestartet wurde und ausgeführt wird:

sudo systemctl status ssh.service

Ausgabe für SSH-Dienststatus:

Wenn der Dienst nicht ausgeführt wird, führen Sie diese Befehle aus, um den Dienst zu starten und auch den automatischen Start beim Systemstart zu aktivieren:

sudo systemctl enable ssh

sudo systemctl start ssh

Ein weiterer wichtiger Teil dieses Setups ist, wenn Sie eine Firewall auf Ihrem Server installiert haben. Sie müssen dann die Firewall konfigurieren, um den SSH-Verkehr darauf zuzulassen. Ein Beispiel:Wenn Sie die ufw-Firewall auf dem Server verwenden, müssen Sie diesen Befehl ausführen, um die SSH-Verbindung von Ihrem Android-Telefon oder einem anderen SSH-Client aus zuzulassen:

sudo ufw allow ssh

SSH-Android-Client-Setup

Sobald der SSH-Server installiert ist und der Dienst ausgeführt wird, können Sie bereits die SSH-Verbindung verwenden und sich auch auf Ihren Linux-Servern im LAN-Netzwerk und auf Cloud-Servern remote anmelden. Standardmäßig richtet der SSH-Dienst auf dem Server die Authentifizierung mit Benutzername und Passwort ein. Wenn Sie planen, nur innerhalb des LAN-Netzwerks auf den Server zuzugreifen, könnte dies für Sie ausreichen. Wenn Sie auch SSH-Schlüssel von Ihrem Android hinzufügen müssen, lesen Sie weiter.

Meine bevorzugte Android-SSH-Client-App ist JuiceSSH. Es kann zunächst kostenlos aus dem Play Store heruntergeladen werden, es hat viele Funktionen, unterstützt alle SSH-Verschlüsselungen, es hat eine eingebaute Tastatur für Sonderfunktionen und Tastenkombinationen und es beschränkt die Anzahl der Verbindungen nicht. Für dieses Tutorial verwenden wir JuiceSSH als Beispiel. Andere Android-SSH-Clients funktionieren ziemlich gleich, falls Sie andere bevorzugen.

Verbindung und Benutzerkonto einrichten

Wenn Sie die App starten, öffnen Sie die erste Option – Verbindungen (verwalten Sie Ihre Verbindungen).

Unter Verbindungen – alle Ihre Verbindungen zu den Servern werden gespeichert. Wir werden eine neue erstellen, aber vorher müssen wir eine Identität einrichten, auch bekannt als das Benutzerkonto für die SSH-Verbindung. Streichen Sie nach links zur Registerkarte Identitäten.

Spitzname ist optional. Legen Sie unter Benutzername das Benutzerkonto fest, das Sie zum Verbinden und Anmelden auf Ihrem Server verwenden möchten. Natürlich muss der Benutzername mit einem bestehenden Konto auf Ihrem Server übereinstimmen, z. B. – root. Das Festlegen des Passworts ist ebenfalls optional. Wenn Sie nicht jedes Mal nach dem Passwort gefragt werden möchten, wenn Sie eine Verbindung herstellen möchten, legen Sie es fest und die App speichert das Passwort. Der private Schlüssel wird im nächsten Absatz behandelt.

Nachdem Sie den Benutzer für die App erstellt haben, kehren Sie zur Registerkarte Verbindungen zurück und erstellen Sie eine neue Verbindung. Der Spitzname ist wiederum optional, kann aber nützlich sein, wenn Sie mehr als einen Server zum Verbinden haben. Typ ist natürlich SSH. Adresse ist die IP-Adresse Ihres Servers. Wenn es sich um ein LAN-Netzwerk handelt, müssen Sie die lokale IP-Adresse Ihres Servers eingeben. Für diesen Fall ist es eine gute Option, eine statische IP-Adresse auf Ihrem Server festzulegen.

Wenn Sie jedoch eine Verbindung zu einem Cloud-Server herstellen möchten, müssen Sie die öffentliche IP-Adresse Ihres Servers hinzufügen. Und zum Schluss müssen Sie die Identität oder das Benutzerkonto auswählen, das Sie für den Zugriff auf den Server verwenden möchten. Danach müssen Sie sich mit Ihrem Server verbinden können. Bisher funktioniert diese SSH-Verbindungseinrichtung also und Sie können eine Verbindung herstellen, aber dies ist ohne SSH-Schlüssel auf Ihrem Android-Telefon.

SEHR EMPFOHLEN

Wenn Sie Ihrem Server eine sicherere Verbindung hinzufügen und SSH-Schlüssel installieren möchten, insbesondere wenn Sie eine Verbindung zu einem Remote-Cloud-Server herstellen müssen, lesen Sie bitte weiter. Es wird dringend empfohlen, SSH-Schlüssel zu Ihren Remote-Servern hinzuzufügen.

SSH-Schlüssel generieren

Bitte beachte, sei bei den nächsten Schritten vorsichtig, sonst könntest du dich selbst aus dem Server aussperren. In der JuiceSSH-App müssen wir die SSH-Schlüssel für das Konto generieren, das wir verwenden werden.

Navigieren Sie in der App erneut zur Registerkarte Identitäten, halten Sie den Finger auf die Identität, für die Sie die SSH-Schlüssel generieren möchten, bis das Popup-Menü angezeigt wird, und wählen Sie die Option Bearbeiten aus.

Klicken Sie dann auf die Schaltfläche – AKTUALISIEREN/LÖSCHEN direkt neben der Bezeichnung „Privater Schlüssel“. Wenn Sie jedoch zum ersten Mal eine neue Identität/einen neuen Benutzer erstellen, steht auf der Schaltfläche „SET“ direkt neben der Bezeichnung „Privater Schlüssel“.

Sobald Sie das Schlüsselmenü erhalten, navigieren Sie zur Registerkarte „Generieren“. Schlüsselformat wählen Sie RSA. Schlüsselstärke wählen Sie mindestens 2048bit oder besser 4096bit. Die Passphrase ist optional, aber es ist eine zusätzliche Sicherheitsebene, also schadet es nicht, diese auch hinzuzufügen, wenn Sie möchten. Klicken Sie abschließend auf OK und speichern Sie die Änderung. Es dauert eine Minute, bis die Schlüssel generiert sind.

Nächster Schritt, während Sie noch in der App sind – halten Sie den Finger erneut auf die Identität und wählen Sie diesmal die Option – Exportieren Sie den öffentlichen Schlüssel und kopieren Sie ihn. Notieren Sie es gut und speichern Sie es.

JuiceSSH wird jetzt jedes Mal neu generiert für dieses Konto verwenden.

SSH-Schlüssel installieren

Jetzt wieder auf den Server. Jetzt müssen wir diesen neuen öffentlichen Schlüssel hinzufügen, den wir gerade erstellt und kopiert haben. Öffnen Sie das Terminal und navigieren Sie zum .ssh-Ordner des Benutzers und bearbeiten Sie die autorisierte Schlüsseldatei. Wenn die Datei nicht vorhanden ist, erstellen Sie sie. Mit diesem Befehl können Sie beides tun:

sudo nano .ssh/authorized_keys

Fügen Sie in dieser Datei Ihren Schlüssel ein, speichern Sie die Datei und beenden Sie sie.

Als nächstes werden wir die SSH-Serverkonfiguration ändern. Dort müssen wir dem Server mitteilen, dass er die Datei „authorized_keys“ verwenden und unsere SSH-Schlüssel lesen soll.

BITTE ERNEUT BEACHTEN

Normalerweise ist es eine empfohlene und sicherere Option, die standardmäßige Passwort-Anmeldeoption zu deaktivieren (um Brute-Force-Angriffe auf unseren Server zu verhindern) und die Anmeldung nur mit den SSH-Schlüsseln zu aktivieren. Bevor Sie die Konfiguration abschließen, überprüfen Sie alles, was Sie getan haben, und seien Sie vorsichtig, um sich nicht vom Server auszusperren. Natürlich ist es kein Weltuntergang, wenn Sie ausgesperrt werden, es kann nur etwas umständlicher werden, die Änderungen zu korrigieren. Mit Servern im LAN greifen Sie direkt/psychisch auf sie zu und korrigieren die Änderungen und jetzt bieten Cloud-Anbieter ihren Benutzern im Dashboard ein virtuelles Terminal mit direktem Zugriff auf Ihren Server und damit können Sie die Änderungen auch korrigieren. Aber wenn Sie diese Art von Szenario nicht haben und nur die Möglichkeit haben, sich per SSH auf Ihren Remote-Server einzuloggen, seien Sie vorsichtig.

SSH-Serverkonfiguration

Navigieren Sie nun zur SSH-Serverkonfiguration und nehmen Sie die Änderungen wie unten gezeigt vor:

Befehl für die SSH-Serverkonfiguration:

sudo nano /etc/ssh/sshd_config

Suchen Sie dann die folgenden Optionen, kommentieren Sie sie aus und bearbeiten Sie sie so, dass sie wie folgt aussehen:

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no

Nachdem Sie die Änderungen vorgenommen haben, speichern Sie die Konfiguration und starten Sie den SSH-Dienst neu, damit die Änderungen übernommen werden.

sudo systemctl restart ssh

Danach sollten Sie sich von Ihrem Android-Telefon mit SSH-Schlüsseln über eine SSH-Verbindung bei Ihrem Linux-Server anmelden können.

Hier sind ein paar Bilder, wie die erfolgreiche SSH-Verbindung aussieht:

Zusammenfassung

Dies war der Einrichtungsprozess für die SSH-Verbindung zu einem Linux-Server für Ihr Android-Telefon. Mit dieser Einrichtung sollten Sie in der Lage sein, sich von Ihrem Android aus über SSH mit Ihren Servern zu verbinden.

Vielen Dank für Ihre Zeit…


Linux
  1. So aktivieren Sie den SSH-Server unter Ubuntu 22.04 Jammy Linux

  2. Linux – Wie melde ich mich von Ssh aus bei Tty an?

  3. So richten Sie einen Reverse-SSH-Tunnel unter Linux ein

  4. Wie lade ich eine Datei mit SSH vom Server herunter?

  5. Wie verbinde ich mich von OS X (macOS) mit dem x11vnc-Server unter Linux?

So verwalten Sie einen Linux-Server mit SSH aus der Ferne

So aktualisieren Sie Ubuntu Server auf 20.04 vom 18.04

Wie Sie von Windows aus SSH in Ihren Linux-Server einbinden

So führen Sie SSH zum Server über Linux

So stellen Sie von Linux aus eine Verbindung zu SQL Server her

Wie man SSH in einen Windows 10-Rechner von Linux ODER Windows ODER überall her einfügt