[How-To] Instalacja oraz konfiguracja Netboot.xyz w sieci lokalnej

Netboot.xyz to sposób na uruchamianie w środowisku PXE narzędzi bądź systemów operacyjnych poprzez sieć bez fizycznej instalacji nośnika na komputerze.

Dzisiejszy wpis będzie omawiał instalacje Netboot.xyz w wersji Docker oraz konfiguracje lokalnej sieci na przykładzie routera MikroTik. Używać będziemy obrazu z linuxserver.io

Jeśli jeszcze nie posiadasz Docker’a to zapraszam do zapoznania się z tutorialem Docker + Compose + Portainer

1. Instalacja Netboot.xyz używając Docker + Compose

Tworzymy plik docker-compose.yml i wklejamy poniższy kod – można dostosować według własnych potrzeb.

version: "2.1"
services:
  netbootxyz:
    image: ghcr.io/linuxserver/netbootxyz
    container_name: netbootxyz
    environment:
      - PUID=1000
      - PGID=1000
      - MENU_VERSION=2.0.32 #optional
    volumes:
      - /netboot/config:/config
      - /netboot/assets:/assets #optional
    ports:
      - 3000:3000
      - 69:69/udp
      - 8080:80 #optional
    restart: unless-stopped
  • /netboot/assets to miejsce gdzie będziemy przechowywać obrazy narzędzi bądz systemów operacyjnych,
  • /netboot/config ścieżka gdzie będziemy przechowywać pliki konfiguracyjne na hoscie. Należy pamiętać w obu przypadkach assets oraz config aby nie zmieniać nic za znakiem : gdyż jest to ścieżka w kontenerze
  • 3000 port przez który będzie dostęp do panelu zarządzania web (dowolna konfiguracja)
  • 69 TFTP server port – musi być dostępny dla kontenera
  • 8080 port przez który będą pobierane obrazy (dowolna konfiguracja)
  • PUID uprawnienia użytkownika (dowolna konfiguracja) więcej info na stronie linuxserver.io
  • PGID uprawnienia grupy (dowolna konfiguracja) więcej info na stronie linuxserver.io

Teraz pozostaje nam utworzyć container używając docker-compose

docker-compose up -d

To wszystko, można śmiało otworzyć w przeglądarce port 3000 i zajrzeć do panelu administracyjnego – w moim przypadku będzie to http://192.168.10.100:3000.

W takiej postaci Netboot.xyz już działa jednak będzie pobierał wszystkie obrazy z internetu, a my chcemy aby działał lokalnie bez dostępu do internetu.

2. Konfiguracja lokalnego repozytorium

Przechodzimy w panelu web do zakładki Menus i klikamy z lewej strony plik boot.cfg

Zmieniamy poniższa linijkę według naszych potrzeb, czyli podajemy IP oraz port jaki utworzyliśmy wcześniej instalując Netboot.xyz

# set location of custom netboot.xyz live assets
set live_endpoint http://192.168.10.100:8080/

w moim przypadku jest to 192.168.10.100:8080

3. Pobieranie obrazów na lokalny serwer

Przechodzimy w panelu web do zakładki Local Assets następnie wybieramy dystrybucje jakie nas interesują

Na Koniec klikamy Pull Selected i w prawym górnym rogu powinien pojawić się pasek postępu

4. Konfiguracja routera oraz Bios w komputerze (klient)

Konfiguracja jest indywidualna i zależy od routera jaki wykorzystujemy, poniżej na przykładzie MikroTik gdyż taki posiadam w swojej sieci, przypominam aby dostosować swój adres IP serwera

Dodajemy next-server oraz boot-file do serwera DHCP

/ip dhcp-server network set 0 next-server="'192.168.10.100'"
/ip dhcp-server network set 0 boot-file-name="'netboot.xyz.kpxe'"

Na koniec pozostaje nam uruchomienie opcji w Bios klienta aby startował z sieci w trybie Legacy (Boot mode), resztą zajmie się router oraz Netboot.xyz. Tutaj także nie opisze jak to się robi gdyż zależne jest od rodzaju Bios. Efekt końcowy prezentuje się tak:

Jak znaleźć swoją konfiguracje routera do działania w środowisku PXE? Musisz najzwyczajniej poszukać w swojej ulubionej wyszukiwarce pod frazami TFTP PXE Boot

Jeśli podczas wybierania w menu jakiegoś obrazu otrzymamy error to znaczy iż nie pobraliśmy go na lokalny serwer.

Powodzenia i miłej zabawy 😉

Leave a Reply

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.