Jak zapobiec bombom widelcowym?


14

Aby zapobiec bombom widełkowym, śledziłem to http://www.linuxhowtos.org/Tips%20and%20Tricks/ulimit.htm

ulimit -aodzwierciedla nowe ustawienia, ale po uruchomieniu (jak rootw bash) :(){ :|:&};:maszyna wirtualna nadal działa na maksimum procesora + pamięci RAM i system zawiesza się.

Jak zapewnić, że użytkownicy nie zostaną wyłączeni z systemu za pomocą bomb widłowych lub uruchamiania błędnej aplikacji?

System operacyjny: RHEL 6.4


Nie mogę tego tutaj odtworzyć. Próbujesz to rootjakoś przypadkiem? Z której powłoki próbujesz? (brak miejsca po {sugeruje, zshale nie mogę go też odtworzyć).
Stéphane Chazelas,

Stephane Chazelas: 1] Pracowałem jako root, próbowałem go z normalnym użytkownikiem, działa. 2] Brakujące miejsce to literówka, używam bash.Sorry. 3] Czy to, że ulimit nie może moderować użytkownika root?
user44441,

@ stephane-chazelas 1] Pracowałem jako root, próbowałem go z normalnym użytkownikiem, działa. 2] Brakujące miejsce to literówka, używam bash.Sorry. 3] Czy to, że ulimit nie może moderować użytkownika root?
user44441,

Odpowiedzi:


8

Superużytkownik lub jakikolwiek proces z funkcjami CAP_SYS_ADMIN lub CAP_SYS_RESOURCE nie ma wpływu na to ograniczenie, nie można tego zmienić. rootzawsze może rozwidlać procesy.

Jeśli pewne oprogramowanie nie jest zaufane, i tak nie powinno działać root.


3
Jeśli nie zrobi czegoś specjalnego, właściwie nic nie powinno działać jako root. root to konto, którego używasz, gdy masz dość próbowania dowiedzieć się, jakie przywileje / prawa potrzebujesz, aby je zorientować lub jakiejś podstawowej usługi systemowej.
Bratchley,

11

Aby ta zmiana była wszechobecna, musisz dodać te ograniczenia do całego środowiska. Zmiany za pomocą ulimitpolecenia dotyczą tylko bieżącego środowiska.

UWAGA: Nie będzie to miało wpływu na użytkownika root!

Przykład

Edytuj ten plik: vi /etc/security/limits.confi dodaj do pliku wpisy ograniczające liczbę procesów ( nproc), które może mieć określony użytkownik lub grupa użytkowników.

vivek hard nproc 300
@student hard nproc 50
@faculty soft nproc 100
@pusers hard nproc 200

UWAGA: W tym pliku jest więcej przykładów. Ostrożnie korzystaj z „all” (alias. *), To też ograniczy konta systemowe.

Bibliografia


Chociaż „wszystko” ograniczy konta systemowe, większość usług obsługiwanych przez te konta systemowe nie przechodzi pam_limits.
jordanm

Czy to dlatego, że ulimit nie może moderować użytkownika root?
user44441,

Podobnie jak ogólny pomysł na dodanie więcej do postu, możesz chcieć dodać coś o pam_cgroup do postu, ponieważ platforma PO obsługuje go i pam_limitsostatecznie zostanie zastąpiona tym, gdy grupy zostaną szersze.
Bratchley,

Ponadto, ponieważ wydaje się, że OP bawi się zasadami polityki wykorzystania zasobów, cgroupsdałoby im lepsze pokrętła do wykorzystania sieci i procesora.
Bratchley,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.