Budowa serwera/NAS na Ubuntu Server

Instalacja i konfiguracja oprogramowania sieciowego.
Awatar użytkownika
Gorack
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 03 sie 2009, 08:36
Płeć: Mężczyzna
Wersja Ubuntu: 23.04
Środowisko graficzne: GNOME
Architektura: x86_64

Budowa serwera/NAS na Ubuntu Server

Post autor: Gorack »

Mam nadzieję, że piszę w odpowiednim dziale. Zamierzam budowę małego serwera plików i zastanawia mnie kilka kwestii.
Pierwsza rzecz to podzespoły. Nie chcę wydawać na to milionów monet, więc biorę pod uwagę też używane części. Myślałem o oparciu się na platformie B450 albo B550, płycie ITX oraz jakimś Ryzen 3 albo 5 ze zintegrowaną GPU i od 8 do 16 GB RAM. Ciągle dobieram obudowę ale na pewno chciałbym zmieścić dwa dyski HDD spięte w Raid 1 oraz mam dysk SSD 1 TB, który chciałbym aby posłużył jako podręczna pamięć flash. W NAS-ach fajnie to działa, pytanie jak to osiągnąć na ubuntu? Dawno nie bawiłem się pingwinkiem i ten serwer będzie też swego rodzaju powrotem do tematu. Czy żeby SSD zadziałał jak oczekuję, mam go w momencie formatowania przeznaczyć na partycję wymiany (SWAP)? Zależy mi aby najpierw wgrywało się na SSD a później przerzucało na HDD. Czy przeznaczyć wtedy wszystko na SWAP czy to przesada i zostawić parę GB na sam system i aplikacje?

Druga kwestia to jakie oprogramowanie dla domowego serwera polecacie. Wstępnie myślałem o: Nextcloud dla backupu i rezygnacji z OneDrive. PLEX do multimediów (ewentualnie Emby, Jellyfin), Photoprism do zdjęć. Nie planuje wirtualizacji ani hostingu ale może są jeszcze jakieś must have opcje?
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4680
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Budowa serwera/NAS na Ubuntu Server

Post autor: jacekalex »

Potrzebujesz zainstalować i skonfigurować dyski w fstab, firewalla, Sambę na tym serwerze Ubuntu i to w zasadzie wszystko.
Chyba, że jeszcze chcesz te pliki wystawiać po http, (w sieci lokalnej), tu przyda się Apache, Nginx albo Lighttpd.
Troszkę zabawy będzie konfiguracją systemd, crona i innych narzędzi systemowych,
żeby wyeliminować różne problemy wynikające z domyślnej konfiguracji systemu,
ale nie świeci garnki lepią, troszkę poszukiwań w Google Cię czeka.
:pt36: :pt36: :pt36: ;-)

Pozdro
:craz:

PS:
Masz tu rozwiązanie jednego "strasznego problemu domyślnej konfiguracji Ubuntu" który może się przydać w serwerze plików:
https://www.tecmint.com/disable-suspend ... -in-linux/
Jednak żeby stosować podobne porady, musisz się dokładnie namyślić i upewnić, że wiesz, jakie skutki takie działanie powoduje.
:boat: :pt36: :confused: ;-)
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
Gorack
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 03 sie 2009, 08:36
Płeć: Mężczyzna
Wersja Ubuntu: 23.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Budowa serwera/NAS na Ubuntu Server

Post autor: Gorack »

Chcę aby to działało wewnątrz mojej sieci. Niczego dalej wystawiać nie planuje. Jedyna możliwość gdzie będę chciał dostęp do plików z zewnątrz to dostęp do plików przez Nextcloud. A co powiesz o moich założeniach sprzętowych i SSD jako pamięć podręczna?
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4680
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Budowa serwera/NAS na Ubuntu Server

Post autor: jacekalex »

Postawiłem kiedyś taki NAS na Debianie, procek Intel Core 2 duo E6400, 4 kości po 2GB RAM DDR2 667Mhz, 2 dyski twarde 1TB,
i chodzi w małym biurze już kilka lat.

Nawet uratował kiedyś pliki przed zaszyfrowaniem przez malware, bo po prostu wszystko co dostał po Sambie czy FTP kopiował na inną partycję, gdzie Samba nie miała prawa nic zapisywać, a pliki były lokalnie wystawione właśnie przez Apacha z solidną autoryzacją i szyfrowaniem SSL (również zdalnie).

Samba w Wersji 3 wymaga szyfrowania połączenia, także lepiej żeby procek miał wbudowany mechanizm szybkiego szyfrowania AES,
w Intelu to się zwie AES-NI, w AMD też jest coś podobnego.
Teraz brałbym na taką maszynę Intela i5-2500s albo coś podobnego o niskim TDP, procki są za grosze, pamięć DDR3 to też nie majątek,
tylko mobo troszkę kosztuje.

Ten potwór zupełnie wystarczy, a na Allegro można sam procek dostać za 45 zeta.
https://www.intel.pl/content/www/pl/pl/ ... tions.html

