Druhý test

Varianta pro letní semestr 2023/24

Cílem je ověřit používání SSH.

Test se skládá ze dvou částí, dva samostatné testy:

  1. vytvoření tunelu, zkopírování souborů ze stanice na server
  2. použití bastionu, přihlášení na vlastní server skrz bis.vse.cz

Před testem si zprovozněte přihlašování na server bis.vse.cz pomocí klíče. Na server bis.vse.cz se lze z Internetu přihlašovat pouze pomocí SSH klíče. V testu se může objevit buď local port forwarding či remote port forwarding. Zbývající dva typy tunelů (X11 a dynamic) v testu nebudou. Budu též hodnotit, zda jste se na bis.vse.cz přihlásili klíčem (zkontroluji si v logách na bis.vse.cz). Kdo se nepřihlásí klíčem, ztratí 1 bod.

Na serveru bis.vse.cz ve svém domovském adresáři vytvoříte podadresář a do něho nakopírujete snímky obrazovky. Pro vytvoření podadresáře a zkopírování souborů můžete použít aplikace WinSCP (Windows), CyberDuck (Mac, Windows) či FileZilla client (Windows, Mac, Linux).

První příklad zadání

Webová stránka s URL http://fisadm.vse.cz/server-status je dostupná pouze ze serveru bis.vse.cz. Vytvořte tunel (port forwarding) na server bis.vse.cz, zobrazte si uvedenou stránku v prohlížeči. V domovském adresáři na bis.vse.cz vytvořte podadresář fisadm a do něho uložte následující dva soubory:

  • snímek okna Vašeho prohlížeče, ve kterém bude vidět zobrazená stránka a aktuálně použité URL v příkazovém řádku,
  • snímek okna, ve kterém bude vidět použité přesměrování portů (např. příslušná část z konfigurace putty nebo spuštění programu plink s parametry pro přesměrování nebo spuštění program ssh s parametry pro přesměrování).

Řešením mohou být následující dva obrázky:

Pozor, URL http://127.0.0.1:5000/ nefunguje! Zkuste sami zjistit proč (nástroje vývojáře v prohlížeči a podívejte se na odpovědi). Musíte zadat v prohlížeči http://127.0.0.1:5000/server-status či http://localhost:5000/server-status

Druhý příklad zadání

Server bis.vse.cz má omezený přístup pouze do školní sítě. Chcete ze serveru pomocí programu telnet přistupovat na server telehack.com na port 23. Vytvořte tunel (port forwarding), abyste jste se mohli na serveru bis.vse.cz ke službě přihlásit pomocí příkazu telnet. Zdrojový port vytvořte náhodně v rozsahu 6137 až 7000. Ve svém domovském adresáři na bis.vse.cz vytvořte podadresář telehack a do něho nakopírujte:

  • snímek okna Vašeho ssh terminálu (PuTTY, ssh, …) přihlášeného na server bis.vse.cz, ve kterém bude vidět úspěšné přihlášení na uvedenou službu včetně příkazového řádku se spuštěním programu telnet,
  • snímek okna, ve kterém bude vidět použité přesměrování portů (např. příslušná část z konfigurace putty nebo spuštění programu plink s parametry pro přesměrování nebo spuštění program ssh s parametry pro přesměrování).

Řešením mohou být následující dva obrázky:

U příkazu telnet je mezi názvem cíle a portem mezera. Tj. telnet localhost 5013 a ne telnet localhost:5013

Třetí příklad zadání

Server bis.vse.cz má omezený přístup pouze do školní sítě. Chcete na server pomocí programu wget stáhnout soubor z URL http://ftp.debian.cz/pub/README.cs příkaz

wget http://ftp.debian.cz/pub/README.cs

Vytvořte tunel (port forwarding), pomocí kterého soubor stáhnete. Zdrojový port vytvořte náhodně v rozsahu 5000 až 6000. Ve svém domovském adresáři na bis.vse.cz vytvořte adresář readme a do něho zkopírujte:

  • snímek okna Vašeho ssh terminálu (Putty, ssh, …), ve kterém bude vidět úspěšné stažení souboru pomocí programu wget a to včetně zadaného URL,
  • snímek okna, ve kterém bude vidět použité přesměrování portů (např. příslušná část z konfigurace putty nebo spuštění programu plink s parametry pro přesměrování nebo spuštění program ssh s parametry pro přesměrování).

Řešením mohou být následující dva obrázky:

V průběhu testu se přihlásíte na svůj server (např. bis128.vse.cz) pomocí klíče ze serveru bis.vse.cz. Při opravování testu zkontroluji přihlášení v log souboru /var/log/auth.log na Vašem serveru. Předpokládám, že si přihlášení připravíte a vyzkoušíte dopředu. Rozmyslete si, zda budete používat stejnou dvojici klíčů jako pro přihlašování na bis.vse.cz.

Existuje více variant řešení, jsou popsány v kapitole Přihlašování skrz bastion příručky pro SSH.

Přihlášení si můžete ověřit sami v logu na Vašem serveru. Zadejte příkaz:

sudo less /var/log/auth.log

sudo je příkaz pro získání práv uživatele root (log nemohou číst běžní uživatelé),

less je program pro prohlížení souborů, umí vyhledávat; můžete použít i editor nano

Log je dlouhý - doporučuji v programu less zadat / (lomítko) a za ním ihned své uživatelské jméno. Pomocí písmene n se dostanete na další výskyt (next). Já pro vyhledání používám program grep na filtrování řádků textového souboru; připadá mi to snazší, než prohlížení pomocí less (pro začátečníky možná ne).

Přihlášení heslem vypadá v logu takto:

2020-09-21T18:15:00.460077+02:00 info auth sshd[28817]: Accepted password for pavlicek from 146.102.42.38 port 47640 ssh2

Přihlášení klíčem takto:

2018-09-27T12:22:14.547381+02:00 info auth sshd[24229]: Accepted publickey for pavlicek from 146.102.18.5 port 51702 ssh2: RSA SHA256:ES0Jog5Lor4ifUptgdg1AKDl/ZwzVKCIY5Gcv8g/98A

V logu vidím i IP adresu, ze které se uživatel přihlásil. Server bis.vse.cz má 146.102.18.5. Přihlášení heslem v ukázce je za 0 bodů (není z bis.vse.cz). Druhé přihlášení je za 2 body (z bis.vse.cz a s klíčem).

  • Poslední úprava: 2024/02/20 09:59
  • autor: pavlicek