Narzędzia serwerowe☁️
Na dobry początek można zajrzeć na wiki reddita homelab
Monitoring i zarządzanie infrastrukturą
Przydatne narzędzia dla każdej osoby, która zamierza rozpocząć swoją przygodę z serwerami/homelabem.
-
cockpit - pozwala w prosty sposób monitorować serwer (poprzez apkę webową możemy się zalogować, uruchomić terminal, sprawdzać obciążenie, logi etc) ( link to konfiguracji)
-
Jeśli chcemy w cockpicie wygodnie zarządzać także portami warto doinstalować
-
linux-dash - nieco prostsza alternatywa od cockpita
Narzędzia do monitorowania - długa lista https://www.ubuntupit.com/most-comprehensive-list-of-linux-monitoring-tools-for-sysadmin/
Cockpit + cloudflare tunnel
Wymagana edycja pliku
cat /etc/cockpit/cockpit.conf
[WebService]
Origins = https://dashboard.xxxxx.ca wss://dashboard.xxxxx.ca
ProtocolHeader = X-Forwarded-Proto
AllowUnencrypted = true
http://localhost:9090
źródło
Inną ważną rzeczą jest ograniczenie poziomu domeny. Nie powinno się używać pod-poddomen. może być cockpit-serwer.domena.pl
, ale nie cockpit.serwer.domena.pl
żródło
Monitorowanie dockerów 🐋
- portainer aplikacja służąca do wygodnej pracy oraz monitorowania dockerów w systemie
- Yacht - alternatywa dla portainera (trochę młodszy i prostszy projekt)
Sieć, łączenie się i udostępnianie
- ngrok - pozwala łatwo udostępniać serwisy z urządzeń w sieci lokalnej. Dobre do prototypowania oraz prostych stron
- cloudflare - must-have gdy masz jakąś domenę i nią zarządzasz
- Cloudflare Proxy - zwiększa wydajność twoich stron oraz pozwala tunelować ruch IPv4 na adresy PIv6
- Tunelowanie - pozwala wystawiać do sieci serwery z sieci lokalnych pozbawione publicznych adresów. Można użyć tego chociażby do udostępnienia cockpita, czy też SSH (instrukcje)
VPN-y
- Wireguard - jeden z dwóch popularnych protokołów VPNa.
-
OpenVPN - również popularny, lecz troche przestarzały protokół VPNa
-
PiVPN - prosty i uniwersalny VPN. Ma UI webowe oraz wpiera Wireguarda i OpenVPN-a.
Obsługa PiVPN-a i Wireguarda
Zakładam, że PiVPN jest skonfigurowany z Wireguardem.
Aby dodać nowego nowe połączenie do naszego serwera wireguarda nalezy wywołać komendę pivpn add
, tam określamy nazwę połączenia.
pawel@amd:~$ pivpn add
Enter a Name for the Client: superserwer
::: Client Keys generated
::: Client config generated
::: Updated server config
::: WireGuard reloaded
======================================================================
::: Done! superserwer.conf successfully created!
::: superserwer.conf was copied to /home/opc/configs for easytransfer.
::: Please use this profile only on one device and create additional
::: profiles for other devices. You can also use pivpn -qr
::: to generate a QR Code you can scan with the mobile app.
======================================================================
Konfigi są też zapisywane w /etc/wireguard/configs
Instrukcja podłączenia się - Aby się podłączyć na maszynie klienckiej umieszczamy ten konfig w folderze /etc/wireguard/
i wołamy komendę wg-quick up nazwapliku
🟩 any wystartować i wg-quick down nazwapliku
🟥 aby zatrzymać.
(przydać się może paczka resolvconf)
Storage
- TrueNAS - system operacyjny dedykowany maszynm mającym służyć jako storage
- Wtyczka do Cockpitu pozwalająca na łatwe udostępnianie zawartości, jest też inna wtyczka do przeglądania plików
Dla chcących postawić sobie jakiś serwer
Poszukiwanie VPS-a:
- mikr.us - fajne i tanie serwery dla amatorów, jest trochę dokumentacji i fajna społeczność ( FB i Discord)
- Oracle free tier - darmowe serwery VPS or oracle. Omówienie: link pepper SIDENOTE: jeśli instancje są nieużywane to mogą być automatyucznie wyłączane: link
- serverhunter - wyszukiwarka tanich VPSów (gdy mikrus nie starcza)
Oracle odblokowywanie portów
Jako, że maszyny od Oracle mają domyślnie publiczne IP to mają domyślnie nieco bardziej restrykcyjny firewall.
link do dokumentacji
Najpierw trzeba zmienić ustawienia w panelu na stronie oracle, a potem jeszcze dodać zasadę do iptables
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
i jeśli to działa to możemy zapisać naszą zmianę
sudo netfilter-persistent save
Oganianie domen: