View Single Post
Staro 12.02.2024., 18:21   #12
tomek@vz
Premium
Moj komp
 
tomek@vz's Avatar
 
Datum registracije: May 2006
Lokacija: München/Varaždin
Postovi: 4,779
Citiraj:
Autor Neo-ST Pregled postova
Sad ste mi dali misliti.
Odakle uopće da počnem ?
Da bih napravio sve ovo šta ste napisali, morao bih upisati neki fakultet.

Fuckas fax , to tamo neces naucit. Google, vrijeme i zdrava logika u ruke

1. Blokada SSH pristupa root korisniku - Fail2Ban takoder nije na odmet
2. Omogucavanje SSH pristupa samo sa valjanim kljucem - nikako lozinkom - jos bolje omogucavanje pristupa samo specificnom korisniku.
3. Uzmi Suricatu kao IDS - ispravna konfiguracija naravno je tu kljucna
4. Kad pristupas izvana lokalnoj instanci na internoj mrezi nikad nemoj defaultne portove koristiti - uvijek nesto tipa port 9443 ili slicno pa kroz router forwardaj interno na 443 na lokalnoj masini koja hosta sadrzaj
5. Uzmi negdje kak spada domenu - vecina nudi opciju valjanog certifikata - u protivnom mozes LetsEncrypt koristiti.
6. Implementiraj modsecurity u Apache - modevasive nije na odmet
7. Vecina Linux distri podrzavaju neku vrstu audit sustava - koristi jednog od njih (psacct/sysstat kombinacija na primjer)
8. Rootkit AntiMalware nije na odmet (rkhunter)
9. Lynis ti je prijatelj - koristi ga da bi lakse prepoznao slabe tocke sustava i ako ima potrebe ocvrsnuo sustav
10. Ispravno konfiguriran Selinux ili Apparmor su jako korisni.
11. Oldie but goldie - Firewalld/iptables/eptables Firewall koji pusta van samo nuzno i blokira sve ostalo je uvijek izuzetno bitna stavka
12. Sysctl Hardening je opcija ali me vec par puta spasio mjesece debugginga.


Ima tu jos ohoho toga al ovo je za pocetak vise nego dovoljno.


Evo ti par SSH postavki za pocetak (/etc/sshd/sshd_config):


Code:
            AllowUsers korisnik
            AllowTcpForwarding no
            Protocol 2
            Compression no
            IgnoreRhosts yes
            HostbasedAuthentication no
            PermitEmptyPasswords no
            X11Forwarding no
            ciphers aes128-ctr,aes192-ctr,aes256-ctr
            ClientAliveInterval 300
            ClientAliveCountMax 0
            LogLevel VERBOSE
            MaxAuthTries 3
            MaxSessions 2
            TCPKeepAlive no
            AllowAgentForwarding no
Kernel/Sysctl optimizacija (etc/sysctl.conf):


Code:
            fs.protected_fifos=2
            fs.protected_regular=2
            fs.suid_dumpable=0
            kernel.dmesg_restrict=1
            kernel.exec-shield=1
            kernel.kptr_restrict=2
            kernel.perf_event_paranoid=3
            kernel.randomize_va_space=2
            kernel.sysrq=0
            kernel.yama.ptrace_scope=3
            net.core.bpf_jit_harden=2
            net.ipv4.conf.all.accept_redirects=0
            net.ipv4.conf.all.forwarding=0
            net.ipv4.conf.all.log_martians=1
            net.ipv4.conf.all.send_redirects=0
            net.ipv4.conf.default.accept_redirects=0
            net.ipv4.conf.default.accept_source_route=0
            net.ipv4.conf.default.log_martians=1
            net.ipv4.conf.default.send_redirects=0
            net.ipv4.icmp_ignore_bogus_error_responses=1
            net.ipv6.conf.all.accept_redirects=0
            net.ipv6.conf.default.accept_redirects=0
Ovo volim (/etc/security/limits.conf):


Code:
            * hard core 0
Audit pravila (/etc/audit/rules.d/audit.rules):


Code:
            -a exit,always -F arch=b64 -F euid=0 -S execve
            -a exit,always -F arch=b32 -F euid=0 -S execve
Ima tu toga jos al treba i razumijevati sto se ubacuje u konfiguraciju. Slijepi copy/paste je uvijek losa ideja.



Zadnje izmijenjeno od: tomek@vz. 12.02.2024. u 18:32.
tomek@vz je offline   Reply With Quote