Schemat wdrażania i konfiguracji świeżego FreeBSD z własnego obrazu (KVM -> SSH -> ZFS Mirror)

Autor:

w

UWAGA: Niniejsza instrukcja dotyczy wyłącznie serwerów tzw. Bare Metal np. serwery Dedykowane. W przypadku serwerów vps lub innych serwerów na maszynach wirtualnych, musisz pominąć część tworzenia ZFS Mirror!

KROK 1: Pierwszy rozruch i odzyskanie dostępu przez SSH (z poziomu KVM)

Po uruchomieniu serwera z własnego obrazu qcow2 sieć i adres IP zazwyczaj wstają automatycznie, ale system ze względów bezpieczeństwa ma zablokowane SSH dla roota oraz brak wygenerowanych kluczy tożsamości.

Zaloguj się w konsoli KVM (np. przez aplet Java) jako root.

Ustaw własne, bezpieczne hasło roota:

passwd

Wygeneruj klucze tożsamości serwera (Host Keys), bez których SSH odmówi startu:

service sshd keygen

Zezwól na logowanie roota i włącz usługę SSH:

echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
sysrc sshd_enable="YES"
service sshd start

Od tej chwili możesz zamknąć konsolę KVM i połączyć się z serwerem ze swojego komputera przez PuTTY (używając IP i nowego hasła roota).

KROK 2: Instalacja niezbędnych narzędzi administracyjnych

Po zalogowaniu przez SSH instalujemy podstawowy pakiet oprogramowania do wygodnej pracy (Midnight Commander, edytor nano, menedżer okien tmux oraz lekkie narzędzie do podnoszenia uprawnień doas).

pkg update
pkg install mc nano tmux doas

Odśwież repozytorium i zainstaluj pakiety:

pkg update
pkg install mc nano tmux doas

KROK 3: Tworzenie użytkownika i konfiguracja doas

Zamiast pracować ciągle na rootcie, tworzymy dedykowane konto z uprawnieniami administratora za pomocą doas.

Utwórz użytkownika (np. gielo), przydziel mu katalog domowy, powłokę C-shell oraz od razu dodaj go do elitarnej grupy wheel:

pw useradd -n gielo -m -G wheel -s /bin/csh

Ustaw hasło dla nowego użytkownika:

passwd gielo

Skonfiguruj doas, aby grupa wheel mogła bez problemu przechodzić na uprawnienia roota:

echo "permit keepenv :wheel" > /usr/local/etc/doas.conf

Test: Wyloguj się, zaloguj na konto gielo, wpisz doas -s, podaj hasło użytkownika – powinieneś uzyskać znak # (prawa roota).

KROK 4: Budowa macierzy lustrzanej ZFS Mirror (RAID 1) na drugim dysku

Instalator zrzuca obraz qcow2 tylko na pierwszy dysk. Drugi dysk leży odłogiem. Musimy sprawdzić nazwy dysków, sklonować strukturę partycji, bootloader i spiąć je w bezpieczny mirror.

Pytanie kontrolne przed startem:

sysctl kern.disks

W tym schemacie przyjmujemy, że system zwrócił np. ada1 ada0, gdzie ada0 to dysk główny (na którym jest już system), a ada1 to drugi, pusty dysk przeznaczony do lustra.

Procedura tworzenia lustra:

Klonowanie tablicy partycji z dysku głównego na pusty dysk:

Klonowanie kodu rozruchowego (Legacy BIOS + EFI):

Dla starszego BIOS-u (partycja 1):

gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada1

Dla UEFI (kopiowanie zawartości partycji EFI z partycji 2 blokowo):

dd if=/dev/ada0p2 of=/dev/ada1p2 bs=1m

Sprawdzenie struktury puli ZFS, aby upewnić się, która partycja dysku głównego trzyma dane (zazwyczaj jest to partycja z końcówką p4):

zpool status

(Spójrz w sekcję config – powinieneś zobaczyć nazwę puli, np. zroot, a pod nią partycję główną, np. ada0p4).

Dołączenie drugiego dysku do puli (Utworzenie Mirrora):

Używamy polecenia

zpool attach [nazwa_puli] [stara_partcja] [nowa_partcja]:

zpool attach zroot ada0p4 ada1p4

Weryfikacja procesu odbudowy (Resilvering):

zpool status

(Poczekaj chwilę, aż stan zmieni się na ONLINE, a w sekcji config zobaczysz gałąź mirror-0 łączącą ada0p4 oraz ada1p4).

BSNM
Przegląd prywatności

Ta strona korzysta z ciasteczek, aby zapewnić Ci najlepszą możliwą obsługę. Informacje o ciasteczkach są przechowywane w przeglądarce i wykonują funkcje takie jak rozpoznawanie Cię po powrocie na naszą stronę internetową i pomaganie naszemu zespołowi w zrozumieniu, które sekcje witryny są dla Ciebie najbardziej interesujące i przydatne.