Pozdravljeni prijatelji iz DesdeLinux, kar je bilo obljubljeno, je dolg in tukaj je objava o kako povečati zaščito sistemov Linux in ostanite takšni varno pred vsiljivci poleg zaščite podatkov na vaših strežnikih, osebnih računalnikih ali prenosnikih !!!!
Comenzando
Fail2ban: je aplikacija, napisana v Pythonu, za preprečevanje vdora v sistem, ki deluje tako, da kaznuje ali blokira oddaljene povezave, ki poskušajo dostopati do surove sile.
Namestitev:
Fedora, RHEL, CentOS:
yum install fail2ban
Debian, Ubuntu:
apt-get install fail2ban
Nastavitev:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local nano /etc/fail2ban/jail.local
V delu, imenovanem [DEFAULT], razkomentiramo in spremenimo #bantime = 3600, tako da ostane tako:
#bantime = 3600 bantime = 604800
V delu [sshd] uvedemo omogočeno = res, tako da ostane tako:
#enabled = true omogočeno = true
Prihranimo s CTRL + O in zapremo s CTRL + X
Storitev začnemo:
Fedora, RHEL, CentOS:
sl Omogoči fail2ban.service
Debian, Ubuntu:
storitev fail2ban start
Zavrni korenski dostop s ssh:
Za zaščito našega računalnika bomo ssh zavrnili prek korenskega uporabnika. Za to uredimo datoteko / etc / ssh / sshd_config, kot sledi:
cp sshd_config sshd_config.bck nano / etc / ssh / sshd_config
Nekomentiramo in se spremenimo
# Protokol 2 Protokol 2
Nekomentiramo in se spremenimo
#PermitRootLogin da PermitRootLogin št
Prihranimo s CTRL + O in zapremo s CTRL + X
Storitev začnemo:
Fedora, RHEL, CentOS:
omogoči sshd.service. zaženi sshd.service
Debian, Ubuntu:
storitev sshd začetek
Zavrnite dostop do strežnika ssh z geslom in dovolite ssh samo s ključi RSA
Če se želimo povezati s PC1 na Server1, najprej naredimo svoj ključ na PC1. Z našim uporabnikom in brez root na PC1 izvedemo:
ssh-keygen -t rsa -b 8192 (ta ustvari več kot varen ključ, saj se običajno uporabljajo ključi od 1024 do 2048)
Ko dobimo geslo, ga naložimo na Server1:
ssh-copy-id uporabnik @ server_ip
Ko bo to storjeno, se bomo povezali z našim Server1 in spremenili datoteko nano / etc / ssh / sshd_config z root dovoljenji:
ssh uporabnik @ Server1 nano / etc / ssh / sshd_config
V to spremenimo vrstico, v kateri piše #PasswordAuthentication:
#PasswordAuthentication da
GesloAuthentication št
Prihranimo s CTRL + O in zapremo s CTRL + X
Ponovno zaženemo storitev ssh:
Fedora, RHEL, CentOS:
systemctl znova zaženite sshd.service
Debian, Ubuntu:
ponovni zagon storitve sshd
Spremenite vrata za poslušanje ssh
Spet uredimo / etc / ssh / sshd_config in v delu, ki se nanaša na vrata, ga pustimo takole:
# Port 22 Port 2000 (ali katero koli drugo število, večje od 2000. V naših primerih bomo to uporabili.)
Prihranimo s CTRL + O in zapremo s CTRL + X
Ponovno zaženemo storitev ssh:
Fedora, RHEL, CentOS:
systemctl znova zaženite sshd.service
Debian, Ubuntu:
ponovni zagon storitve sshd
Če uporabljajo fail2ban, je treba spremeniti konfiguracijo glede sshd prilagajanja vrat.
nano /etc/fail2ban/jail.local [sshd] port = ssh, 2000 [sshd-ddos] port = ssh, 2000 [dropbear] port = ssh, 2000 [selinux-ssh] port = ssh, 2000
Prihranimo s CTRL + O in zapremo s CTRL + X
Storitev obnavljamo:
Fedora, RHEL, CentOS:
systemctl znova zaženite fail2ban.service
Debian, Ubuntu:
vnovični zagon storitve
požarni zid
Fedora, RHEL, CentOS:
Selinux in Iptables sta privzeto aktivirana v teh sistemih in priporočam, da nadaljujete po tej poti. Kako odpreti vrata z iptables? Poglejmo, kako odpreti novo vrata 2000 vrat ssh, ki smo jih že spremenili:
Odprto:
nano / etc / sysconfig / iptables
in spremenimo vrstico, ki se nanaša na privzeta vrata ssh 22, in jo pustimo tako:
# -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 2000 -j ACCEPT
Prihranimo s CTRL + O in zapremo s CTRL + X
Storitev znova zaženemo:
znova zaženite iptables
Debian, Ubuntu:
V Debianu ali Ubuntuju in njegovih izvedenkah imamo požarni zid UFW, ki nam bo olajšal življenje, saj zelo enostavno upravlja Netfilter.
Namestitev:
apt-get namesti ufw ufw omogoči
Če si želite ogledati stanje odprtih vrat, ki jih izvajamo:
status ufw
Če želite odpreti vrata (v našem primeru bodo to nova vrata ssh 2000):
ufw dopusti 2000
Če želite zavrniti vrata (v našem primeru bodo to privzeta vrata 22 ssh):
ufw zavrne 22 ufw izbriši zavrne 22
In pripravljeni prijatelji. Tako bodo varovali vaše stroje. Ne pozabite komentirati in do naslednjega: D.
in šifrirni sistem, kot so: https://www.dyne.org/software/tomb/
In tudi uporabnike kletk v vašem domu, če se povežejo s tty:
http://olivier.sessink.nl/jailkit/index.html#intro
https://operativoslinux.wordpress.com/2015/02/21/enjaular-usuarios-en-linux/ (enostaven način)
Veliko bolje in varneje je šifrirati celoten datotečni sistem.
Pri naslednji vadnici o varnosti v Linuxu jo bom upošteval: D.
Dobro bi bilo tudi govoriti o utrjevanju jedra s sysctl, aktivirati naključno kopico in Exec-Shield v jedru, ki ga podpira, omogočiti dostop do dmesg in datotečnega sistema / proc, zagnati revizijski demon, omogočiti zaščito TCP SYN, omeji dostop do / dev / mem, onemogoči možnosti sklada TCP / IP, ki so lahko nevarne ali nevarne za sistem (preusmeritev, odmev, usmerjanje vira), uporabimo pam_cracklib za uporabnike, da ustvarijo močna gesla, pomembnost uporaba sistema MAC, kot so Tomoyo, AppArmor in SELinux.
zelo uporabno!!!! le tisto, kar sem iskal, hvala 🙂
Dobrodošli, prijatelj :).
Če uporabljate apache, ne škodi dodajanja pravil z mod_rewrite, da se izognete botom. Zelo uporabno
http://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/
in za nginx obstaja kakšen trik ali konfiguracija?
V debian 8 je datoteka / etc / ssh / sshd_config že aktivna s protokolom 2, funkcija PermitRootLogin pa ima možnost brez gesla (root lahko vnesete samo s ključem za preverjanje pristnosti in iz računalnika, ki ima zasebni ključ)
pd v požarnem zidu debian 8 je že prispel, zaradi česar je ufw majhen
Ste že videli Ferm? Všeč mi je, kako so pravila definirana.
http://ferm.foo-projects.org/download/examples/webserver.ferm
No, vesel sem, da Debian 8 uporablja požarni zid, ker je zelo zelo dober ...
Pazite se fail2ban, da napadalec izdeluje pakete z ip lokalnega računalnika in zelo olajša DOS.
Človek, lokalni računalniški IP in povratni IP so izključeni s seznama Fail2ban.
V nasprotnem primeru bi lahko imeli lažne pozitivne učinke.
Dobra in zelo učinkovita priporočila ... Seveda v strežniškem okolju in če gostujemo na spletnem mestu, to vključuje dodatne korake…. Trenutno vzdržujemo projekt JackTheStripper, ki ni nič drugega kot bash Script, ki pripravlja in varuje strežnik z GNU / Linuxom po najboljših varnostnih praksah za spletne aplikacije ... projekt lahko poznate na http://www.jsitech.com/jackthestripper ....
Lep skript, čeprav rad obdržim vrednost kernel.randomize_va_space = 2
Dobra stvar je, da ga lahko pred zagonom nekoliko prilagodite svojim potrebam ..... A Hello ...
Pozdravljeni, moj prispevek se seveda ukvarja z zavarovano bazo in vsak se mora zaščititi bolj ali manj, odvisno od storitev, ki jih je namestil v svoje sisteme, kot so LAMP ali FTP, SFTP, BIND in dolga itd.
V naslednjem prispevku o varnosti bom obravnaval ta vprašanja.
Hvala za pozitivne povratne informacije :).
@petercheco, vaši vodniki so odlični, dobro bi bilo voditi enkripcijski sistem za sistem FreeeBSD, ne vem, kdaj boš naredil drugi del o FreeBSD, o konfiguraciji in prilagajanju namizja, o požarnem zidu, o ustvarjanju in konfiguriranju brezžičnega omrežja.
Zdravo prijatelj,
Sem nekoliko zaposlen, kot kaže redko objavljanje, vendar bom to imel v mislih za naslednjo objavo na FreeBSD.
Pozdrav :).
To se je izravnalo v komentarjih, nimam pojma, o čem govoriš, nihče xD
Odličen članek!
Ta varnostni ukrep pomeni kakršno koli omejitev opreme?
Ne ... Običajna uporaba sistema sploh ni omejena.
In smešno (tragično) je, da kot smo pravkar videli pri strojih Lenovo, če je vdelana programska oprema biosa posežena z zlonamerno programsko opremo, ničesar, kar počnete, ni pomembno.
Dokler uporabljate Windows, ki ga je vnaprej namestil proizvajalec ...
napaka: ne pozabite, da so ga namestili v programsko opremo bios, to pomeni, da se začne s sistemom ob vsakem ponovnem zagonu, pred operacijskim sistemom, pred demoni, najprej in vam ne dovoli ničesar storiti proti njemu. napadov je malo mogoče storiti, zato je ideja uefi načeloma dobra.
Zanimiv članek, natančneje ga bom prebral danes popoldne. Hvala vam.
Ni za kaj :). Vesel sem.
Odličen članek, vse popoldne sem se zabaval ob branju. Čas, ki si ga vzamete, da zelo natančno razložite vse, je cenjen
Lep pozdrav iz Čila
Carlos
Živjo Carlos,
Najlepša hvala :).
Če se zdi, da so stroji Lenovo, če je vdelana programska oprema biosa posredovana z zlonamerno programsko opremo, stroji (prenosni računalnik-namizni računalnik) proizvajalec vedno namesti z operacijskim sistemom Windows, glede na zgoraj navedeno ... ali post… .petercheco?
Tudi če vsega tega ne storimo, deluje, saj je zlonamerna programska oprema narejena za Windows in ne za Linux.
V iptables manjka veliko stvari in trikov, na primer vrtoglavica nmap, tako da od vseh odprtih vrat, ki laže, da gre za računalnik z operacijskim sistemom ttl in velikostjo okna, scanlogd, apache mod security, grsec, selinux ali kaj podobnega. Zamenjajte ftp s sftp, omejite število povezav na IP na vsako storitev v vratih X, da se izognete temu, da nas pred DDoS pustijo brez storitev, pa tudi blokirajte IP-je, ki pošljejo več toliko UDP toliko sekund.
S primeri, ki ste jih predstavili, bi nov uporabnik ob branju ponorel ... Ne morete vsega postaviti v eno objavo. Naredil bom več zapisov :).
Na tej točki dobim napako v archlinuxu, ko dajem zagonsko storitev, dam ji status in to izide:
sudo systemctl status fail2ban
● fail2ban.service - storitev Fail2Ban
Naloženo: naloženo (/usr/lib/systemd/system/fail2ban.service; omogočeno; prednastavitev prodajalca: onemogočeno)
Aktivno: neuspešno (rezultat: omejitev zagona) od petka 2015-03-20 01:10:01 CLST; Pred 1 s
Dokumenti: man: fail2ban (1)
Proces: 1695 ExecStart = / usr / bin / fail2ban-client -x start (koda = izhod, status = 255)
20. marec 01:10:01 Gundam systemd [1]: Storitve Fail2Ban ni uspelo zagnati.
20. marec 01:10:01 Gundam systemd [1]: enota fail2ban.service je vstopila v neuspešno stanje.
20. marec 01:10:01 Gundam systemd [1]: fail2ban.service ni uspel.
20. marec 01:10:01 Gundam systemd [1]: zahteva za zagon se ponovi prehitro za fail2ban… ice
20. marec 01:10:01 Gundam systemd [1]: Storitve Fail2Ban ni uspelo zagnati.
20. marec 01:10:01 Gundam systemd [1]: enota fail2ban.service je vstopila v neuspešno stanje.
20. marec 01:10:01 Gundam systemd [1]: fail2ban.service ni uspel.
Namig: nekatere vrstice so bile elipsirane, uporabite -l, da se prikazujejo v celoti.
nekaj pomoči? D:
Živjo, če ste omogočili fail2ban s systemctl enable fail2ban.service in systemctl start fail2ban.service, bo težava v konfiguraciji zapor, ki ste jo naredili. Preverite zapor in preverite, ali je vse v redu.
pozdrav
Peter Češki
Najprej dobra vadnica. Marsikaj manjka, vendar ste se osredotočili na osnove.
shini-kire, preverite /var/log/fail2ban.log
Lep pozdrav.
Hvala @Maykel Franco :).
dobro,
fail2ban naj ga namestijo na domači računalnik ali je to bolj za strežnike ???
Hvala.
Namesto za strežnike, če pa uporabljate wifi, do katerega dostopa več ljudi kot vas, je dobro ...
Pozdravljeni, prijatelj, zdi se mi dobra varnostna objava v delu kratkega požara v distribucijah Gnu / Linux.Ta komentar pišem, ker to počnem v distribuciji Ubuntu 14.04, saj vem, da je že v 15.04, kaj se zgodi je naslednja težava, ki jo nano /etc/fail2ban/jail.local vnesem kot root in v delu sshd nimam vizualizacije in shranim. V delu z imenom [DEFAULT] razkomentiramo in spremenimo #bantime = 3600 in
V delu [sshd] uvedemo omogočeno = res, tako da ostane tako:
#enabled = res
omogočeno = res
Zdi se, da tega sshd ni, ker delam s prejšnjo različico, hvala