[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Tips / Hjälp med server.



Markus Viitamäki wrote:
> Jag är i behov av lite råd och föresalg, har nämligen ett litet problem.
> Jag har fått på mig en uppgift att driva en server för shell-konton. Och
> ja, de kommer bli en heldel såna, så nu frågar jag er hur nu skulle
> installera den, med säkerhet och så. Tanken är att de inte ska ha rätt att
> köra annat än vissa binärer, och sedan ha en viss diskquota.
> Så hurudana lösningar finns de för detta om man har debian som
> utgångspunkt?

Jag vet inte om det finns några direkt debian-specifika lösningar, men
här är några varianter man kan tänka sig:

* Montera /home och övriga publikt skrivbara utrymmen (/tmp, /var/tmp) med
'noexec' flaggan.
  Strippa sedan execute-flaggan för alla binärer (typ chmod o-x /bin/*
/sbin/* /usr/bin/* /usr/sbin/*   och så vidare)
  Sätt tillbaka execute-flaggan för de kommandon som ska kunna köras,
  typ chmod o+x /bin/bash /bin/ls

  Lägg till admin/staff-användarna i root-gruppen, så kan de köra alla
  kommandon som förut (förutsatt att grupp har kvar executerättigheter).


* Installera en kärna med grsecurity-patchen. Här finns bl.a. "TPE", trusted
  path execution, där användare i en viss grupp (shellusers?) bara får
  köra program som finns i root-ägda kataloger. Grsecurity har också andra
  bra funktioner för att hindra t.ex. stack overflows och andra
  attack-vektorer.
  grsecurity har även funktioner för att begränsa åtkomst till /proc,
  så att användare bara kan se sina egna processer.

* Det kommer alltid finnas skojare som tycker att det är kul att köra
  fork() bomber, och kan man inte kompilera en själv är det lätt att
  göra i bash. :(){ :|:& };: (Jaromil 2002)

  Ett tips är då att förutom disk-quota sätta limits på nproc,
  minnesutnyttjande och kanske också cpu-tid. Se /etc/security/limits.conf

* Med många användare på systemet är det svårt att veta vem som
  ev. försökt hacka andra system eller t.ex. skickat spam. Sätt upp
  brandväggsregler för utgående trafik med --log-uid och SYN-paket,
  så blir det lättare att hålla ryggen fri.

Mvh,
 Stefan




Reply to: