Přihlášení
Na server sa pripájame programom ssh:
ssh LOGIN@aisa.fi.muni.cz
a na fakultných strojoch stačí iba ssh aisa
.
Namiesto LOGIN
napíšeme svoj fakultný login, obvykle je tvaru
xčasť_priezviska
alebo xUČO
.
Fakultný login je možné zistiť napríklad v aplikácii Změna hesla pro systémy Fakulty informatiky, kde sa dá zároveň zmeniť fakultné heslo. |
Po prihlásení vyzerá spustenie skriptu na odovzdanie úlohy nasledovne:
/home/kontr/odevzdavam pb071 hw0X {nanecisto/naostro}
.
Pred každým odovzdaním úlohy si nezabudneme skontrolovať, že bez chýb sa skompiluje aj na Aise. Pravdepodobne na vlastnom stroji používame inú verziu kompilátora s inými prepínačmi, prípadne pri vývoji na Windows nepoužívame linuxové nástroje vôbec. Ich chovanie totiž nebýva vždy rovnaké. |
Moduly
Viaceré programy sa užívateľovi sprístupnia až na požiadanie. Slúži na to príkaz module:
module add MODULE_NAME
|
načíta jednorazovo modul; môžeme využiť Tab na doplňovanie názvov |
module list
|
zobrazí aktuálne načítané moduly |
Na Aise môžeme potrebovať moduly:
-
cmake-3.18.3 (k dispozícii je totiž stará verzia)
-
gcc-10.2 (tiež iba stará verzia)
-
vim-8.0 (pre našu konfiguráciu vimu)
-
llvm-17.0.1 pre clang-tidy/format
Na fakultných počítačoch:
-
pre IDE: qtsdk pre Qt Creator a clion pre CLion.
-
llvm-17.0.1 pre clang-tidy/format
Pri zadávaní mena modulu dvojnásobným Tab vyvoláme všetky možnosti, niekedy rôzne/novšie verzie. U IDE si môžeme všimnúť aj verzie značené -local — tieto uprednostníme. |
Automatické načítanie modulov
Možné pridaním príkazov do súboru .bashrc
v domovskom adresári (~/.bashrc
). Príkazy v .bashrc
sa vykonávajú pri
spustení programu bash, teda napríklad pri prihlásení. Pridanie modulov cmake-3.18.3 a llvm-17.0.1 spolu s kontrolou,
že máme k dispozícii moduly, nastavíme pridaním nasledujúcich riadkov na koniec súboru .bashrc
:
# pb071
if type -t module >/dev/null; then
module add cmake-3.18.3
module add llvm-17.0.1
# add other modules here if needed
fi
Na editovanie súboru môžeme použiť napríklad vim. |
(voliteľné) SSH kľúče a automatické prihlasovanie
Slúžia miesto hesla na identifikáciu užívateľa voči serveru. S ich použitím teda pri prihlasovaní na Aisu programom ssh nepotrebujeme zadať heslo a rovnako to platí pre všetky nástroje, ktoré ssh využívajú — ako je git, scp a iné.
Vygenerovanie vlastných kľúčov
-
Pár súkromný/verejný kľúč vygenerujeme nástrojom ssh-keygen:
ssh-keygen -t ed25519 -C "xlogin@fi"
Prepínačom
-t
zvolíme novší a bezpečnejší formát a-C
je nepovinný komentár, ktorý pomenuje kľúč. -
Nástroj sa nás spýta na miesto uloženia kľúčov, ktoré iba Enter potvrdíme, aby sme sa vyhli dodatočným nastaveniam.
-
Ďalej sa nás spýta na heslo. Je veľmi dôležité chrániť kľúč šifrovaním, no nie je to vyžadované a heslo sa dá vynechať dvojitým Enter.
-
Vypíše nám umiestnenie oboch kľúčov:
Your identification has been saved in /home/<xlogin>/.ssh/id_ed25519. Your public key…
, cestu k nim budeme neskôr potrebovať.
Nastavenie automatického prihlasovania
-
Svoj verejný kľúč uložíme na Aisu, do
~/.ssh/authorized_keys
, pomocou ssh-copy-id:ssh-copy-id xlogin@aisa.fi.muni.cz
-
Aby sme pri práci s gitom nemuseli zadávať heslo, svoj verejný kľúč uložíme do služby, ktorá spravuje repozitáre. Mali by sme ho nájsť v súbore
~/.ssh/id_ed25519.pub
, ktorý vypíšeme na terminál príkazomcat ~/.ssh/id_ed25519.pub
. Po skopírovaní kľúč vložíme do fakultného GitLabu. -
Následne sa už môžeme prihlasovať na Aisu bez zadávania hesla. Kľúč ssh automaticky rozpozná (preto sme nemenili jeho cestu alebo názov):
ssh xlogin@aisa.fi.muni.cz
Poznámky
Šifrovanie kľúčov a SSH agenti
Nešifrovaný súkromný kľúč je ako heslo prilepené na monitore — hocikto s prístupom k nemu ho môže zneužiť. Pokiaľ ale kľúč šifrujeme heslom, musíme ho pri každom jeho použití zadať znova, čím sa nám zjavne stratí najväčšia výhoda v ich používaní — automatické prihlasovanie.
SSH agent je program, ktorý si po dobu prihlásenia dešifrovaný kľúč zapamätá a poskytne ho za nás.
Skratky, používanie viacero kľúčov naraz
Konfiguráciu môžeme uviesť v súbore ~/.ssh/config
. Nasledujúci príkaz nám umožní pripájať sa na Aisu pomocou kľúču id_ed25519
iba pomocou ssh aisa
:
cat <<EOF >>~/.ssh/config
Host aisa
Hostname aisa.fi.muni.cz
User XLOGIN
IdentitiesOnly yes
IdentityFile ~/.ssh/id_ed25519
EOF