{"id":20292,"date":"2026-08-03T15:05:08","date_gmt":"2026-08-03T13:05:08","guid":{"rendered":"https:\/\/webhosting.de\/filesystem-mount-options-linux-serverhaertung-securefs\/"},"modified":"2026-08-03T15:05:08","modified_gmt":"2026-08-03T13:05:08","slug":"opcje-montowania-systemu-plikow-wzmocnienie-bezpieczenstwa-serwera-linux-securefs","status":"publish","type":"post","link":"https:\/\/webhosting.de\/pl\/filesystem-mount-options-linux-serverhaertung-securefs\/","title":{"rendered":"Opcje montowania systemu plik\u00f3w w celu wzmocnienia zabezpiecze\u0144 serwera: prawid\u0142owa konfiguracja zabezpiecze\u0144 serwera w systemie Linux"},"content":{"rendered":"<p>Ukierunkowane <strong>Montowanie systemu plik\u00f3w<\/strong>-Opcje te wzmacniaj\u0105 zabezpieczenia mojego serwera Linux na poziomie systemu plik\u00f3w i blokuj\u0105 typowe ataki wykorzystuj\u0105ce \u015bcie\u017cki tymczasowe, pliki binarne z uprawnieniami setuid oraz pliki urz\u0105dze\u0144. Ustawiam jasne parametry montowania, takie jak <strong>noexec<\/strong>, nosuid i nodev, okre\u015blaj\u0105c, co jest dozwolone na poszczeg\u00f3lnych partycjach, i w ten spos\u00f3b znacznie zmniejszam ryzyko eskalacji uprawnie\u0144.<\/p>\n\n<h2>Punkty centralne<\/h2>\n<p>Poni\u017csze zagadnienia stanowi\u0105 bezpo\u015brednie wprowadzenie do bezpiecznej konfiguracji opcji montowania i wskazuj\u0105 konkretne narz\u0119dzia s\u0142u\u017c\u0105ce do <strong>Zabezpieczanie serwer\u00f3w<\/strong> i dzia\u0142anie.<\/p>\n<ul>\n  <li><strong>noexec\/nosuid\/nodev<\/strong>: Podstawowe opcje zabezpieczaj\u0105ce przed wykonaniem kodu, nadu\u017cyciem uprawnie\u0144 SUID\/SGID oraz plikami urz\u0105dze\u0144.<\/li>\n  <li><strong>\u015acie\u017cki tymczasowe<\/strong>: Nale\u017cy \u015bci\u015ble ograniczy\u0107 rozmiar katalog\u00f3w \/tmp, \/var\/tmp i \/dev\/shm.<\/li>\n  <li><strong>\/etc\/fstab<\/strong>: Dok\u0142adne testowanie i monitorowanie wpis\u00f3w trwa\u0142ych.<\/li>\n  <li><strong>Opcje wydajno\u015bci<\/strong>: celowe wykorzystanie opcji ro, noatime, sync oraz limit\u00f3w.<\/li>\n  <li><strong>Uzupe\u0142nienia<\/strong>: Po\u0142\u0105czenie ACL, umask, chattr i szyfrowania.<\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/linux-server-sicherheit-4123.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Dlaczego opcje monta\u017cu znacznie przyczyniaj\u0105 si\u0119 do wzmocnienia zabezpiecze\u0144 serwer\u00f3w<\/h2>\n<p>Za pomoc\u0105 odpowiednich opcji kontroluj\u0119, co mo\u017ce si\u0119 dzia\u0107 na poszczeg\u00f3lnych partycjach, i w ten spos\u00f3b eliminuj\u0119 niepotrzebne <strong>Powierzchnie ataku<\/strong>. Wezwanie <code>mount -o rw,noexec,nosuid,nodev<\/code> przekszta\u0142ca standardowy punkt montowania w zabezpieczony punkt montowania, kt\u00f3ry zapobiega wykonywaniu kodu i wykorzystaniu luk typu setuid. Szczeg\u00f3lnie w przypadku katalog\u00f3w z prawami do zapisu dla wielu u\u017cytkownik\u00f3w chroni mnie to przed typowymi \u0142a\u0144cuchami exploit\u00f3w z \/tmp. Planuj\u0119 dla ka\u017cdej partycji, kt\u00f3re dzia\u0142ania s\u0105 naprawd\u0119 niezb\u0119dne, a wszystko inne konsekwentnie ograniczam. W ten spos\u00f3b przy niewielkim wysi\u0142ku osi\u0105gam zauwa\u017calnie wi\u0119ksze korzy\u015bci <strong>Bezpiecze\u0144stwo<\/strong> w \u017cyciu codziennym.<\/p>\n\n<h2>noexec, nosuid, nodev: trzy pot\u0119gi w codziennym u\u017cytkowaniu<\/h2>\n<p>Ustawi\u0142em <strong>noexec<\/strong> na \u015bcie\u017ckach tymczasowych, aby pliki binarne tam zapisane nie uruchamia\u0142y si\u0119 bezpo\u015brednio. Za pomoc\u0105 <strong>nosuid<\/strong> wy\u0142\u0105czam \u015bcie\u017cki eskalacji uprawnie\u0144 SUID\/SGID, zw\u0142aszcza w zewn\u0119trznych i sieciowych systemach plik\u00f3w. Opcja <strong>nodev<\/strong> uniemo\u017cliwia tworzenie i nadu\u017cywanie niebezpiecznych plik\u00f3w urz\u0105dze\u0144. Te trzy prze\u0142\u0105czniki \u0142\u0105cznie blokuj\u0105 wykonywanie kodu, rozszerzanie uprawnie\u0144 oraz dost\u0119p na niskim poziomie. Takie po\u0142\u0105czenie znacznie zmniejsza ryzyko eskalacji uprawnie\u0144 i wzmacnia moje <strong>Zabezpieczanie serwer\u00f3w<\/strong> mierzalne.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/ServerSicherheitLinux4578.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Typowe scenariusze zastosowa\u0144 i zalecane opcje<\/h2>\n<p>W przypadku katalog\u00f3w tymczasowych, takich jak \/tmp, \/var\/tmp i \/dev\/shm, zasadniczo ustawiam <strong>noexec<\/strong>, nosuid i nodev. W katalogach \/var i \/var\/log rezygnuj\u0119 z plik\u00f3w urz\u0105dze\u0144 oraz uprawnie\u0144 SUID\/SGID, poniewa\u017c \u017cadne z nich nie ma tam uzasadnionego zastosowania. W katalogu \/home zezwalam na wykonywanie plik\u00f3w w razie potrzeby, ale blokuj\u0119 uprawnienia SUID\/SGID oraz pliki urz\u0105dze\u0144. Dla katalogu \/boot ustawiam opcje nosuid, nodev, noexec, aby tylko program rozruchowy mia\u0142 uprawnienia do odczytu, a \u017cadne programy nie by\u0142y tam uruchamiane. To wyra\u017ane rozdzielenie dla poszczeg\u00f3lnych partycji zwi\u0119ksza <strong>Odporno\u015b\u0107<\/strong> mojego hosta i u\u0142atwia rozwi\u0105zywanie problem\u00f3w.<\/p>\n<table>\n  <thead>\n    <tr>\n      <th>Punkt montowania<\/th>\n      <th>Zalecane opcje<\/th>\n      <th>Kr\u00f3tki opis celu<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>\/tmp, \/var\/tmp, \/dev\/shm<\/td>\n      <td>noexec, nosuid, nodev<\/td>\n      <td>Brak uprawnie\u0144 do wykonywania, brak uprawnie\u0144 SUID\/SGID, brak plik\u00f3w urz\u0105dze\u0144<\/td>\n    <\/tr>\n    <tr>\n      <td>\/var, \/var\/log<\/td>\n      <td>nosuid,nodev (opcjonalnie noexec)<\/td>\n      <td>Dzienniki i pliki buforowe bez uprawnie\u0144 SUID\/SGID i bez plik\u00f3w urz\u0105dze\u0144<\/td>\n    <\/tr>\n    <tr>\n      <td>\/home<\/td>\n      <td>nosuid,nodev (opcjonalnie noexec)<\/td>\n      <td>Pliki u\u017cytkownika bez uprawnie\u0144 SUID\/SGID i bez plik\u00f3w urz\u0105dze\u0144<\/td>\n    <\/tr>\n    <tr>\n      <td>\/boot<\/td>\n      <td>nosuid, nodev, noexec<\/td>\n      <td>Dost\u0119p tylko do odczytu dla plik\u00f3w rozruchowych<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2>Wykorzystanie specjalnych system\u00f3w plik\u00f3w i zaawansowanych opcji<\/h2>\n<p>Bior\u0119 pod uwag\u0119 specyfik\u0119 mojego systemu plik\u00f3w i dostosowuj\u0119 do niej opcje. W przypadku systemu plik\u00f3w ext4 nale\u017cy ustawi\u0107 <code>data=ordered<\/code> (standard) oraz <code>commit=<\/code> dobr\u0105 r\u00f3wnowag\u0119 mi\u0119dzy sp\u00f3jno\u015bci\u0105 danych a cz\u0119stotliwo\u015bci\u0105 zapisu. W przypadku szczeg\u00f3lnie krytycznych partycji stosuj\u0119 <code>b\u0142\u0119dy=ponowne zamontowanie w trybie tylko do odczytu<\/code>, aby w razie wyst\u0105pienia b\u0142\u0119du system nie kontynuowa\u0142 pracy bez zauwa\u017cenia. W przypadku systemu plik\u00f3w XFS sprawdzam, czy <code>inode64<\/code> oraz warianty kwot (<code>usrquota<\/code>, <code>grpquota<\/code>, <code>prjquota<\/code>), kt\u00f3re pozwalaj\u0105 na uporz\u0105dkowane zarz\u0105dzanie rozbudowanymi drzewami plik\u00f3w. Opcje takie jak <code>user_xattr<\/code> oraz <code>acl<\/code> Zezwalam na to w konkretnych przypadkach, gdy aplikacje wymagaj\u0105 atrybut\u00f3w rozszerzonych lub bardziej szczeg\u00f3\u0142owych uprawnie\u0144 \u2013 w pozosta\u0142ych przypadkach ograniczam powierzchni\u0119 ataku i trzymam si\u0119 konserwatywnych ustawie\u0144 domy\u015blnych.<\/p>\n<p>W przypadku dysk\u00f3w SSD i wolumin\u00f3w w chmurze \u015bwiadomie wybieram mi\u0119dzy <code>odrzuci\u0107<\/code> oraz regularnych cykli TRIM za pomoc\u0105 timera. TRIM online (<code>odrzuci\u0107<\/code>) natychmiast zwalnia bloki pami\u0119ci, ale wi\u0105\u017ce si\u0119 to z obci\u0105\u017ceniem operacji wej\u015bcia\/wyj\u015bcia. W wielu konfiguracjach okresowe <em>fstrim<\/em> bardziej wydajne i przejrzyste. Strategi\u0119 znacznik\u00f3w czasu dobieram w zale\u017cno\u015bci od obci\u0105\u017cenia: <code>relatime<\/code> chroni p\u0142yt\u0119 i stanowi obecnie dobry kompromis, <code>noatime<\/code> ogranicza w maksymalnym stopniu operacje zapisu, ale mo\u017ce powodowa\u0107 problemy w narz\u0119dziach, kt\u00f3re opieraj\u0105 si\u0119 na dok\u0142adnych czasach dost\u0119pu. <code>czas leniuchowania<\/code> z kolei buforuje aktualizacje atrybut\u00f3w, zmniejszaj\u0105c w ten spos\u00f3b obci\u0105\u017cenie operacjami zapisu bez utraty semantyki \u2013 idealne rozwi\u0105zanie, gdy chc\u0119 ograniczy\u0107 operacje zapisu bez rezygnacji z metadanych.<\/p>\n<p>Unikam ryzykownych opcji tuningu, je\u015bli ich efekt nie jest ca\u0142kowicie jasny: flagi takie jak <code>nobarrier<\/code>\/<code>writeback<\/code> mog\u0105 sprzyja\u0107 utracie danych w przypadku awarii zasilania. Podobnie oceniam funkcje takie jak DAX tylko wtedy, gdy sprz\u0119t, j\u0105dro i wersja systemu plik\u00f3w s\u0105 do tego dostosowane. Zasada pozostaje ta sama: najpierw przetestowa\u0107 w izolacji, potem wdro\u017cy\u0107 w spos\u00f3b powtarzalny \u2013 i zawsze z jasnym planem przywr\u00f3cenia stanu poprzedniego.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/linux-server-security-config-4005.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Znalezienie odpowiedniej r\u00f3wnowagi mi\u0119dzy wydajno\u015bci\u0105 a bezpiecze\u0144stwem<\/h2>\n<p>U\u017cywam <strong>ro<\/strong> tam, gdzie tre\u015bci rzadko si\u0119 zmieniaj\u0105, aby nikt nie zapisa\u0142 si\u0119 niezauwa\u017cenie. Z <strong>noatime<\/strong> lub relatime pozwala mi unikn\u0105\u0107 niepotrzebnych operacji zapisu, nie rezygnuj\u0105c przy tym na \u015blepo z wa\u017cnych metadanych. Opcja <strong>synchronizacja<\/strong> natychmiastowo zapisuje operacje zapisu, co wprawdzie zajmuje troch\u0119 czasu, ale utrudnia utrat\u0119 danych. Limity przestrzeni dyskowej ustawione za pomoc\u0105 usrquota\/grpquota ograniczaj\u0105 programy zu\u017cywaj\u0105ce du\u017co miejsca i zapobiegaj\u0105 awariom spowodowanym zape\u0142nieniem partycji. W przypadku obci\u0105\u017ce\u0144 z systemami plik\u00f3w ext4 lub XFS testuj\u0119 ka\u017cd\u0105 opcj\u0119 w kontrolowany spos\u00f3b, aby sprawdzi\u0107 dzia\u0142anie i <strong>Bezpiecze\u0144stwo<\/strong> pasowa\u0107 do danego zastosowania.<\/p>\n\n<h2>\/etc\/fstab: trwa\u0142a i bezpieczna konfiguracja<\/h2>\n<p>Ostateczne opcje zapisuj\u0119 w <strong>\/etc\/fstab<\/strong>, aby przetrwa\u0142y ka\u017cdy rozruch systemu. Przed ponownym uruchomieniem sprawdzam wpisy za pomoc\u0105 <code>mount -a<\/code> i od\u015bwie\u017c us\u0142ugi za pomoc\u0105 <code>systemctl daemon-reload<\/code>, aby unikn\u0105\u0107 niespodzianek. W przypadku partycji root uwa\u017cam, \u017ce opcje powinny by\u0107 minimalne, a surowe ograniczenia przenosz\u0119 na dedykowane punkty montowania. Przyk\u0142adowe wiersze, takie jak <code>UUID=tmp-uuid \/tmp ext4 defaults,nosuid,nodev,noexec 0 2<\/code> dokumentuj\u0119 to dok\u0142adnie, aby p\u00f3\u017aniejsze kontrole przebiega\u0142y sprawnie. Dzi\u0119ki <code>findmnt --real -o TARGET,OPTIONS<\/code> por\u00f3wnuj\u0119 planowan\u0105 konfiguracj\u0119 z faktycznie dzia\u0142aj\u0105c\u0105 <strong>Opcje<\/strong>.<\/p>\n\n<h2>Integracja z systemd: automatyczne montowanie, niezawodno\u015b\u0107 rozruchu i zale\u017cno\u015bci<\/h2>\n<p>Korzystam z rozszerze\u0144 fstab w systemds, aby poprawi\u0107 dost\u0119pno\u015b\u0107 i skr\u00f3ci\u0107 czas uruchamiania. Dzi\u0119ki <code>x-systemd.automount<\/code> podczas pierwszego dost\u0119pu do\u0142\u0105czam rzadko u\u017cywane \u015bcie\u017cki, co pozwala ograniczy\u0107 zawieszanie si\u0119 systemu podczas uruchamiania. <code>nofail<\/code> zapewnia, \u017ce host nadal si\u0119 uruchamia pomimo braku dodatkowych punkt\u00f3w montowania, podczas gdy ja za pomoc\u0105 <code>x-systemd.device-timeout=<\/code> oraz <code>x-systemd.mount-timeout=<\/code> Ogranicz liczb\u0119 zawieszek. W przypadku us\u0142ug definiuj\u0119 zale\u017cno\u015bci za pomoc\u0105 <code>x-systemd.requires-mounts-for=\/\u015bcie\u017cka<\/code>, aby aplikacje uruchamia\u0142y si\u0119 dopiero wtedy, gdy pami\u0119\u0107 masowa jest rzeczywi\u015bcie gotowa.<\/p>\n<p>W przypadku niestabilnych lub wolno dzia\u0142aj\u0105cych serwer\u00f3w dodaj\u0119 dodatkowo <code>x-systemd.idle-timeout=<\/code> ustawiam automatyczne montowanie tak, aby po okresie bezczynno\u015bci by\u0142y one poprawnie odmontowywane. W ten spos\u00f3b ograniczam liczb\u0119 otwartych deskryptor\u00f3w, zapobiegam powstawaniu \u201ezombie-mount\u00f3w\u201d i zapewniam przewidywalne zachowanie podczas dzia\u0142ania \u2013 co ma kluczowe znaczenie w du\u017cych \u015brodowiskach z wieloma jednostkami i miejscami docelowymi pami\u0119ci masowej.<\/p>\n\n<h2>Sprawdzanie i monitorowanie opcji montowania podczas pracy<\/h2>\n<p>Regularnie sprawdzam za pomoc\u0105 <strong>findmnt<\/strong>, czy wszystkie partycje zosta\u0142y zamontowane zgodnie z planem. Wszelkie odchylenia dostrzegam natychmiast i koryguj\u0119 je poprzez celowe ponowne zamontowanie, na przyk\u0142ad <code>mount -o remount,noexec \/tmp<\/code>. W przypadku host\u00f3w, u kt\u00f3rych czas ma kluczowe znaczenie, konfiguruj\u0119 powiadomienia na wypadek, gdyby nagle znikn\u0119\u0142y pewne opcje lub pojawi\u0142y si\u0119 nowe punkty montowania. Izolacja kontekstowa poprzez <a href=\"https:\/\/webhosting.de\/pl\/kontekst-serwera-izolacja-przestrzenie-nazw-cgroups-hosting-bezpieczenstwo\/\">Przestrzenie nazw i cgroups<\/a> skutecznie uzupe\u0142nia zabezpieczenia systemu plik\u00f3w. Dzi\u0119ki temu ograniczam mo\u017cliwo\u015bci ataku, zmniejszam liczb\u0119 b\u0142\u0119d\u00f3w konfiguracyjnych i zwi\u0119kszam <strong>Przejrzysto\u015b\u0107<\/strong> w \u017cyciu codziennym.<\/p>\n\n<h2>Zabezpieczanie pseudoplikowych system\u00f3w plik\u00f3w: \/proc, \/sys, debugfs i devpts<\/h2>\n<p>Traktuj\u0119 pseudoplikowe systemy plik\u00f3w z tak\u0105 sam\u0105 staranno\u015bci\u0105 jak no\u015bniki danych. W przypadku <code>\/proc<\/code> umieszczam obok <code>nosuid, nodev, noexec<\/code> przede wszystkim <code>hidepid=2<\/code>, aby ukry\u0107 szczeg\u00f3\u0142y proces\u00f3w innych u\u017cytkownik\u00f3w. Je\u015bli administratorzy potrzebuj\u0105 wgl\u0105du, korzystam z dedykowanej grupy (<code>gid=<\/code>) i <code>hidepid=1<\/code> lub <code>2<\/code>, w zale\u017cno\u015bci od wymaga\u0144 dotycz\u0105cych widoczno\u015bci. <code>\/sys<\/code> monta\u017c przeprowadzam \u015bci\u015ble zgodnie z <code>nodev<\/code> i bez zb\u0119dnych uprawnie\u0144 do zapisu; <code>debugfs<\/code> Zasadniczo pozostaje niepod\u0142\u0105czony, chyba \u017ce potrzebuj\u0119 go tymczasowo do cel\u00f3w diagnostycznych \u2013 wtedy wy\u0142\u0105cznie na kr\u00f3tki czas i na systemach testowych.<\/p>\n<p>Dla <code>devpts<\/code> sprawdzam tryb i uprawnienia grupowe, aby pseudoterminale by\u0142y odpowiednio odizolowane (np. <code>mode=0620,gid=tty<\/code>). Te szczeg\u00f3\u0142y zapobiegaj\u0105 niepo\u017c\u0105danemu dost\u0119powi mi\u0119dzy sesjami i zmniejszaj\u0105 ryzyko wycieku poufnych informacji. Zw\u0142aszcza w \u015brodowiskach wielou\u017cytkownikowych lub hostingowych takie dopracowanie stanowi wa\u017cny element <strong>Zabezpieczanie serwer\u00f3w<\/strong>.<\/p>\n\n<h2>Rozmiary i limity katalogu \/tmp oraz \/dev\/shm<\/h2>\n<p>W przypadku system\u00f3w o du\u017cej liczbie operacji wej\u015bcia\/wyj\u015bcia lub kompilacji rozwa\u017cam <code>\/tmp<\/code> oraz <code>\/dev\/shm<\/code> jak <code>tmpfs<\/code>, precyzyjnie ograniczone i mocno utwardzone: <code>tmpfs \/tmp tmpfs rw,nosuid,nodev,noexec,mode=1777,size=2G 0 0<\/code>. W ten spos\u00f3b zapobiegam zape\u0142nianiu dysk\u00f3w przez pliki tymczasowe i przyspieszam dost\u0119p do pami\u0119ci. Obserwuj\u0119 jednak zu\u017cycie pami\u0119ci RAM i planuj\u0119 rezerwy, aby niedob\u00f3r pami\u0119ci nie wp\u0142ywa\u0142 negatywnie na inne us\u0142ugi. Je\u015bli poszczeg\u00f3lne narz\u0119dzia wymagaj\u0105 tymczasowych \u015bcie\u017cek wykonywalnych, oddzielam je za pomoc\u0105 dedykowanych katalog\u00f3w roboczych i montowania typu bind, zamiast \u0142agodzi\u0107 globalne zasady bezpiecze\u0144stwa.<\/p>\n<p>Pomi\u0119dzy <code>\/tmp<\/code> oraz <code>\/var\/tmp<\/code> \u015bwiadomie rozr\u00f3\u017cniam: <code>\/tmp<\/code> mo\u017ce charakteryzowa\u0107 si\u0119 zmienno\u015bci\u0105, <code>\/var\/tmp<\/code> powinno przetrwa\u0107 restart. W zwi\u0105zku z tym wybieram <code>tmpfs<\/code> raczej dla <code>\/tmp<\/code> i pozostaw <code>\/var\/tmp<\/code> na dysku \u2013 r\u00f3wnie\u017c z <code>noexec, nosuid, nodev<\/code>. W przypadku du\u017cych obci\u0105\u017ce\u0144 pami\u0119ci wsp\u00f3\u0142dzielonej dobieram wymiary <code>\/dev\/shm<\/code> odpowiedni (<code>size=<\/code>) oraz konsekwentnie stosuj\u0119 zasady z 1777 r., aby zapewni\u0107 oddzielenie u\u017cytkownik\u00f3w.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/Server-Konfiguration1234.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Dodatkowe \u015brodki zabezpieczaj\u0105ce na poziomie systemu plik\u00f3w<\/h2>\n<p>Zmniejszam <strong>SUID\/SGID<\/strong>-Ograniczam rozmiar plik\u00f3w binarnych do minimum i ustawiam umask na konserwatywn\u0105 warto\u015b\u0107, na przyk\u0142ad 027 lub 077, aby nowe pliki by\u0142y od pocz\u0105tku chronione. Listy ACL aktywuj\u0119 wybi\u00f3rczo, gdy aplikacje wymagaj\u0105 bardziej precyzyjnych uprawnie\u0144, a regu\u0142y dokumentuj\u0119 za pomoc\u0105 <code>getfacl<\/code> czysto. Szczeg\u00f3lnie wra\u017cliwe konfiguracje zabezpieczam za pomoc\u0105 <code>chattr +i<\/code>, aby zapobiec zmianom. Limity pojemno\u015bci wcze\u015bnie powstrzymuj\u0105 nadmierne zu\u017cycie pami\u0119ci, zanim zacznie to spowalnia\u0107 dzia\u0142anie us\u0142ug. Je\u015bli chodzi o siln\u0105 izolacj\u0119 proces\u00f3w, odsy\u0142am dodatkowo do <a href=\"https:\/\/webhosting.de\/pl\/proces-izolacja-hosting-chroot-cagefs-kontener-wiezienia-bezpieczenstwo-porownanie\/\">Por\u00f3wnanie izolacji procesowej<\/a>, aby ograniczy\u0107 ryzyko wykraczaj\u0105ce poza system plik\u00f3w.<\/p>\n\n<h2>\u0141\u0105czne stosowanie koncepcji izolacyjnych<\/h2>\n<p>Uzupe\u0142niam zabezpieczenia systemu plik\u00f3w poprzez <strong>Izolacja systemu plik\u00f3w<\/strong> na poziomie u\u017cytkownika, aby aplikacje nie mia\u0142y dost\u0119pu poza swoje granice. W konfiguracjach hostingowych izolowane \u015brodowisko si\u0119 op\u0142aca, poniewa\u017c w ten spos\u00f3b skutki niepo\u017c\u0105danych zdarze\u0144 s\u0105 mniejsze. Warto tu zwr\u00f3ci\u0107 uwag\u0119 na <a href=\"https:\/\/webhosting.de\/pl\/cloudlinux-cagefs-izolacja-systemu-plikow-bezpieczenstwo-hostingshield\/\">Izolacja systemu plik\u00f3w CageFS<\/a>, kt\u00f3ra \u015bci\u015ble oddziela \u015brodowiska u\u017cytkownik\u00f3w. R\u00f3wnie\u017c kontenery i jaili przynosz\u0105 korzy\u015bci, je\u015bli po\u0142\u0105cz\u0119 je z restrykcyjnymi opcjami montowania. Takie po\u0142\u0105czenie wype\u0142nia luki, kt\u00f3re sama <strong>Opcje monta\u017cu<\/strong> nie pokry\u0107 samodzielnie.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/Linux_Server_Haertung_5203.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Cz\u0119ste przeszkody i \u015brodki zaradcze<\/h2>\n<p>I test <strong>noexec<\/strong> dok\u0142adnie, poniewa\u017c niekt\u00f3re narz\u0119dzia pr\u00f3buj\u0105 tymczasowo uruchamia\u0107 pliki binarne w katalogu \/tmp. W takich przypadkach korzystam z dedykowanych katalog\u00f3w roboczych, w kt\u00f3rych dozwolone jest uruchamianie program\u00f3w. W przypadku skrypt\u00f3w pow\u0142oki u\u017cywam jawnych wywo\u0142a\u0144 interpretera, takich jak <code>\/bin\/bash script.sh<\/code>, aby noexec nie stanowi\u0142o przeszkody. Je\u015bli poszczeg\u00f3lne podkatalogi wymagaj\u0105 wyj\u0105tk\u00f3w, korzystam z montowania typu bind i konkretnych opcji. W ten spos\u00f3b zachowuj\u0119 podstawowe zabezpieczenia i zezwalam tylko na to, czego aplikacja naprawd\u0119 <strong>wymagany<\/strong>.<\/p>\n\n<h2>Powi\u0105zania dysk\u00f3w, podkatalogi i propagacja montowania<\/h2>\n<p>U\u017cywam <code>mount --bind<\/code>, aby udost\u0119pnia\u0107 w \u015brodowiskach docelowych tylko te poddrzewa, kt\u00f3re s\u0105 potrzebne, ograniczaj\u0105c przy tym uprawnienia. Za pomoc\u0105 <code>mount -o bind,ro<\/code> ustawiam je jako tylko do odczytu, a nast\u0119pnie za pomoc\u0105 <code>mount -o remount,nosuid,nodev,noexec,bind<\/code> jeszcze bardziej zaw\u0119\u017cam granice bezpiecze\u0144stwa. W przypadku ca\u0142ych poddrzew stosuj\u0119 <code>--rbind<\/code>, aby zabra\u0107 ze sob\u0105 wszystkie wierzchowce podrz\u0119dne. Wa\u017cna jest zasada propagacji: przy u\u017cyciu <code>mount --make-private<\/code> Oddzielam operacje montowania mi\u0119dzy hostem a \u015brodowiskami chroot i kontenerami, aby zapobiec \u201eprzenikaniu\u201c niepo\u017c\u0105danych montowa\u0144.<\/p>\n<p>Tam, gdzie aktywna jest orkiestracja kontener\u00f3w, domy\u015blnie zachowuj\u0119 \u015bcie\u017cki centralne <em>prywatny<\/em> i otwieraj celowo tylko to, co jest potrzebne do obs\u0142ugi obci\u0105\u017ce\u0144. W fazach debugowania mo\u017cna <em>udost\u0119pniony<\/em> mo\u017ce si\u0119 przyda\u0107, w trybie normalnym jest <em>prywatny\/niewolnik<\/em> to bezpieczny wyb\u00f3r. Dzi\u0119ki temu topologie montowania pozostaj\u0105 przewidywalne, a ja zapobiegam przypadkowemu pojawianiu si\u0119 \u015bcie\u017cek uprzywilejowanych w \u015brodowiskach go\u015bci.<\/p>\n\n<h2>Utwardzanie no\u015bnik\u00f3w zdalnych i wymiennych<\/h2>\n<p>Dyski zewn\u0119trzne i udost\u0119pnione zasoby sieciowe montuj\u0119 zasadniczo za pomoc\u0105 <code>nosuid,nodev<\/code> i zazwyczaj r\u00f3wnie\u017c <code>noexec<\/code>. W przypadku system\u00f3w plik\u00f3w VFAT\/NTFS dostosowuj\u0119 w\u0142a\u015bcicieli i maski (np. <code>uid=1000,gid=1000,umask=027,fmask=137,dmask=027<\/code>), aby bity wykonywalno\u015bci nie sta\u0142y si\u0119 furtk\u0105 dla atak\u00f3w. Na no\u015bnikach wymiennych nie ma uzasadnionej potrzeby stosowania uprawnie\u0144 SUID\/SGID ani plik\u00f3w urz\u0105dze\u0144 \u2013 konsekwentnie wy\u0142\u0105czam te funkcje. Je\u015bli chc\u0119 tylko odczytywa\u0107, dodatkowo stosuj\u0119 <code>ro<\/code> jest stosowane. Dzi\u0119ki temu z\u0142o\u015bliwy kod pozostaje bezskuteczny i nie mo\u017ce zosta\u0107 pobrany przy okazji.<\/p>\n<p>W przypadku protoko\u0142\u00f3w NFS\/SMB r\u00f3wnie\u017c \u015bci\u015ble ograniczam uprawnienia. <code>nosuid, nodev, noexec<\/code> s\u0105 ustawione domy\u015blnie, a limity czasu i powt\u00f3rzenia ustalam \u015bwiadomie (<code>hard\/soft,timeo=<\/code>), aby awarie nie blokowa\u0142y ca\u0142ego systemu. W przypadku danych wra\u017cliwych zapewniam integralno\u015b\u0107 i szyfrowanie na poziomie protoko\u0142u oraz dbam o to, by po stronie klienta i serwera obowi\u0105zywa\u0142y sp\u00f3jne zasady. Im mniej strona przeciwna ma uprawnie\u0144 do podejmowania decyzji dotycz\u0105cych lokalnego hosta, tym bardziej stabilne i przewidywalne pozostaje dzia\u0142anie systemu.<\/p>\n\n<h2>Krok po kroku: jak bezpiecznie wdro\u017cy\u0107 przyk\u0142adow\u0105 konfiguracj\u0119<\/h2>\n<p>Zaczn\u0119 od sporz\u0105dzenia spisu za pomoc\u0105 <code>findmnt --real -o TARGET,OPTIONS<\/code> i dokumentuj\u0119 wszystkie aktywne <strong>Wierzchowce<\/strong>. Potem si\u0119 dostosuj\u0119 <code>\/etc\/fstab<\/code> na przyk\u0142ad dodaj\u0105c wiersze dla \/tmp i \/dev\/shm z opcjami noexec, nosuid, nodev. Nast\u0119pnie sprawdzam to za pomoc\u0105 <code>mount -a<\/code> i ponownie sprawdzam efekt za pomoc\u0105 polecenia `findmnt`. Je\u015bli wszystko dzia\u0142a poprawnie, ustawiam limity w miejscach, gdzie rosn\u0105 konta u\u017cytkownik\u00f3w, i w razie potrzeby w\u0142\u0105czam opcje `relatime` lub `noatime`. Na koniec zapisuj\u0119 zmiany w moim dzienniku zmian i planuj\u0119 regularne <strong>Elementy steruj\u0105ce<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/08\/serverconfig-raum-8394.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Kontrola dryftu, audyty i bezpieczne przywracanie stanu poprzedniego<\/h2>\n<p>Traktuj\u0119 moje zasady dotycz\u0105ce montowania jako \u201estan docelowy\u201c i regularnie sprawdzam, czy nie wyst\u0119puj\u0105 odchylenia. Opr\u00f3cz <code>findmnt<\/code> oraz <code>\/proc\/mounts<\/code> W skryptach Health stosuj\u0119 proste kontrole, kt\u00f3re uruchamiaj\u0105 alarm, gdy \u015bcie\u017cki krytyczne nie zawieraj\u0105 <code>noexec<\/code>, <code>nosuid<\/code> lub <code>nodev<\/code> dzia\u0142a\u0107. Zmiany w <code>\/etc\/fstab<\/code> Dokumentuj\u0119 jednostki systemd z podaniem wersji; przed wprowadzeniem ryzykownych zmian tworz\u0119 migawki (np. za pomoc\u0105 LVM\/btrfs), aby w razie potrzeby m\u00f3c szybko przywr\u00f3ci\u0107 poprzedni stan. W przypadku szczeg\u00f3lnie wra\u017cliwych system\u00f3w planuj\u0119 okna serwisowe i wcze\u015bniej testuj\u0119 ponowne montowanie partycji na identycznych serwerach testowych.<\/p>\n<p>Zawsze pod r\u0119k\u0105 znajduje si\u0119 praktyczne rozwi\u0105zanie: Dzi\u0119ki <code>mount -o remount,defaults<\/code> lub w przypadku ukierunkowanych kontrflag\u00f3w tymczasowo cofam restrykcyjne opcje, gdy us\u0142uga niespodziewanie ulegnie awarii. Nast\u0119pnie identyfikuj\u0119 przyczyn\u0119, dostosowuj\u0119 wyj\u0105tki dotycz\u0105ce montowania plik\u00f3w w systemie Bind i w kontrolowany spos\u00f3b ponownie wprowadzam zaostrzone zabezpieczenia. W ten spos\u00f3b udaje si\u0119 zachowa\u0107 r\u00f3wnowag\u0119 mi\u0119dzy rygorystycznymi zasadami a wysok\u0105 dost\u0119pno\u015bci\u0105 \u2013 nawet pod presj\u0105 czasu.<\/p>\n\n<h2>Podsumowanie: Sprytne wykorzystanie opcji montowania<\/h2>\n<p>Skutecznie zabezpieczam serwery z systemem Linux poprzez <strong>noexec<\/strong>, nosuid i nodev umieszczam celowo na odpowiednich partycjach. \u015acie\u017cki tymczasowe izoluj\u0119 \u015bci\u015ble, a produkcyjne obszary danych otrzymuj\u0105 tylko te uprawnienia, kt\u00f3rych naprawd\u0119 potrzebuj\u0105. Opcje wydajno\u015bciowe, takie jak relatime, ro i limity, ustawiam odpowiednio do sytuacji, aby zapewni\u0107 zar\u00f3wno p\u0142ynne dzia\u0142anie, jak i bezpiecze\u0144stwo. Trwa\u0142e wpisy w pliku \/etc\/fstab oraz regularne kontrole za pomoc\u0105 findmnt zapewniaj\u0105 niezawodno\u015b\u0107 konfiguracji. W po\u0142\u0105czeniu z listami kontroli dost\u0119pu (ACL), umask, chattr i dobrymi technikami izolacji system pozostaje <strong>Powierzchnia ataku<\/strong> niewielkie, a nak\u0142ady administracyjne \u0142atwe do oszacowania.<\/p>","protected":false},"excerpt":{"rendered":"<p>W tym artykule pokazano, jak dzi\u0119ki bezpiecznym opcjom montowania system\u00f3w plik\u00f3w zoptymalizowa\u0107 zabezpieczenia serwera Linux oraz prawid\u0142owo stosowa\u0107 opcje noexec, nosuid i nodev.<\/p>","protected":false},"author":1,"featured_media":20285,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[794],"tags":[],"class_list":["post-20292","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sicherheit-computer_und_internet"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"148","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":"1","_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"Filesystem Mount","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"20285","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/posts\/20292","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/comments?post=20292"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/posts\/20292\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/media\/20285"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/media?parent=20292"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/categories?post=20292"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/pl\/wp-json\/wp\/v2\/tags?post=20292"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}