Tu masz info odnośnie szyfrowania AES:
https://www.xmodulo.com/check-aes-ni-en ... enssl.html

To u mnie szybkość Openssl z AES-NI:

Kod: Zaznacz cały

 openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 104580322 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 27747978 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 7191921 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 1799717 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 225507 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 112092 aes-128-cbc's in 3.00s
OpenSSL 1.1.1s  1 Nov 2022
built on: Sun Dec 11 02:57:02 2022 UTC
options:bn(64,64) rc4(16x,int) des(int) aes(partial) idea(int) blowfish(ptr) 
compiler: x86_64-pc-linux-gnu-gcc -fPIC -pthread -m64 -Wa,--noexecstack -march=native -O3 -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -flto=6 -fuse-linker-plugin -fstack-clash-protection -fcf-protection=full -pipe -Wl,-O1 -Wl,--as-needed -fno-strict-aliasing -Wa,--noexecstack -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG  -DOPENSSL_NO_BUF_FREELISTS
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc     557761.72k   591956.86k   613710.59k   614303.40k   615784.45k   612171.78k
A to jest szybkość Cryptsetup z AES-NI w szyfrowaniu dysków twardych:

Kod: Zaznacz cały

cryptsetup benchmark
# Testy są przybliżone tylko z użyciem pamięci (bez we/wy na dysk).
PBKDF2-sha1      1530767 iteracji/sekundę dla klucza 256-bitowego
PBKDF2-sha256    1967309 iteracji/sekundę dla klucza 256-bitowego
PBKDF2-sha512    1396239 iteracji/sekundę dla klucza 256-bitowego
PBKDF2-ripemd160  809086 iteracji/sekundę dla klucza 256-bitowego
PBKDF2-whirlpool  516031 iteracji/sekundę dla klucza 256-bitowego
argon2i       4 iteracji, pamięć: 640095, równoległe wątki (CPU): 4 dla klucza 256-bitowego (żądany czas 2000 ms)
argon2id      4 iteracji, pamięć: 653956, równoległe wątki (CPU): 4 dla klucza 256-bitowego (żądany czas 2000 ms)
#      Algorytm |     Klucz |     Szyfrowanie | Odszyfrowywanie
        aes-cbc        128b       501,0 MiB/s      1887,7 MiB/s
    serpent-cbc        128b        66,3 MiB/s       405,8 MiB/s
    twofish-cbc        128b       132,7 MiB/s       263,9 MiB/s
        aes-cbc        256b       373,0 MiB/s      1476,8 MiB/s
    serpent-cbc        256b        69,2 MiB/s       417,8 MiB/s
    twofish-cbc        256b       135,6 MiB/s       267,6 MiB/s
        aes-xts        256b      1632,9 MiB/s      1648,3 MiB/s
    serpent-xts        256b       415,8 MiB/s       402,2 MiB/s
    twofish-xts        256b       263,7 MiB/s       264,5 MiB/s
        aes-xts        512b      1303,9 MiB/s      1308,4 MiB/s
    serpent-xts        512b       414,4 MiB/s       402,5 MiB/s
    twofish-xts        512b       261,9 MiB/s       265,8 MiB/s
Pozdro
:craz:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
Gorack
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 03 sie 2009, 08:36
Płeć: Mężczyzna
Wersja Ubuntu: 23.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Budowa serwera/NAS na Ubuntu Server

Post autor: Gorack »

Wracam do tematu. Jestem aktualnie na etapie kompletowanie hardware'u ale widzę potencjalnie kilka problemów z samym systemem. Rozumiem, że na czas instalacji serwera muszę podpiąć monitor, klawiaturę i myszkę, bo jak to inaczej ruszyć, ale domyślnie mój DYI NAS będzie stał w innym pomieszczeniu i jakoś trzeba się z nim połączyć. Wyobrażałem sobie wcześniej, że działa to na zasadzie NAS np. od Synology gdzie wklepie IP w przeglądarkę i ze swojego kompa (z windowsem) wyświetli mi się pulpit (jak już zainstaluję GUI) i będę mógł zarządzać serwerem zdalnie. Z tego co wnioskuję to tak to na starcie nie zadziała. Czy dobrze zakładam, że będę potrzebował jeszcze czegoś w stylu Team View-era?
Od mojego pierwszego wpisu trochę się koncepcja zmieniła. Miałem wcześniej budować to w obudowie SFF ale stwierdziłem, że fajnie by było mieć takiego mini tower pc który zrobi to czego nie ogarnia choćby mój główny PC (zatoka 5,25 dla okazyjnego odczytu płyt - tak, ostatnio trafił mi w ręce taki relikt i nie było na czym jej uruchomić czy czytnik kart SD). Czy może darować sobie zabawę z Ubuntu Server i TrueNAS albo unRAID zrobi robotę lepiej?
ODPOWIEDZ

Wróć do „Sieci, serwery, Internet”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości