Jump to content
bluzman

Upgrade na serwerze. Czy jest sens?

Recommended Posts

Witam

Po oficjalnej informacji, że projekt dystrybucji CentOS ma być zamknięty postanowiłem przesiąść się na distro Fedora. Nigdy nie pracowałem na Fedorze. Nie lubię zbytnio dystrybucji Debian i debiano pochodnych wynylazków typu Ubuntu, który moim zdaniem nie jest przyjazny do zastosowań serwerowych tak jak pochodne RedHata. Posiadam serwer z vpn, www, mysql, ssh, smb + chmura plików w tym jest jeszcze zainstalowane GUI - xfce z którego rzadko się korzysta. Wszystko jest praktycznie robione zdalnie przez ssh. Moje pytanie brzmi: czy warto robić upgrade Fedory często przy takich usługach na serwerze? Zdania adminów są podzielone. Niektórzy robią to do każdej nowej stabilnej wersji distro inni wtedy gdy wyjdzie nowa stabilna wersja jądra linuxa razem z nową Fedorą a usługi w/w i zabezpieczenia np. iptables oraz upgrade php wykonują manualnie przez 'dnf upgrade ...'

Share this post


Link to post
Share on other sites

Upgrade zawsze wart robić. CentOS nie będzie zamknięty, raczej inaczej będzie rozwijany. Jeżeli planujesz postawić serwer na Fedorze to może dla Ciebie idealny będzie CentOS Stream.

Jeżeli chcesz to możesz użyć innych dystrybucji zgodnych z RHEL np AlmaLinux, EuroLinux, RockyLinux. Jeżeli używasz CentOSa 8 to wszystkie te dystrybucje oferują narzędzia do migracji.

Serwer na Fedorze jak najbardziej jest możliwy, jednak ze względu na stosunkowo krótki czas wsparcia i ciągły rozwój (w stosunku do CentOSa) wymaga szczególnej uwagi, ale za to odwdzięcza się oprogramowaniem w najnowszej wersji.

Share this post


Link to post
Share on other sites

CentOS 8 z końcem 2021 roku zostaje wycofany a CentOS 7 wspierany do 2024 roku i to podobno tylko łatkami bezpieczeństwa. Przynajmniej z tego co wyczytałem w różnych źródłach. Ja używam CentOS 7. Nie widziałem potrzeby instalowania nowszej wersji dla takich usług jak u mnie więc uważam że w zupełności wystarczający był. Nie jestem przekonany co do wersji Stream. Może dlatego, że do końca nie rozumiem idei jej idei. Określają go jako jakiś kolejny etap przejściowy/rozwojowy pomiędzy Fedorą, która już jest czymś takim a RHEL. Może źle to interpretuje ale dla mnie to kolejna wersja, która jest zbędna, stworzona po to żeby CentOS też miał coś podobnego do Fedory.

Wracając do tematu to czy Fedora często stwarza jakieś problemy przy upgrade? Nie jestem doświadczony jak zawodowy administrator. Bardziej do tego pytanie statystycznie podejść. Chodzi mi o jakieś zależności softu, szukanie i doinstalowywanie pakietów, też przy zamianie jądra itp. Czy można załatwić sprawę 2-4 komendami dnf ... ?
Jak rozumieć krótki czas wsparcia? Repozytoria z których są robione aktualizacje np. iptables czy nginx są zamykane lub pakiety w nich do danej wersji przestają być aktualizowane? Bo to, że w nowej wersji Fedory zostanie wprowadzony jakieś nowy soft do muzyki czy GUI Gnome 40 jak to chyba miało miejsce w Fedora 34 to mnie nie interesuje wcale.

Share this post


Link to post
Share on other sites
5 minut temu, bluzman napisał:

Wracając do tematu to czy Fedora często stwarza jakieś problemy przy upgrade?

