Maksimizoni sigurinë në GNU / Linux

Përshëndetni miqtë nga DesdeLinux, ajo që u premtua është një borxh dhe ja një postim rreth si të maksimizohet mbrojtja e sistemeve Linux dhe rri ashtu i sigurt nga ndërhyrës, si dhe mbrojtjen e informacionit në serverat tuaj, PC ose laptopë !!!!

Comenzando

Fail2ban: është një aplikacion i shkruar në Python për të parandaluar ndërhyrjen në një sistem, i cili vepron duke penalizuar ose bllokuar lidhje të largëta që përpiqen hyrjen e forcës brutale.

instalimit:

Fedora, RHEL, CentOS:

yum install fail2ban

Debian, Ubuntu:

apt-get install fail2ban

Vendosja:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local nano /etc/fail2ban/jail.local

Në pjesën e quajtur [DEFAULT] ne bëjmë komente dhe modifikojmë #bantime = 3600 duke e lënë atë kështu:

#bantime = 3600 bantime = 604800

Në pjesën [sshd] ne prezantojmë të aktivizuar = e vërtetë duke e lënë atë kështu:

#enabled = e vërtetë e aktivizuar = e vërtetë

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne fillojmë shërbimin:

Fedora, RHEL, CentOS:

systemctl mundëson fail2ban.service systemctl start fail2ban.service

Debian, Ubuntu:

fillimi i shërbimit të dështuar2

Mohoni hyrjen në rrënjë duke përdorur ssh:

Për të mbrojtur makinerinë tonë ne do të mohojmë ssh përmes përdoruesit rrënjë. Për ta bërë këtë, ne editojmë skedarin / etc / ssh / sshd_config si më poshtë:

cp sshd_config sshd_config.bck nano / etc / ssh / sshd_config

Ne nuk komentojmë dhe ndryshojmë

# Protokolli 2 Protokolli 2

Ne nuk komentojmë dhe ndryshojmë

#PermitRootLogin po PermitRootLogin jo

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne fillojmë shërbimin:

Fedora, RHEL, CentOS:

systemctl mundësojë sshd.service systemctl start sshd.service

Debian, Ubuntu:

sshd shërbimi fillon

Mohoni hyrjen në një server ssh duke përdorur fjalëkalimin dhe lejoni ssh vetëm me çelësat RSA

Nëse duam të lidhemi me PC1 në Server1, gjëja e parë që duhet të bëjmë është të gjenerojmë çelësin tonë në PC1. Me përdoruesin tonë dhe pa root në PC1 ne ekzekutojmë:

ssh-keygen -t rsa -b 8192 (kjo gjeneron një çelës më shumë se të sigurt pasi që zakonisht përdoren çelësat nga 1024 deri në 2048)

Pasi të kemi fjalëkalimin tonë, ne e ngarkojmë atë në Server1:

përdoruesi i ssh-kopjimit-id @ server_ip

Pasi të jetë bërë kjo, ne do të lidhemi me Server1-in tonë dhe do të modifikojmë skedarin nano / etc / ssh / sshd_config me lejet e rrënjës:

përdoruesi ssh @ Server1 nano / etj / ssh / sshd_config

Ne ndryshojmë vijën që thotë #PaswordAuthentication po për këtë:

#Autentikimi i fjalëkalimit po
Vërtetimi i fjalëkalimit nr

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne rifillojmë shërbimin ssh:

Fedora, RHEL, CentOS:

systemctl rinis sshd.shërbim

Debian, Ubuntu:

sshd sërish shërbimin

Ndryshoni portin e dëgjimit të ssh

Përsëri ne editojmë / etc / ssh / sshd_config dhe në pjesën që i referohet portit e lëmë kështu:

# Port 22 Port 2000 (ose ndonjë numër tjetër më i madh se 2000. Në shembujt tanë do ta përdorim këtë.)

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne rifillojmë shërbimin ssh:

Fedora, RHEL, CentOS:

systemctl rinis sshd.shërbim

Debian, Ubuntu:

sshd sërish shërbimin

Nëse ata përdorin fail2ban është e nevojshme të ndryshoni konfigurimin në lidhje me rregullimin e portit sshd.

nano /etc/fail2ban/jail.local

[sshd]
port    = ssh, 2000

[sshd-ddos]
port    = ssh, 2000

[dropbear]
port    = ssh, 2000

[selinux-ssh]
port    = ssh, 2000

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne rinovojmë shërbimin:

Fedora, RHEL, CentOS:

systemctl rifillon fail2ban.service

Debian, Ubuntu:

