PDA

Pogčedajte punu verziju : Kako zastititi server?


MorenoArdohain
04. 08. 2006., 19:52
Posto imam jedan dedicated server (Fedora), na kom su neke moje custom skripte, i test sajtovi, a moje znanje administracije je prilicno oskudno, rekoh da pokrenem ovu temu..
Interesuju me koje su sve mere zastite potrebne, makar i one minimalne?
Trenutno imam aktivan iptables, koji dozvoljava ssh, ftp i http konekcije, dok ostale odbija.
U vsftpd je iskljucen anonimni FTP.

Jos neki predlog?

dinke
04. 08. 2006., 20:49
1) Stopiraj sve nepotrebne servise
2) Radi redovan update software-a (mozda da se prijavis na na neku security mailing listu gde dobijas podatke o security propustima na e-mail)
3) Povedi racuna o kvalitetu passworda
4) Prati logove
5) S vremena na vreme odradi neki "intruder scan" (sa programima tipa aide (http://www.cs.tut.fi/~rammer/aide.html) i sl) koji proveravaju da li je ista od sistemskih fajlova menjano i sl.
6) Podseti me da ti posaljem neku knjigu o administraciji (ako vec nisam :)

MorenoArdohain
04. 08. 2006., 20:54
1. Koji su to nepotrebni servisi, a koji su ukljuceni po defaultu?
4. Koje logove? :)

dinke
04. 08. 2006., 21:17
Poslao sam ti odgovor na icq (posto mi DPT-ov "security by obscurity" ne dozvoljava drugacije).

MorenoArdohain
04. 08. 2006., 21:31
Posto verujem da ce i ostalima koristiti:
1. Koji su to nepotrebni servisi, a koji su ukljuceni po defaultu?
To zavisi od instalacije. U principu, nisam se bakcao sa fedorom, ali generalno rhl dize gomilu servisa koji ti na serveru generalno ne trebaju. Primer, s#endmail (ako si instalirao q#mail), a#mpd, k#udzu, p#ortmap itd. itd. Kod rhl-a postojala je lepa komanda u konzolnom okruzenju, ntsysv sa kojom si mogao lepo da vidis sta je od servisa ukljuceno, ka i da poiskljucujes nepotrebno. Ne znam kako je sada kod fedore, ali uvek mozes da koristis ps k-du, kao i da bacis pogled u /etc/rc.x/... scriptove (za runlevel 3).

4. Koje logove? :)
Sve u /var/logs, a posebno messages .

inace preporucujem knjigu Securing and Optimizing Linux - Hacking Solutions. Tamo sve lepo imas objasnjeno (doduse, knjiga je prilagodnjena rhl-u, ali snaci ces se :)

zextra
04. 08. 2006., 21:54
Ko sad tu pita, a ko odgovara? :)

Meni se ucinilo da je fedora projekat nastao od rhl?

MorenoArdohain
04. 08. 2006., 22:25
Zextra, citaj pazlijvije, dinke mi je poslao odgovor na icq, posto mu vbulletin nije dozvolio da postuje..
A ja sam njegov odgovor pastovao ovde, i izmenio neke reci koje su pravile problem (sa #)

Jeste izveden od RH, mnogo toga je isto..

zextra
06. 08. 2006., 15:08
Moja greska, protumacio sam da je quoted text ono sto je onaj drugi napisao... Never mind.

ivanhoe
07. 08. 2006., 00:29
samo da se nadovezem na dinketove savete:

za kontrolu servisa: man chkconfig, konkretno korisne komande su
chkcofig --list |grep ime_servisa
da se pogleda jel ukljucen i na kom run-levelu, i
chkconfig --level 345 ime_servisa off
da iskljucis servis na levelima 345 (i ON da ih ukljucis ako treba)

lilit
07. 08. 2006., 03:57
Jos jedna korisna stvar je zabrana root logina na ssh.

Pogledaj i zvanicni dokument od Red Hat-a (http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/security-guide/),
tu ces sigurno pokupiti dosta informacija i nauciti ponesto :)

I ja da se nadovezem na Ivanov savet oko chkconfiga,
jedan lep mini howto za manipulaciju sa servisima na redhetolikim OS-ovima (http://www.netadmintools.com/art94.html).

ivanhoe
07. 08. 2006., 13:27
Jos jedna korisna stvar je zabrana root logina na ssh.

Odlican savet, mada mene mnogo smara kad ne mogu da se ulogujem kao root, zbog sftp-a koji ne ume da promeni korisnika, pa onda ne mogu da normalno editujem fajlove (koristim WinSCP koji ume da edituje fajlove "direktno", i to mi se mnmogo svidja..).

Zato ja samo u hosts.allow dodam par linija:
sshd: xxx.xxx.xxx.xxx/255.255.0.0
po jednu za svaki moj IP (gde je xxx.xxx... IP adresa sa koje se kacim, maskirana tako da se gledaju samo prva 2 polja jer nemam stalni IP, inace bi moglo da se zakuca tacan IP), a u hosts.deny dodam:
sshd: ALL
Nema potreba da se restartuje bilo sta, a nakon ovoga pristup serveru ima samo neko sa istog provajdera kao i ti...

Ovde samo treba paziti da greskom ne zabranis sam sebi pristup serveru, najbolje je ostaviti otvorenu konzolu, izmeniti hosts.allow i onda probati da li moze da se pristupi iz nove konzole, a ako ne moze ona vec otvorena konzola i dalje radi, pa nema frke, samo skines zabranu.

misk0
07. 08. 2006., 16:35
Zato ja samo u hosts.allow dodam par linija:
sshd: xxx.xxx.xxx.xxx/255.255.0.0
po jednu za svaki moj IP (gde je xxx.xxx... IP adresa sa koje se kacim, maskirana tako da se gledaju samo prva 2 polja jer nemam stalni IP, inace bi moglo da se zakuca tacan IP), a u hosts.deny dodam:
sshd: ALL
Nema potreba da se restartuje bilo sta, a nakon ovoga pristup serveru ima samo neko sa istog provajdera kao i ti...

Ovde samo treba paziti da greskom ne zabranis sam sebi pristup serveru, najbolje je ostaviti otvorenu konzolu, izmeniti hosts.allow i onda probati da li moze da se pristupi iz nove konzole, a ako ne moze ona vec otvorena konzola i dalje radi, pa nema frke, samo skines zabranu.

Ovo je i meni bolje rjesenje. Poenta je sto ako neko udje na masinu i sa korisnickim imenom, trebace mu vremena da nadje 'slab' servis i da zadobije root privilegije.
Najbolje sa hosts.allow i hosts.deny kriticnim servisima ograniciti pristup (jos pogotovo ako je rijec o par IPova, u mom slucaju jedan).

Nego, vidim cesto po log fajlovima brute-force attack na sshd, ftp ... ima li neki IDS koji bi mogao da recimo prati takve pokusaje i automatski ignorishe sve konekcije sa tog IP na neko vrijeme?