Jump to content
PingLord

Securitate Basic pe Linux

Recommended Posts

Posted

Acest tutorial este facut pentru distro-uri RHEL , in special CentOS.

De obicei,eu prefer sa instalez sistemul fara pachete,nici macar "Base" dar sa presupunem ca s-a instalat sistemul si suntem in consola.

Primul lucru este update la pachete.

yum update
yum upgrade

Recomand inchiderea SeLINUX si trecerea in Disabled ( nu permissive ).

Daca este server ce are ca scop virtualizarile si de a deveni host pentru servere guest merge si interfata web pentru acces diferit de ssh.

Daca serverul se vrea WebServer pentru monitorizare se poate folosi Cacti sau Nagios.

Daca serverul are ca scop mail o interfata web pentru module de filtrare si interfata pentru cei care nu sunt obisnuiti cu comenzile de consola din iptables.

Dupa ce s-a terminat cu update-ul este important sa oprim serviciile care nu le folosim.

DEZACTIVARE SERVICII

# ps –ax    - listeaza toate procesele ce ruleaza 
# ls –l /etc/rc.d/rc3.d/S* - va arata toate scripturile de start-up
# netstat –a - listeaza toate porturile deschise
# chkconfig – lista arata startup-ul actual al tuturor proceselor cunoscute de chkconfig

Dupa ce se face lista cu ce trebuie si nu trebuie se foloseste comanda

service numeserviciu stop

pentru oprirea serviciului sau din chkconfig se scoate din ce init-uri sa nu porneasca sau sa porneasca.

SECURIZARE CRONTAB

Este important pentru CRON sa fie folosit doar userul root.Daemonul de cron este folosit pentru a programa procese.Comanda 'crontab' este folosita pentru a crea intrari personale de crontab pentru useri sau contul de root.Pentru a intarii securitatea pe cron,se poate stabili prin cron.deny sau cron.allow care sunt fisiere,folosirea crontabului.

Urmatoarele comenzi vor face ca userul root sa fie singurul cu permisiuni de a adauga cron-uri.


cd /etc/

/bin/rm -f cron.deny at.deny

echo root >cron.allow

echo root >at.allow

/bin/chown root:root cron.allow at.allow

/bin/chmod 400 cron.allow at.allow

SECURIZARE SSH SI ACCES REMOTE

Nu este recomandat pentru acces remote folosirea telnet.Secure Shell ( SSH ) este o alternativa securizata ce ofera encriptie pe conexiune.Pentru securizarea lui se va folosi protocolul 2 de ssh ce este mult mai putin vulnerabil decat ssh1,vom dezactiva login-ul direct cu root.Pentru asta trebuie editat fisierul de configurare 'sshd_config' aflat in /etc/ssh/.

Ar trebui sa arate in felul urmator configurarea

Protocol 2

PermitRootLogin no

PermitEmptyPasswords no

Banner /etc/issue

IgnoreRhosts yes

RhostsAuthentication no

RhostsRSAAuthentication no

HostbasedAuthentication no

LoginGraceTime 1m

SyslogFacility AUTH (ofera logging sub autoritatea syslog)

AllowUser [lista utilizatorul ce au accesul permis]

DenyUser [lista conturilor de sistem si altele care nu au acces]

MaxStartups 10 (numarul maxim de conexiuni simultane neautentificare.este folositor pentru protectie brute force care face forking.)

Eu sunt de parere ca ar trebui schimbat si portul de acces dar ramane la alegerea fiecaruia.

FIREWALL

Pentru firewall eu as merge pe CSF ( ConfigServer Firewall ) .Este free si configurarea se poate face din csf.conf care este mult mai friendly.

ATENTIE : Are nevoei de pachetul libwww-perl !!

Link-ul de download este acesta : http://configserver.com/free/csf.tgz

Download cu wget si pe urma in directorul in care s-a descarcat


#tar -xzvf csf.tgz
#cd csf
./install.sh

Configurarea se face din /etc/csf/csf.conf .Recomand citirea fisierului deoarece contine explicatii si instructiuni precise cu referire la functionalitatea firewallului.