sherbimi fail2ban rinisni

Firewall

Fedora, RHEL, CentOS:

Selinux dhe Iptables aktivizohen si parazgjedhje në këto sisteme dhe ju rekomandoj që të vazhdoni në këtë mënyrë. Si të hapni një port me iptables? Le të shohim se si të hapim portin e ri 2000 të portit ssh që kemi ndryshuar më parë:

Hapur:

nano / etj / sysconfig / iptables

dhe ne modifikojmë vijën që i referohet portit të parazgjedhur ssh 22 dhe e lëmë kështu:

# -A INPUT -m shtet --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m shtet --state NEW -m tcp --dport 2000 -j ACCEPT

Kurseni me CTRL + O dhe mbyllet me CTRL + X

Ne rifillojmë shërbimin:

systemctl rinis iptables

Debian, Ubuntu:

Në Debian ose Ubuntu dhe derivatet kemi një firewall UFW i cili do ta bëjë jetën tonë më të lehtë pasi menaxhon Netfilter shumë lehtë.

instalimit:

apt-get instaloni ufw ufw mundësoni

Për të parë statusin e porteve të hapura ne ekzekutojmë:

statusi ufw

Për të hapur një port (në shembullin tonë do të jetë porti i ri ssh 2000):

ufw lejojnë 2000

Për të mohuar një port (në rastin tonë do të jetë porti i parazgjedhur 22 i ssh):

ufw mohoni 22 ufw fshini mohoni 22

