GNU/Linux >> Znalost Linux >  >> Linux

Jak na SSH na Linuxu z Androidu

Přehled

Jak je uvedeno v názvu, nastavíme připojení SSH k našemu serveru Linux z telefonu Android. To znamená, že s tímto nastavením budeme mít přístup k našim linuxovým serverům z klientské aplikace SSH Android ze sítě LAN a také ke vzdáleným serverům – jako jsou cloudové servery. Také pokryjeme kroky vytváření klíčů SSH a jejich instalace na náš server. Abyste toto vše mohli nastavit, již potřebujete mít přístup k serveru, kterému chcete povolit přístup SSH.

Nastavení SSH na serveru

Jak již bylo uvedeno výše, nejprve musíte mít přístup ke svému linuxovému serveru a také umět používat terminál. Dalším důležitým prvkem pro toto nastavení je, že váš server má nainstalovaný server SSH. U některých distribucí je SSH server nainstalován ve výchozím nastavení. Pokud však nemáte nainstalovaný server SSH, můžete si například nainstalovat server OpenSSH. Příkazy pro instalaci serveru OpenSSH v distribucích založených na Debian/Ubuntu:

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

Ověřte, že se služba SSH spustila a běží:

sudo systemctl status ssh.service

Výstup pro stav služby SSH:

Pokud služba neběží, spusťte tyto příkazy pro spuštění služby a také pro povolení automatického spuštění při startu systému:

sudo systemctl enable ssh

sudo systemctl start ssh

Další důležitou součástí tohoto nastavení je, že pokud máte na svém serveru nainstalovaný firewall. Poté musíte nakonfigurovat bránu firewall tak, aby na ní byl povolen provoz SSH. Pokud například na serveru používáte firewall ufw, musíte spustit tento příkaz, abyste povolili připojení SSH z telefonu Android nebo jiného klienta SSH:

sudo ufw allow ssh

Nastavení klienta SSH Android

Jakmile je server SSH nainstalován a služba je spuštěna, můžete již používat připojení SSH a vzdálené připojení na svých linuxových serverech v rámci sítě LAN a cloudových serverech. Ve výchozím nastavení služba SSH na serveru nastavuje ověřování pomocí uživatelského jména a hesla. Pokud plánujete přistupovat k serveru pouze v rámci sítě LAN, mohlo by vám to stačit. Pokud potřebujete přidat klíče SSH také ze svého Androidu, pokračujte ve čtení.

Moje klientská aplikace Android SSH je JuiceSSH. V první řadě je zdarma ke stažení z obchodu Play, má spoustu funkcí, podporuje všechna šifrování SSH, má vestavěnou klávesnici pro speciální funkce a klávesové zkratky a neomezuje počet připojení. V tomto tutoriálu použijeme jako příklad JuiceSSH. Ostatní klienti Android SSH fungují v podstatě stejně, pokud dáváte přednost jiným.

Nastavení připojení a uživatelského účtu

Po spuštění aplikace otevřete první možnost – Připojení (spravujte svá připojení).

V části Connections – jsou uložena všechna vaše připojení k serverům. Chystáme se vytvořit nový, ale předtím musíme nastavit identitu, neboli uživatelský účet pro připojení SSH. Přejeďte prstem doleva na kartu identity.

Přezdívka je volitelná. Pod uživatelským jménem nastavte uživatelský účet, který budete používat pro připojení a přihlášení na váš server. Uživatelské jméno se samozřejmě musí shodovat s existujícím účtem na vašem serveru, jako je – root. Nastavení hesla je také volitelné. Pokud nechcete být vyzváni k zadání hesla pokaždé, když se chcete připojit, nastavte jej a aplikace heslo uloží. Soukromý klíč bude popsán v dalším odstavci.

Jakmile vytvoříte uživatele pro aplikaci, vraťte se na kartu připojení a vytvořte nové připojení. Přezdívka je opět volitelná, ale může být užitečná, pokud máte k připojení více než jeden server. Typ je samozřejmě SSH. Adresa je IP adresa vašeho serveru, pokud je ze sítě LAN, musíte zadat místní IP adresu vašeho serveru. V tomto případě je dobrou možností nastavit na serveru statickou IP adresu.

Pokud se však chcete připojit ke cloudovému serveru, musíte přidat veřejnou  IP adresu vašeho serveru. A nakonec si musíte vybrat identitu nebo uživatelský účet, který budete používat pro přístup k serveru. Poté se musíte mít možnost připojit k vašemu serveru. Takže toto nastavení připojení SSH bude zatím fungovat a můžete se připojit, ale toto je bez klíče SSH na vašem telefonu Android.

VŘELE DOPORUČUJEME