ROOTKIT

Este recomandat si folosirea unui scanner de rootkit si porturi de retea suspecte.Eu am folosit mereu rootkit hunter si este foarte bun si un pic interactiv sa zicem asa.Se gaseste pe sourceforge si este usor de instalat.

VIRUSI

ClamAV ramane o solutie viabila free pentru scanare ce detecteaza si shell-uri php ce pot crea probleme.

Link: Download Clam AntiVirus from SourceForge.net

In principiu cam asta ar fi o securitate basic la nivel de server.Daca doriti completari sau mai detaliat anumit punct postati cu incredere.Astept si corectari daca am gresit ceva.

  • Upvote 1
Posted (edited)
Recomand inchiderea SeLINUX si trecerea in Disabled ( nu permissive ).

Dupa ce s-a terminat cu update-ul este important sa oprim serviciile care nu le folosim.

DEZACTIVARE SERVICII

# ps –ax    - listeaza toate procesele ce ruleaza 
# ls –l /etc/rc.d/rc3.d/S* - va arata toate scripturile de start-up
# netstat –a - listeaza toate porturile deschise
# chkconfig – lista arata startup-ul actual al tuturor proceselor cunoscute de chkconfig

ROOTKIT

Este recomandat si folosirea unui scanner de rootkit si porturi de retea suspecte.Eu am folosit mereu rootkit hunter si este foarte bun si un pic interactiv sa zicem asa.Se gaseste pe sourceforge si este usor de instalat.

VIRUSI

ClamAV ramane o solutie viabila free pentru scanare ce detecteaza si shell-uri php ce pot crea probleme.

Link: Download Clam AntiVirus from SourceForge.net

In principiu cam asta ar fi o securitate basic la nivel de server.Daca doriti completari sau mai detaliat anumit punct postati cu incredere.Astept si corectari daca am gresit ceva.

1. Nu recomand inchiderea SELinuxului

2. ls –l /etc/rc.d/rc3.d/S* le afiseaza doar pe cele din runlevel 3

3. chkconfig --list nu chkconfig simplu

4. Legat de rootkit eu am sniffer cu bd inclus care nu e detectat de RK Hunter, cu toate astea ramane un anti rk bun.

5. Sustin faza cu clamav.

6. As mai adauga o securitate folosind TCPWrappers (un eventual help aici)

7. Bravo pentru tutorial, +1 pentru ca a fost facut de tine.

8. Sper sa continui tot asa si la cat mai multe tutoriale de genul

Edited by Zatarra
Posted

Am considerat ca un server nu are nevoie de X Window System si GUI...lucram doar runlevel3.

Am pus ceva basic.O sa incerc sa mai fac completari.Cred ca mi-a scapat si portsentry...

Multumesc pentru rep si sper sa fie folositor.

SeLinux il inchid ca sa am liniste.De exemplu pe anumite platforme web ce vin cu un installer propriu imi blocheaza accesul sa le vad pe port 80.Il deschid si il configurez sa nu ma deranjeze.

Posted

Eu am avut mari probleme cu SELinux cand implementam samba.. deoarece nu te lasa sa dai share la foldere cu path-uri diverse.. doar /home /tmp si chestii de genu.

Mai multe detalii gasesti aici:

Posted

Daca ai SELinuxul activat orice ai face nu poti face share oriunde.

Trebuie sa dai una din comenzile astea 2 pentru solutie temporara

setsebool -P samba_export_all_rw on (pentru permisiuni rw pe share)

setsebool -P samba_export_all_ro on (pentru permisiuni ro pe share)

Si una din astea 2 pentru solutie permanenta

echo "samba_export_all_rw=1" >> /etc/selinux/config (pentru permisiuni rw pe share)

echo "samba_export_all_ro=1" >> /etc/selinux/config (pentru permisiuni ro pe share)

Am detaliat mai mult aici: http://rstcenter.com/forum/35818-linux-sharing-using-samba.rst

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...