Dhe miq të gatshëm. Në këtë mënyrë ato do t'i mbajnë makineritë tuaja të sigurta. Mos harroni të komentoni dhe deri herën tjetër: D.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   mëkatar dijo

    dhe një sistem kriptimi si: https://www.dyne.org/software/tomb/

    1.    mëkatar dijo

      Dhe gjithashtu përdoruesit e kafazit në shtëpinë tuaj nëse ata lidhen nga tty:
      http://olivier.sessink.nl/jailkit/index.html#intro
      https://operativoslinux.wordpress.com/2015/02/21/enjaular-usuarios-en-linux/ (menyra e thjeshte)

    2.    Jukiteru dijo

      Muchshtë shumë më mirë dhe më e sigurt të kriptoni të gjithë sistemin e skedarëve.

    3.    peterçeko dijo

      Për udhëzuesin vijues në lidhje me sigurinë në Linux do ta marr parasysh: D.

      1.    Jukiteru dijo

        Do të ishte gjithashtu mirë të flisnim për ngurtësimin e kernelit me anë të sysctl, aktivizimin e grumbullit të rastit dhe Exec-Shield në kernel që e mbështesin atë, duke mundësuar hyrjen në dmesg dhe sistemin e skedarëve / proc, drejtimin e një demoni të auditimit, duke mundësuar mbrojtjen e TCP SYN, kufizoni aksesin në / dev / mem, çaktivizoni opsionet e pirgut TCP / IP që mund të jenë të rrezikshëm ose të pasigurtë në sistem (ridrejtim, jehonë, kurs i burimit), përdorni pam_cracklib për përdoruesit për të gjeneruar fjalëkalime të forta, rëndësinë e përdorimi i sistemit MAC si Tomoyo, AppArmor dhe SELinux.

  2.   kuk dijo

    shum e dobishme !!!! vetëm atë që po kërkoja faleminderit

    1.    peterçeko dijo

      Ju mirepresim mik :).

  3.   engjëllore dijo

    Nëse përdorni apache, nuk dëmton të shtoni rregulla me mod_rewrite për të shmangur botët. Shumë e dobishme

    http://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/

    1.    Rolo dijo

      dhe për nginx a ka ndonjë hile apo konfigurim?

  4.   Rolo dijo

    Në debian 8 skedari / etc / ssh / sshd_config tashmë ka Protokollin 2 aktiv dhe funksioni PermitRootLogin është me opsionin pa fjalëkalim (mund të futni rrënjë vetëm me çelësin e vërtetimit dhe nga kompjuteri që ka çelësin privat)

    pd në debian 8 firewalld ka mbërritur që e lë atë të vogël në ufw

    1.    dhunues dijo

      A keni parë ferm? Më pëlqen se si përcaktohen rregullat.

      http://ferm.foo-projects.org/download/examples/webserver.ferm

    2.    peterçeko dijo

      Epo, më vjen mirë që Debian 8 përdor firewalld pasi është shumë shumë shumë mirë ...

  5.   dhunues dijo

    Kini kujdes nga fail2ban që një sulmues prodhon pako me ip të kompjuterit lokal dhe e bën DOS-in shumë të lehtë.

    1.    Hery dijo

      Njeriu, IP-ja lokale e PC-së dhe IP-ja loopback përjashtohen nga lista Fail2ban.
      Nëse jo, mund të kemi pozitive të rreme.

  6.   Jason soto dijo

    Rekomandime të mira dhe shumë efektive… Sigurisht, në mjedisin e serverit dhe nëse jemi duke pritur një faqe në internet, kjo përfshin hapa shtesë. Aktualisht ne mbajmë një projekt të quajtur JackTheStripper i cili nuk është asgjë më shumë sesa një skenar bash që përgatit dhe siguron një server me GNU / Linux duke ndjekur praktikat më të mira të sigurisë, për aplikacionet në internet ... ju mund ta njihni projektin në http://www.jsitech.com/jackthestripper ....

    1.    Jukiteru dijo

      Shkrim i bukur edhe pse më pëlqen ta mbaj vlerën e kernel.randomize_va_space = 2

      1.    Jason soto dijo

        E mira është që para se ta ekzekutoni, mund ta modifikoni pak për nevojat tuaja ..... Një Përshëndetje ...

    2.    peterçeko dijo

      Përshëndetje, sigurisht që postimi im merret me një bazë të siguruar dhe secili prej tyre duhet të mbrojë veten pak a shumë në varësi të shërbimeve që ka instaluar në sistemet e tij si LAMP ose FTP, SFTP, BIND dhe një etj. E gjatë:)

      Në postimin tjetër për sigurinë, unë do të trajtoj këto çështje.

      Faleminderit për komentin pozitiv :).

  7.   ngjitur dijo

    @petercheco, udhëzuesit tuaj janë të shkëlqyeshëm, do të ishte mirë një udhëzues kriptimi për sistemin FreeeBSD, nuk e di kur do të bëni pjesën e dytë në lidhje me FreeBSD, në lidhje me konfigurimin dhe personalizimin e desktopëve, në lidhje me Firewall, në lidhje me krijimin dhe konfigurimin e një rrjeti pa tel.

    1.    peterçeko dijo

      Pershendetje shoku
      Jam pak i zënë siç tregon postimi i rrallë, por do ta mbaj këtë në mendje për postimin e ardhshëm të FreeBSD.

      Një përshëndetje :).

  8.   Solrak Rainboluftëtar dijo

    Kjo e niveluar në komente, unë nuk kam asnjë ide ose atë për të cilën po flisni, askush xD
    Artikull i shkëlqyeshëm!

  9.   xunil dijo

    Ky veprim i sigurisë nënkupton kufizimin e pajisjeve në ndonjë mënyrë?

    1.    peterçeko dijo

      Jo ... Përdorimi normal i sistemit nuk është aspak i kufizuar.

  10.   mëkatar dijo

    Dhe gjëja qesharake (tragjike) është se, siç sapo pamë me makinat Lenovo, nëse firmware i bios është ndërhyrë me malware, asgjë nga ju nuk bëni me rëndësi.

    1.    peterçeko dijo

      Për sa kohë që përdorni Windows të parainstaluar nga prodhuesi ...

      1.    mëkatar dijo

        gabim: mos harroni se ata e instaluan atë në firmware bios, domethënë, fillon me sistemin në çdo rinisje, para sistemit operativ, para demonëve, para së gjithash, dhe nuk ju lejon të bëni asgjë kundër tij. sulmet mund të bëhen pak, prandaj ideja uefi në parim është e mirë.

  11.   Paul dijo

    Artikull interesant, do ta lexoj më me kujdes këtë pasdite. Faleminderit.

    1.    peterçeko dijo

      Ju mirepresim :). Gëzohem.

  12.   Carlos Best dijo

    Artikull i shkëlqyeshëm, e argëtova tërë pasditen duke e lexuar. Koha që merrni për të shpjeguar gjithçka me shumë kujdes vlerësohet,

    Përshëndetje nga Kili
    Carlos

    1.    peterçeko dijo

      Përshëndetje Carlos,
      Faleminderit shume :).

  13.   brion dijo

    Makineritë Lenovo, nëse firmware bios duket se ndërhyhet me malware, makineritë (Laptop PC-Desktop Computer) vijnë gjithmonë të instaluara me Windows nga prodhuesi, duke pasur parasysh sa më sipër… a bën postimi pet .petercheco?

    1.    Jukiteru dijo

      Edhe pa i bërë të gjitha këto funksionon, pasi që malware është bërë për Windows, jo për Linux.

  14.   SynFlag dijo

    Ka shumë gjëra dhe marifete që mungojnë në iptables, të tilla si marramendja nmap në mënyrë që të gjitha portet e hapura, duke gënjyer se është një kompjuter Windows duke përdorur ttl dhe madhësinë e dritares, scanlogd, sigurinë e modës Apache, grsec, selinux ose diçka e tillë. Zëvendësoni ftp me sftp, kufizoni numrin e lidhjeve për IP në secilin shërbim në portin X për të shmangur që para një DDoS të na lënë pa shërbime, si dhe të bllokoni IP-të që dërgojnë më shumë se kaq shumë UDP për kaq shumë sekonda.

    1.    peterçeko dijo

      Me shembujt që paraqitët, një përdorues i ri do të çmendej kur e lexonte ... Ju nuk mund të vendosni gjithçka në një postim. Do të bëj disa shënime :).

  15.   shini kire dijo

    Kam një gabim në archlinux në këtë pikë kur jap shërbimin startues, i jap statusin dhe kjo del:
    statusi sudo systemctl fail2ban
    ● fail2ban.service - Shërbimi Fail2Ban
    Ngarkuar: i ngarkuar (/usr/lib/systemd/system/fail2ban.service; aktivizuar; shitësi i paravendosur: i paaftë)
    Aktiv: i dështuar (Rezultati: start-limit) që nga Fri 2015-03-20 01:10:01 CLST; 1 vjet më parë
    Dokumentet: njeriu: fail2ban (1)
    Procesi: 1695 ExecStart = / usr / bin / fail2ban-klient -x start (kodi = i dalë, statusi = 255)

    Mar 20 01:10:01 Gundam systemd [1]: Dështoi të fillojë Shërbimin Fail2Ban.
    Mar 20 01:10:01 Gundam systemd [1]: Njësia fail2ban.service hyri në gjendje të dështuar.
    Mar 20 01:10:01 Gundam systemd [1]: fail2ban.service dështoi.
    Mar 20 01:10:01 Gundam systemd [1]: kërkesa e fillimit përsëritet shumë shpejt për akullnajën e dështuar
    Mar 20 01:10:01 Gundam systemd [1]: Dështoi të fillojë Shërbimin Fail2Ban.
    Mar 20 01:10:01 Gundam systemd [1]: Njësia fail2ban.service hyri në gjendje të dështuar.
    Mar 20 01:10:01 Gundam systemd [1]: fail2ban.service dështoi.
    Sugjerim: Disa rreshta janë elipsuar, përdorni -l për t'i treguar të plota.
    ca ndihme? D:

    1.    peterçeko dijo

      Përshëndetje, nëse keni aktivizuar fail2ban me systemctl mundësoni fail2ban.service dhe systemctl start fail2ban.service, problemi do të jetë në konfigurimin e burgjeve që keni bërë. Ju lutemi kontrolloni burgun tuaj dhe verifikoni që gjithçka është në rregull.

      Një përshëndetje
      PeterÇek

      1.    Maykel Franko dijo

        Para së gjithash tutorial i mirë. Shumë gjëra mungojnë, por ju jeni përqendruar në bazat.

        shini-kire, kontrolloni /var/log/fail2ban.log

        Përshëndetje.

      2.    peterçeko dijo

        Faleminderit @Maykel Franco :).

  16.   joni127 dijo

    Mirë,

    fail2ban duhet ta instalojnë në një kompjuter shtëpiak apo a është kjo më shumë për serverat ???

    Ju faleminderit.

    1.    peterçeko dijo

      Përkundrazi për serverat, por nëse jeni në një wifi të aksesueshëm nga më shumë njerëz sesa ju, është mirë ...

  17.   Rodrigo dijo

    Përshëndetje mik, unë mendoj se është një post i mirë sigurie në pjesën e një zjarri të shkurtër në distro Gnu / Linux. Po shkruaj këtë koment sepse po e bëj në një shpërndarje Ubuntu 14.04 duke e ditur që tashmë është në 15.04, çfarë ndodh është problemi i mëposhtëm Unë fut nano /etc/fail2ban/jail.local si rrënjë dhe nuk kam vizualizim në pjesën sshd dhe ruaj Në pjesën e quajtur [DEFAULT] ne heqim komentet dhe modifikojmë #bantime = 3600 dhe
    Në pjesën [sshd] ne prezantojmë të aktivizuar = e vërtetë duke e lënë atë kështu:
    # mundësohet = e vërtetë
    aktivizuar = e vërtetë
    Nuk duket se e sshd që mund të jetë sepse unë jam duke punuar versionin e mëparshëm faleminderit