Pokud chcete přidat bezpečnější připojení k serveru a nainstalovat klíče SSH, zejména pokud se potřebujete připojit ke vzdálenému cloudovému serveru, pokračujte ve čtení. Důrazně se doporučuje přidat klíče SSH na vaše vzdálené servery.

Generování klíčů SSH

U dalších kroků buďte opatrní, jinak byste mohli skončit uzamčením přístupu na server. V aplikaci JuiceSSH potřebujeme vygenerovat klíče SSH pro účet, který budeme používat.

V aplikaci znovu přejděte na kartu identity, podržte prst na identitě, pro kterou chcete vygenerovat klíče ssh, dokud se nezobrazí místní nabídka a vyberte možnost upravit.

Poté klikněte na tlačítko – AKTUALIZOVAT/VYMAZAT hned vedle štítku soukromého klíče. Pokud ale vytváříte novou identitu/uživatele poprvé – pak se na tlačítku zobrazí – SET hned vedle štítku soukromého klíče.

Jakmile získáte nabídku kláves, přejděte na kartu generování. Formát klíče vyberte RSA. Síla klíče zvolte alespoň 2048bit nebo lépe 4096bit. Přístupová fráze je volitelná, ale je to další vrstva zabezpečení, takže nebude na škodu ji přidat, pokud chcete. Po dokončení a uložení změny klepněte na tlačítko OK. Vygenerování klíčů bude chvíli trvat.

Další krok, ještě v aplikaci – znovu podržte prst na identitě a tentokrát vyberte možnost – Exportovat veřejný klíč a zkopírovat jej. Poznamenejte si to a uložte.

JuiceSSH nyní použije nově vygenerované pokaždé pro tento účet.

Instalace klíčů SSH

Nyní znovu na server. Nyní musíme přidat nový veřejný klíč, který jsme právě vytvořili a zkopírovali. Otevřete terminál a přejděte do složky .ssh uživatele a upravte soubor autorizovaných klíčů. Pokud soubor neexistuje, vytvořte jej. Obojí můžete provést pomocí tohoto příkazu:

sudo nano .ssh/authorized_keys

Do tohoto souboru vložte svůj klíč, uložte soubor a ukončete.

Dále změníme konfiguraci serveru SSH. Tam musíme serveru sdělit soubor use authorized_keys a přečíst naše klíče SSH.

ZNOVU PROSÍM OZNAMTE

Obvykle je doporučená a bezpečnější možnost zakázat výchozí možnost přihlášení pomocí hesla (aby se zabránilo útokům hrubou silou na náš server) a povolit přihlášení pouze pomocí klíčů SSH. Před dokončením konfigurace zkontrolujte vše, co jste udělali, a buďte opatrní, abyste se nezamkli ze serveru. Samozřejmě to není konec světa, pokud se ztratíte, jen může být trochu nepohodlnější opravit změny. Se servery na LAN k nim přistupujete přímo/psychicky a korigujete změny a nyní poskytovatelé Cloudu poskytnou svým uživatelům v dashboardu virtuální terminál s přímým přístupem k vašemu serveru a pomocí toho můžete změny korigovat i vy. Pokud však tento typ scénáře nemáte a máte možnost vzdáleného připojení ke vzdálenému serveru pouze přes SSH, buďte opatrní.

Konfigurace serveru SSH

Nyní přejděte do konfigurace serveru SSH a proveďte změny, jak je uvedeno níže:

Příkaz pro konfiguraci serveru SSH:

sudo nano /etc/ssh/sshd_config

Poté vyhledejte a odkomentujte následující možnosti a upravte je tak, aby vypadaly takto:

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no

Po provedení změn uložte konfiguraci a restartujte službu SSH, aby se změny uplatnily.

sudo systemctl restart ssh

Poté byste měli být schopni se přihlásit přes SSH připojení k vašemu linuxovému serveru z vašeho Android telefonu pomocí SSH klíčů.

Zde je několik obrázků, jak vypadá úspěšné připojení ssh:

Shrnutí

Toto byl proces nastavení pro připojení SSH k linuxovému serveru pro váš telefon Android. S tímto nastavením byste měli být schopni se připojit ke svým serverům přes SSH z vašeho Androidu.

Velice vám děkuji za váš čas…


Linux
  1. Jak změnit port SSH v Linuxu

  2. Jak povolit server SSH na Ubuntu 22.04 Jammy Linux

  3. Linux – Jak spustit bootloader z Linuxu?

  1. Jak SSH na server pomocí jiného serveru?

  2. Linux – Jak přihlásit uživatele do Tty z Ssh?

  3. Jak nastavit SSH bez hesla v systému Linux

  1. Jak nastavit Reverse SSH Tunnel v Linuxu

  2. Jak stáhnout soubor ze serveru pomocí SSH?

  3. Jak se připojit k serveru x11vnc na Linuxu z OS X (macOS)?