Dystrybucja i kernel są częścią materiału
Polecenia, nazwy pakietów i położenie konfiguracji różnią się między dystrybucjami. Nawet w tej samej rodzinie systemów zmiana wydania może wprowadzić inną wersję systemd, firewalla lub kernela. Program szkolenia powinien wskazywać konkretny system i wersję, a obraz bazowy musi odpowiadać materiałom.
Jeśli zajęcia dotyczą administracji ogólnej, można świadomie porównać dwa systemy, ale wymaga to osobnych instrukcji i czasu na omówienie różnic. Przypadkowa mieszanka Ubuntu, Debiana i systemów firmowych nie jest takim porównaniem. Zwykle utrudnia prowadzenie ćwiczeń i sprawdzanie rezultatów.
Zakres sudo powinien wynikać z ćwiczeń
Uczestnik uczący się pracy z plikami, procesami i potokami nie potrzebuje pełnych uprawnień administratora. Przy zarządzaniu usługami, pakietami, użytkownikami lub regułami sieciowymi dostęp przez sudo staje się częścią zadania. Można nadać pełne uprawnienia na prywatnej VM albo ograniczyć je do wskazanych poleceń.
Każda osoba powinna pracować na własnym koncie. Wspólny użytkownik utrudnia analizę historii poleceń, praw plików i procesów. Osobne stanowiska zapobiegają też sytuacji, w której zmiana firewalla lub usunięcie pakietu przez jedną osobę zatrzymuje pracę całej grupy.
Ćwiczenie powinno łączyć polecenie z obserwowalnym stanem
Instrukcja „uruchom usługę” ma większą wartość, gdy uczestnik sprawdza proces, port, log i zachowanie po restarcie. Podobnie przy uprawnieniach: zmiana trybu pliku powinna prowadzić do próby dostępu z innego konta, a nie kończyć się na wyświetleniu wyniku chmod.
Przydatne scenariusze obejmują diagnozę niedziałającej usługi, analizę zużycia dysku, pracę z logami, konfigurację zadania cyklicznego i ograniczenie dostępu do katalogu. Każdy z nich ma stan początkowy, objaw, źródła informacji i kryterium naprawy. Uczestnik uczy się łączyć dane, zamiast zapamiętywać pojedyncze komendy.
Sieć laboratoryjna powinna być przewidywalna
Ćwiczenia z DNS, routingu, SSH czy zapory wymagają jawnej topologii. Adresy, nazwy hostów i dozwolone połączenia powinny być stałe przez czas zajęć. Jeśli uczestnik ma zmieniać reguły sieciowe, musi mieć możliwość przywrócenia dostępu z panelu lub konsoli niezależnej od konfigurowanego interfejsu.
Ruch do internetu można ograniczyć do repozytoriów pakietów i dokumentacji. Nie każdy warsztat potrzebuje otwartego wyjścia. Lokalny mirror lub cache pakietów poprawia powtarzalność i zmniejsza wpływ łącza, szczególnie gdy cała grupa instaluje te same zależności w tym samym momencie.
Logi i czas systemowy muszą działać przed startem
Diagnoza opiera się na chronologii, dlatego maszyny powinny mieć zsynchronizowany czas. Materiał musi odpowiadać sposobowi zapisywania logów w danym systemie, na przykład w journalu systemd albo tradycyjnych plikach. Uczestnik powinien wiedzieć, gdzie szukać komunikatów usługi oraz jak zawęzić je do właściwego okresu.
Nie należy przygotowywać idealnie czystych logów z jednym błędem. Realistyczny system zawiera komunikaty informacyjne i zdarzenia niezwiązane z zadaniem. Jednocześnie szum nie może być tak duży, aby rozwiązanie zależało od odgadnięcia intencji autora.
Snapshot daje przestrzeń na odważniejsze próby
Zmiana konfiguracji rozruchu, reguł zapory czy tablicy partycji może uniemożliwić dalsze połączenie. W prywatnej VM jest to kontrolowana część nauki, jeśli istnieje sprawdzony sposób odtworzenia. Snapshot przed ryzykownym etapem albo ponowne utworzenie maszyny z obrazu bazowego skraca powrót do zajęć.
Reset nie powinien zastępować diagnozy. Najpierw uczestnik zbiera informacje, opisuje przyczynę i proponuje naprawę. Przywrócenie stanu jest właściwe, gdy naprawa wykracza poza zakres albo stanowisko ma rozpocząć kolejne ćwiczenie z identycznego punktu.
Gotowe VM oddzielają naukę systemu od firmowego urządzenia
Laptop uczestnika może służyć wyłącznie do połączenia przez przeglądarkę lub SSH. Narzędzia, usługi i uprawnienia znajdują się w laboratorium, więc szkolenie nie wymaga modyfikowania polityk lokalnego systemu. Prowadzący może sprawdzić obraz raz, a następnie powielić go dla grupy.
Opisane podejście odpowiada modelowi maszyn wirtualnych na szkolenia IT. Parametry, dostęp i zakres administracyjny dobiera się do programu. Celem nie jest maksymalna swoboda sama w sobie, lecz bezpieczne miejsce, w którym skutki poleceń są rzeczywiste i odwracalne.