Raczej nie (czego przykładem mogę być ja, aktualizuje na bieżąco od 2013), ale czasami mogą być problemy w związku z nowszymi wersjami oprogramowania np. php, python, jeżeli będziesz używał oprogramowania dostępnego w repo Fedory, to raczej nie będzie problemu. Fedora generalnie ma krótki okres wsparcia i aktualizacje wychodzą przez około 1-1,5 roku, po tym okresie trzeba już migrować na nowszą wersję.

BTW: iptables jest już od dawna przestarzałe i jeżeli używasz go, to proponuję zapoznać się z następca nftables. W Fedorze jest dostępny firewalld i z jego pomocą można również "wyklikać" odpowiednie reguły.

Share this post


Link to post
Share on other sites
25 minut temu, bluzman napisał:

CentOS 8 z końcem 2021 roku zostaje wycofany a CentOS 7 wspierany do 2024 roku

Jeśli chodzi o numerki to tak, ale przynajmniej jeśli jesteś na 8 to nie powinieneś odczuć różnicy. Powinien się zaktualizować do CentOS Stream i działać jak każda inna dystrybucja rolling release – instalujesz raz i potem tylko aktualizujesz. Jeśli korzystałeś kiedyś z Manjaro, Archa czy innej dystrybucji rolling to powinieneś kojarzyć, o czym piszę. Myślę, że CentOS Stream będzie stabilniejszy niż Fedora, bo pakiety najpierw będą trafiały do Fedory, a potem do CentOS. Wyobrażam sobie, że Fedora ma być miejscem, gdzie userzy będą testować (i rozwalać :P) najnowsze pakiety, w CentOS Stream będą one doszlifowywane pod serwery, a RHEL to będzie skała nie do ruszenia :D 

Share this post


Link to post
Share on other sites

Mam serwer z Fedorą i mam serwer z CentOSem. Obsługuje się je prawie tak samo i większość rzeczy będzie działać na obydwu. Warto się zunifikować i mieć wszędzie ten sam system, jest wówczas mniej roboty.

Czy Fedora, czy CentOS, to zależy od aplikacji. Jeżeli jest skonteneryzowana, to wszystko jedno. Jeżeli nie jest, sprawdź wersję PHP, Pythona, Rubiego, MySQL-a, Postgresa, ElasticSearch (i tak dalej), na jakiej ona w ogóle działa. Fedora 35 będzie miała Pythona 3.10 oraz PHP 8. Jeżeli da radę, to da radę. Na CentOS możesz sobie wybrać wersję PHP, czy Pythona, korzystając z repozytoriów appstream. Fedora wymaga formatu partycji root i przeinstalowania systemu, przejście na CentOS Stream tego nie wymaga.

Są jeszcze dwie możliwości, jeżeli chcesz zostać na RHEL8, lub darmowym odpowiedniku. Możesz zainstalować dystrybucję Euro Linux, Rocky Linux, Alma Linux i tym podobne. Będziesz miał CentOSa 8 pod inną nazwą. Możesz też założyć konto na redhat.com i używać 16 darmowych licencji na RHEL. Ja korzystam od roku i niedawno odnowiłem na następny rok. Nie ma problemów póki co. Można tego używać produkcyjnie, ale licencje są przypisane do Ciebie, a nie do Twojej firmy/organizacji. Dla serwera to wszystko jedno, ale trzeba o tym pamiętać. Przejście na RHEL-a z CentOS-a również wymaga przeinstalowania systemu. Jeżeli dostawca nie ma obrazów RHEL8, trzeba to zainstalować ręcznie używając kvm, nazywanego czasami "trybem ratunkowym". Dopytaj się zresztą, czy twój hosting może to w jakiś sposób ułatwić. ISO Red Hata 8 zajmuje 9 gigabajtów i to może być problem.

 

Share this post


Link to post
Share on other sites
W dniu 17.10.2021 o 10:19, sunrise napisał:

BTW: iptables jest już od dawna przestarzałe i jeżeli używasz go, to proponuję zapoznać się z następca nftables. W Fedorze jest dostępny firewalld i z jego pomocą można również "wyklikać" odpowiednie reguły.

