Ei bine, pregătisem această postare pentru blogul meu de ceva timp mi-au sugerat-o în DesdeLinux, și din cauza lipsei de timp, nu fusese în stare sau dispus. Dacă sunt oarecum leneș ????. Dar acum intră în grevă, așa cum spunem în Cuba ...
0- Păstrați sistemele noastre actualizate cu cele mai recente actualizări de securitate.
0.1- Actualizări critice Liste de corespondență [Consilier de securitate Slackware, Consilier de securitate Debian, În cazul meu]
1- Acces fizic zero la servere de către personal neautorizat.
1.1- Aplicați parola la BIOS-ul a serverelor noastre
1.2- Fără boot cu CD / DVD
1.3- Parolă în GRUB / Lilo
2- Politică bună de parolă, caractere alfanumerice și altele.
2.1- Îmbătrânirea parolelor [Îmbătrânirea parolei] cu comanda „chage”, precum și numărul de zile între schimbarea parolei și data ultimei modificări.
2.2- Evitați utilizarea parolelor anterioare:
în /etc/pam.d/common-password
password sufficient pam_unix.so use_auth ok md5 shadow remember 10
Deci, schimbați parola și vă amintește de ultimele 10 parole pe care le avea utilizatorul.
3- Politică bună de gestionare / segmentare a rețelei noastre [routere, switch-uri, vlans] și firewall, precum și reguli de filtrare INPUT, OUTPUT, FORWARD [NAT, SNAT, DNAT]
4- Activați utilizarea shell-urilor [/ etc / shells]. Utilizatorii care nu trebuie să se conecteze la sistem primesc / bin / false sau / bin / nologin.
5- Blocați utilizatorii când conectarea eșuează [faillog], precum și controlați contul de utilizator al sistemului.
passwd -l pepe -> blocare utilizator pepe passwd -v pepe -> deblocare utilizator pepe
6- Activați utilizarea „sudo”, nu vă conectați NICIODATĂ ca root cu ssh, „NICIODATĂ”. De fapt, trebuie să editați configurația ssh pentru a atinge acest scop. Folosiți chei publice / private pe serverele dvs. cu sudo.
7- Aplicați în sistemele noastrePrincipiul celui mai mic privilegiu".
8- Verificați din când în când serviciile noastre [netstat -lptun], pentru fiecare dintre serverele noastre. Adăugați instrumente de monitorizare care ne pot ajuta în această sarcină [Nagios, Cacti, Munin, Monit, Ntop, Zabbix].
9- Instalați IDS, Snort / AcidBase, Snotby, Barnyard, OSSEC.
10- Nmap este prietenul tău, folosește-l pentru a-ți verifica subrețeaua / subrețele.
11- Bune practici de securitate în OpenSSH, Apache2, Nginx, MySQL, PostgreSQL, Postfix, Squid, Samba, LDAP [cele care folosesc cel mai mult] și alte servicii de care aveți nevoie în rețeaua dvs.
12- Criptați toate comunicațiile în timp ce este posibil în sistemele noastre, SSL, gnuTLS, StarTTLS, digest, etc ... Și dacă gestionați informații sensibile, criptați-vă hard disk-ul !!!
13- Actualizați serverele noastre de e-mail cu cele mai recente reguli de securitate, listă neagră și antispam.
14- Logarea activității în sistemele noastre cu logwatch și logcheck.
15- Cunoașterea și utilizarea instrumentelor precum top, sar, vmstat, free, printre altele.
sar -> raport activitate sistem vmstat -> procese, memorie, sistem, i / o, activitate cpu, etc. iostat -> stare cpu i / o mpstat -> stare multiprocesor și utilizare pmap -> utilizare memorie prin procese libere -> memorie iptraf -> trafic în timp real al rețelei noastre etstatus -> monitorizare statistică ethernet bazată pe consolă etherape -> monitor grafic rețea ss -> starea socketului [informații socket tcp, udp, sockets raw, sockets DCCP] tcpdump -> Analiza detaliată a traficului -> monitorizarea traficului de rețea a interfețelor selectate mtr -> instrument de diagnosticare și analiză a supraîncărcării în rețele ethtool -> statistici despre plăcile de rețea
Deocamdată este totul. Știu că mai sunt încă o mie și încă una de sugestii de securitate în acest tip de mediu, dar acestea sunt cele care m-au lovit cel mai de aproape sau că, la un moment dat, a trebuit să aplic / exercit într-un mediu pe care l-am administrat .
O îmbrățișare și sper să vă servească 😀
Vă invit în comentarii să ne spuneți despre o altă regulă pe care ați implementat-o în afară de cele menționate deja, pentru a spori cunoștințele cititorilor noștri 😀
Ei bine, aș adăuga:
1.- Aplicați reguli sysctl pentru a preveni accesul dmesg, / proc, SysRQ, atribuiți PID1 nucleului, activați protecții pentru legăturile simbolice dure și soft, protecții pentru stivele TCP / IP atât pentru IPv4, cât și pentru IPv6, activați VDSO complet pentru indicatori de randomizare maximă și alocați spațiul de memorie și îmbunătățiți puterea împotriva depășirilor de tampon.
2.- Creați ziduri de incendiu de tipul SPI (Stateful Package Inspect) pentru a preveni conexiunile care nu au fost create sau care nu au fost permise anterior să aibă acces la sistem.
3.- Dacă nu aveți servicii care garantează conexiuni cu privilegii ridicate dintr-o locație la distanță, pur și simplu revocați accesul la acestea folosind access.conf sau, în caz contrar, activați accesul doar unui anumit utilizator sau grup.
4.- Folosiți limite severe pentru a împiedica accesul la anumite grupuri sau utilizatori să vă destabilizeze sistemul. Foarte util în medii în care există un real multi-utilizator activ în orice moment.
5.- TCPWrappers este prietenul tău, dacă te afli într-un sistem cu suport pentru acesta, utilizarea acestuia nu ar strica, astfel încât să poți refuza accesul de la orice gazdă, cu excepția cazului în care este configurat anterior în sistem.
6.- Creați chei SSH RSA de cel puțin 2048 biți sau mai bine de 4096 biți cu chei alfanumerice de peste 16 caractere.
7.- Cât de scriibil în lume ești? Verificarea permisiunilor de citire-scriere a directoarelor dvs. nu este deloc rea și este cea mai bună modalitate de a evita accesul neautorizat în medii cu mai mulți utilizatori, fără a menționa faptul că îngreunează accesul anumitor accesări neautorizate la informațiile pe care le faceți nu vreau ca ei. nimeni altcineva să nu vadă.
8.- Montați orice partiție externă care nu o merită, cu opțiunile noexec, nosuid, nodev.
9.- Folosiți instrumente precum rkhunter și chkrootkit pentru a verifica periodic dacă sistemul nu are instalat un rootkit sau malware. O măsură prudentă dacă sunteți unul dintre cei care instalează lucruri din depozite nesecurizate, din PPA-uri sau pur și simplu compilați coduri live de pe site-uri de încredere.
Uhmmm, delicios ... Comentariu bun, adăugați băieți ... 😀
Aplicați un control de acces obligatoriu cu SElinux?
articol foarte bun
Multumesc prietene 😀
Bună ziua și dacă sunt un utilizator normal, ar trebui să folosesc su sau sudo?
Folosesc su pentru că nu-mi place sudo, pentru că oricine are parola mea de utilizator poate schimba orice vrea în sistem, în schimb cu su nr.
Pe computerul dvs. nu vă deranjează să utilizați su, îl puteți folosi fără probleme, pe servere, este foarte recomandat să dezactivați utilizarea su și să utilizați sudo, mulți spun că se datorează faptului că audită cine a executat ce comandă și sudo face acea sarcină ... Eu în special, pe computerul meu îl folosesc pe al lui, la fel ca tine ...
Sigur, nu prea știu cum funcționează pe servere. Deși, mi se pare că sudo avea avantajul că poți acorda privilegii utilizatorului unui alt computer, dacă nu mă înșel.
Articol interesant, criptez unele fișiere cu gnu-gpg, cum ar fi cel al privilegiului minim, în cazul în care doriți să executați, de exemplu, un binar de origine necunoscută pierdut în imensele mări de informații de pe disc, cum elimin acces la anumite funcții?
Îți datorez această parte ție, deși cred că ar trebui să rulezi doar ca sudo / root, programe care sunt fiabile, adică provin din repo ...
Îmi amintesc că am citit că există o modalitate de a activa capabilitățile root într-un manual de pe GNU / Linux și UNIX, dacă îl găsesc, îl voi pune 😀
@andrew aici este articolul pe care l-am menționat și ceva mai mult ajutor
http://www.cis.syr.edu/~wedu/seed/Labs/Capability_Exploration/Capability_Exploration.pdf
http://linux.die.net/man/7/capabilities
https://wiki.archlinux.org/index.php/Capabilities
și cuștile chown pentru a rula binare necunoscute?
Utilizarea sudo în orice moment este mult mai bună.
Sau puteți utiliza sudo, dar limitând timpul în care parola este amintită.
Instrumente similare pe care le folosesc pentru a monitoriza computerul, „iotop” ca înlocuitor pentru „iostat”, „htop” excelent „manager de sarcini”, monitorizare a lățimii de bandă „iftop”.
mulți vor crede că este exagerat, dar am văzut deja atacuri pentru a include un server într-o botnet.
https://twitter.com/monitolinux/status/594235592260636672/photo/1
ps: cerșetorii chinezi și încercările lor de a-mi hack serverul.
ceva care este, de asemenea, convenabil este să folosiți cuști pentru servicii, deci dacă, dintr-un anumit motiv, sunt atacați, nu ar compromite sistemul.
Utilizarea comenzii ps este, de asemenea, excelentă pentru monitorizare și ar putea face parte din acțiuni de verificare a defectelor de securitate. rularea ps -ef listează toate procesele, este similară cu partea de sus, dar arată unele diferențe. instalarea iptraf este un alt instrument care poate funcționa.
Bună contribuție.
Aș adăuga: SELinux sau Apparmor, în funcție de distribuție, întotdeauna activate.
Din propria mea experiență am realizat că este o practică proastă să dezactivezi aceste componente. Aproape întotdeauna o facem atunci când urmează să instalăm sau să configurăm un serviciu, cu scuza că acesta rulează fără probleme, când într-adevăr ceea ce ar trebui să facem este să învățăm să le gestionăm pentru a permite acel serviciu.
Un salut.
1. Cum se criptează întregul sistem de fișiere? merită??
2. Trebuie decriptat de fiecare dată când sistemul va fi actualizat?
3. Este criptarea întregului sistem de fișiere al mașinii la fel ca și criptarea oricărui alt fișier?
De unde știi că știi despre ce vorbești?
De asemenea, puteți pune în cușcă programe și chiar mai mulți utilizatori. Deși a face acest lucru este mai mult de lucru, dar dacă s-a întâmplat ceva și ați avut o copie anterioară a acelui folder, este doar să bateți și să cântați.
Cea mai bună și mai convenabilă politică de securitate este să nu fii paranoic.
Încearcă, este infailibil.
Folosesc csf și atunci când deblochează un client care și-a deplasat parola într-un anumit acces, acest lucru întârzie procesul, dar da. Este normal?
Caut comanda pentru a debloca din ssh ... orice sugestie