Zacząłem poznawać Fedorę na tanim vps i wirtualce. Używam do VPN Wireguarda, zaczynam tłumaczyć reguły, poprawiać itd. W jednym mam problem. Jest taka regułka dla iptables dotycząca tego VPNa:

iptables -t nat -A POSTROUTING -s 10.200.200.0/24 -o eth0 -j MASQUERADE

po przetłumaczeniu narzędziem iptables-translate wychodzi

nft add rule ip nat postrouting oifname "eth0" ip saddr 10.200.200.0/24 counter masquerade

Przykład tego w tym tutku można zobaczyć, dobry przykład PRZYKŁAD - punkt 6
Ja niby nie widzę błędu, przeanalizowałem składnie. U mnie całość konfiguracji zapory tak wygląda w tej chwili, w iptables działa przy nftables lipa

table ip filter {
        chain input {
                type filter hook input priority filter; policy accept;
                ct state established,related counter packets 1527 bytes 133094 accept
                tcp dport 22 counter packets 31 bytes 9569 accept
                tcp dport 51820 counter packets 0 bytes 0 accept
                iifname "lo" counter packets 0 bytes 0 accept
                counter packets 77 bytes 6528 drop
        }

        chain forward {
                type filter hook forward priority filter; policy accept;
                ct state established,related counter packets 0 bytes 0 accept
                iifname "wg0" oifname "wg0" ct state new counter packets 0 bytes 0 accept
        }
}
table ip nat {
        chain postrouting {
                type nat hook postrouting priority srcnat; policy accept;
                oif "eth0" ip saddr 10.200.200.0/24 counter packets 0 bytes 0 masquerade
        }
}

Jakby ktoś miał jakieś pomysły to prosiłbym o pomoc.

Share this post


Link to post
Share on other sites
Godzinę temu, bluzman napisał:

nft add rule ip nat postrouting oifname "eth0" ip saddr 10.200.200.0/24 counter masquerade

O ile się nie mylę to przy masquerade nie powinieneś używać adresy źródłowego bo jest on ustawiany automatycznie na podstawie adresu interfejsu wyjściowego

https://wiki.nftables.org/wiki-nftables/index.php/Performing_Network_Address_Translation_(NAT)

Share this post


Link to post
Share on other sites
2 godziny temu, sunrise napisał:

O ile się nie mylę to przy masquerade nie powinieneś używać adresy źródłowego bo jest on ustawiany automatycznie na podstawie adresu interfejsu wyjściowego

Tzn. wystarczy coś takiego?

nft add rule ip nat postrouting oifname "eth0" masquerade

Share this post


Link to post
Share on other sites
28 minut temu, bluzman napisał:

Tzn. wystarczy coś takiego?

nft add rule ip nat postrouting oifname "eth0" masquerade

Chyba raczej

nft add rule nat postrouting oifname "eth0" masquerade

 

Według https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/getting-started-with-nftables_configuring-and-managing-networking powinieneś wcześniej wywołać polecenia:

nft add table nat
nft -- add chain nat prerouting { type nat hook prerouting priority -100 \; }
nft add chain nat postrouting { type nat hook postrouting priority 100 \; }

 

Share this post


Link to post
Share on other sites

Wcześniejsze polecenia z tego linku, strony redhata już zastosowałem wcześniej. Teraz zastosowałem 2 w/w
 

nft add rulmasqueradee ip nat postrouting oifname "eth0"
lub
nft add rulmasqueradee nat postrouting oifname "eth0" 

Nic nie działa niestety.
Mam wrażenie czy jest tu 'ip' w składni polecenia czy nie to na jedno wychodzi. Może wcześniej było inaczej ale np. jak się tworzy tabelę to czy wpiszę "nft add table ip filter" czy "nft add table filter" to i tak w pliku z konfiguracją powstaje tabela opisana "table ip filter {....}". Nie tak jak w plikach domyślnych po instalacji nftables w katalogu /etc/nftables/ np. ipv4-mangle.nft, ipv4-filter.nft jest table mangle {...} itd. W każdym razie wracam do punktu wyjścia.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...