Awọn igbesẹ lati ni aabo VPS wa

Ikẹkọ yii fihan bii o ṣe le mura ati ni aabo Server Ikọkọ Aladani (VPS) pẹlu Debian GNU / Linux. Ṣaaju ki a to bẹrẹ, awọn nkan kan ni a ro:

  1. O ni ipele agbedemeji ti imọmọ pẹlu GNU / Linux.
  2. VPS wa fun lilo ti ara ẹni eyiti a ni iraye si nipasẹ SSH.
  3. VPS ni ipv4 250.250.250.155 ti ita ti ifiṣootọ ati olupese wa ti o ni bulọọki 250.250.0.0/16. (1)
  4. Ninu VPS wa a yoo ni http, https ati awọn iṣẹ ssh nikan ti o ṣiṣẹ fun iraye lati ita.
  5. DNS ti ita ko ni muu ṣiṣẹ nitori o ṣe nigbagbogbo ni apejọ olupese wa. (2)
  6. Yoo ṣiṣẹ bi alabojuto.

Fifi sori

Gẹgẹbi igbesẹ akọkọ, jẹ ki a ṣe imudojuiwọn olupin naa ki o fi sori ẹrọ diẹ ninu awọn idii ti a yoo nilo:

# imudojuiwọn imotara & igberaga igbesoke # aptitude -RvW fi sori ẹrọ dropbear gesftpserver sslh iptables-jubẹẹlo ulogd fail2ban nginx-light apache2-utils dnsutils telnet ghostscript poppler-utils zip unzip unrar-free p7zip-full less multitail tee mc

Eto

Bayi a yoo ṣẹda olumulo iṣẹ kan. Ṣiṣẹ bi gbongbo lori olupin kan jẹ ailewu, nitorinaa a yoo kọkọ ṣẹda olumulo pataki kan:

oluṣe adduser usermod -aG sudo oniṣẹ

Aṣẹ akọkọ ṣẹda olumulo oluṣe, ekeji ṣafikun rẹ si ẹgbẹ sudo, eyi ti yoo gba ọ laaye lati ṣiṣe awọn ohun elo bi gbongbo.

Ṣatunṣe awọn igbanilaaye fun awọn olumulo nla

Bi lati ṣiṣẹ ni igbagbogbo a yoo lo olumulo naa oniṣẹ ti ṣẹda tẹlẹ, a nilo lati ṣatunṣe awọn aṣayan ipaniyan pipaṣẹ bi superuser, fun eyiti a ṣe pipaṣẹ wọnyi:

visudo

Atilẹba aṣẹ yii ngbanilaaye iyipada faili naa / ati be be lo / sudoers; ninu eyiti o yẹ ki a ni awọn ila wọnyi:

Awọn aseku env_reset, timestamp_timeout = 0% sudo GBOGBO = (GBOGBO: GBOGBO) GBOGBO

Ni laini akọkọ aṣayan ti wa ni afikun si awọn iye aiyipada timestamp_timeout eyiti ngbanilaaye lati ṣeto akoko ipari (ni iṣẹju) ti ọrọ igbaniwọle nigbati wọn ba pa aṣẹ sudo. Aṣayan jẹ 5, ṣugbọn eyi jẹ igba ailewu fun awọn idi meji:

  1. Ti o ba jẹ airotẹlẹ a fi kọnputa wa silẹ ki o to ọrọ igbaniwọle pari, ẹnikan le ṣe aṣẹ kan bi gbongbo laisi awọn ihamọ eyikeyi.
  2. Ti o ba jẹ pe nipasẹ aimọ a ṣiṣe ohun elo kan tabi iwe afọwọkọ ti o ni koodu irira ṣaaju ki ọrọ igbaniwọle naa pari, ohun elo naa le ni iraye si eto wa bi alabojuto, laisi ifohunsi wa lasan.

Nitorinaa lati yago fun awọn eewu, a ti ṣeto iye si odo, iyẹn ni pe, nigbakugba ti a ba pa aṣẹ sudo, ọrọ igbaniwọle yoo ni lati tẹ sii. Ti a ba ṣeto iye odi kan bi -1, ipa naa ni pe ọrọ igbaniwọle ko pari, eyiti yoo ṣe abajade idakeji ohun ti a fẹ.

Ninu ila keji o ti ṣalaye pe ẹgbẹ sudo le ṣe eyikeyi aṣẹ lori eyikeyi kọmputa, eyiti o jẹ deede, botilẹjẹpe o le ṣe atunṣe. (3) Awọn ti o wa fun irọrun jẹ ila laini atẹle lati yago fun nini titẹ ọrọ igbaniwọle:

% sudo GBOGBO = (GBOGBO: GBOGBO) NOPASSWD: GBOGBO

Sibẹsibẹ, bi a ti ṣalaye ṣaaju eyi jẹ eewu, ati nitorinaa ko ṣe iṣeduro.

Mu bẹrẹ iṣẹ bẹrẹ

Fun awọn idi aabo, a yoo tun mu atunbere ṣiṣẹ ni lilo apapo bọtini Konturolu alt piparẹ, fun eyi ti a gbọdọ fi ila yii kun ninu faili naa / ati be be lo / inittab:

ca: 12345: ctrlaltdel: / bin / iwoyi "Ctrl + Alt + Del ti jẹ alaabo."

Rọpo OpenSSH pẹlu DropBear

Pupọ VPS wa pẹlu fifi sori ẹrọ OpenSSH, eyiti o wulo pupọ, ṣugbọn ayafi ti a ba nilo lati lo gbogbo iṣẹ-ṣiṣe ti OpenSSH, awọn omiiran fẹẹrẹfẹ wa fun VPS, gẹgẹbi dropbear, eyiti o jẹ igbagbogbo to fun lilo deede. Sibẹsibẹ, idibajẹ ti ohun elo yii ni pe ko wa pẹlu olupin SFTP ti o ṣopọ, ati pe idi ni idi ti a fi bẹrẹ package gesftpserver.

Lati tunto Dropbear, a yoo yipada faili naa / ati be be lo / aiyipada / dropbear nitorinaa o ni awọn ila meji wọnyi:

NO_START = 0 DROPBEAR_EXTRA_ARGS = "- w -p 127.0.0.1:22 -I 1200 -m"

Laini akọkọ lasan n jẹ ki iṣẹ naa ṣiṣẹ, ati keji ṣe awọn ohun pupọ:

  1. Yago fun wiwọle root.
  2. O jẹ ki iṣẹ naa tẹtisi lori ibudo 22 ti wiwo agbegbe (a yoo ṣalaye idi ti nigbamii).
  3. Ṣeto akoko idaduro (iṣẹju 20).

SSLH

Port 22 (SSH) jẹ olokiki daradara ati pe gbogbogbo jẹ ọkan ninu akọkọ ti awọn olosa n gbiyanju lati rufin, nitorinaa a yoo lo ibudo 443 (SSL) dipo. O ṣẹlẹ pe a lo ibudo yii fun lilọ kiri ayelujara to ni aabo lori HTTPS.

Fun eyi a yoo lo package sslh, eyiti kii ṣe nkan diẹ sii ju multiplexer ti o ṣe itupalẹ awọn apo-iwe ti o de ibudo 443, ati awọn ipa-ọna wọn si inu si iṣẹ kan tabi omiiran da lori boya iru ijabọ ni SSH tabi SSL.

SSLH ko le tẹtisi lori wiwo nibiti iṣẹ miiran ti ngbọ tẹlẹ, eyiti o jẹ idi ti a fi ṣe ki Dropbear gbọ tẹlẹ lori wiwo agbegbe.

Bayi ohun ti a nilo lati ṣe ni tọka si sslh ni wiwo ati ibudo nipasẹ eyiti o yẹ ki o tẹtisi ati ibiti o ṣe atunṣe awọn apo-iwe ti o da lori iru iṣẹ naa, ati fun eyi a yoo ṣe atunṣe faili iṣeto / ati be be lo / aiyipada / sslh:

DAEMON = / usr / sbin / sslh DAEMON_OPTS = "- olumulo sslh - tẹtisi 250.250.250.155:443 --ssh 127.0.0.1:22 --ssl 127.0.0.1:443 --pidfile / var / run / sslh / sslh. pid "RUN = bẹẹni

Lakotan, a tun bẹrẹ awọn iṣẹ naa:

iṣẹ ssh stop && service dropbear start && service sslh tun bẹrẹ

Lẹhin aṣẹ ti tẹlẹ, igba aabo wa yoo ṣee ṣe idilọwọ, ninu idi eyi o to lati wọle lẹẹkansi, ṣugbọn ni akoko yii pẹlu olumulo iṣẹ ati lilo ibudo 443. Ti a ko ba da igba naa duro, o ni imọran lati pa a ati bẹrẹ lẹẹkansi. pẹlu awọn iye to yẹ.

Ti ohun gbogbo ba ṣiṣẹ ni deede, a le tẹsiwaju ṣiṣẹ bi gbongbo ati pe ti a ba fẹ, aifi OpenSSH kuro:

sudo su - ọgbọn -r purge openssh-server

Ogiriina

Ohun miiran ti a yoo ṣe ni ya awọn àkọọlẹ kuro lati ogiriina sinu faili lọtọ /var/log/firewall.log lati dẹrọ onínọmbà siwaju, eyiti o jẹ idi ti a fi sori ẹrọ package ulogd ni ibẹrẹ. Fun eyi a yoo satunkọ faili naa /etc/logd.conf lati ṣatunṣe apakan ti o yẹ:

[LOGEMU] faili = "/ var / log / firewall.log" sync = 1

Nigbamii ti, a yoo yipada faili iyipo igbasilẹ / ati be be lo / logrotate / ulogd lati tọju iyipo lojoojumọ (pẹlu ọjọ) ati fipamọ awọn iyọ ifunpọ ninu itọsọna naa / var / log / ulog /:

/var/log/ulog/*.log /var/log/firewall.log {ojoojumọ dateext missingok compress delaycompress awọn iwe afọwọkọ ṣẹda 640 root adm postrotate /etc/init.d/ulogd reload mv /var/log/firewall.log-* .gz / var / log / ulog / endcript}

Lẹhinna a yoo ṣẹda awọn ofin netfilter nipa ṣiṣe awọn atẹle:

IPT = $ (eyiti iptables) IPEXT = 250.250.250.155 IPEXTBLK = 250.250.0.0 / 16 IPBCAST = 255.255.255.255 $ IPT -F $ IPT -X $ IPT -Z $ IPT -A INPUT -i lo -j ACCEPT $ IPT - P INPUT DROP $ IPT -P DODO DOP $ IPT -P OUTPUT Gba $ IPT -A INPUT -m ipinle - ipinlẹ INVALID -j ULOG --filogi-prefix IN_INVALID $ IPT -A INPUT -p igmp -j ULOG --ulog -prefix IN_IGMP $ IPT -A INPUT -m pkttype --pkt-type broadcast -j ULOG --ulog-prefix IN_BCAST $ IPT -A INPUT -m pkttype --pkt-type multicast -j ULOG --ulog-prefix IN_MCAST $ IPT -A SIWAJU -j ULOG --ulogi-prefix SIWAJU $ IPT -N ICMP_IN $ IPT -A INPUT!  -i lo -p icmp -j ICMP_IN $ IPT -A ICMP_IN -p icmp -f -j ULOG --filogi-prefix IN_ICMP_FRAGMENTED $ IPT -A ICMP_IN -p icmp -m icmp -m ipari!  --gbara 28: 1322 -j ULOG --filogi-prefix IN_ICMP_INVALIDSIZE $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit-above 4 / sec --hashlimit-mode srcip --hashlimit-srcmask 24 - -hashlimit-name icmpflood -j ULOG --ulog-prefix IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit-upto 64kb / min --hashlimit-mode srcip --hashlimit-srcmask 24 - hashlimit -orukọ icmpattack -j ULOG --ulog-prefix IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m u32!  --u32 "0x4 & 0x3fff = 0x0" -j ULOG --ulogi-prefix IN_ICMP_ATTACK $ IPT -A ICMP_IN -p icmp -m icmp!  -iccho-type echo-request -m state - Ipinle TITUN -j ULOG --fipofi-akọọlẹ IN_ICMP_INVALID $ IPT -A ICMP_IN -p icmp -m icmp - iru iwoyi-iru iwoye -j ULOG --ulog- prefix IN_ICMP $ IPT -A ICMP_IN -p icmp -m icmp -icmp-type echo-request -m limit --limit 1 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp -icmp-type echo-reply -m limit --limit 2 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp - iru-irin-ajo-ti ko le de ọdọ -m opin - opin 2 / sec -limit-nwaye 4 -j Gba $ IPT -A ICMP_IN -p icmp -m icmp - iru-akoko-pupọ-opin aala - ipari 2 / iṣẹju-aaya -limit-nwaye 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp --icic-type parameter-problem -m limit --limit 2 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -j IPADABO $ IPT -N UDP_IN $ IPT -A INPUT!  -i lo -p udp -j UDP_IN $ IPT -A UDP_IN!  -i wo!  -p udp -f -j ULOG --ulogi-prefix IN_UDP_FRAGMENTED $ IPT -A UDP_IN -p udp -m udp -idaraya ipari 53 -m!  -ipa 28: 576 -j ULOG --filogi -logi IN_UDP_DNS_INVALIDSIZE $ IPT -A UDP_IN -p udp -m udp --dport 53 -m -state - Ipinle TITUN -j ULOG --filogi-prefix IN_UDP_DNSREQUEST $ IPT - A UDP_IN -p udp -m udp --dport 53 -m -state - Ipinle TITUN -j REJECT - kọ-pẹlu icmp-ibudo-ti ko le de ọdọ $ IPT -A UDP_IN -p udp -m udp!  --iṣowo 53!  -s $ IPEXTBLK!  -d $ IPBCAST -m ipinle - Ipinle TITUN -j ULOG --ulogi-prefix IN_UDP $ IPT -A UDP_IN -p udp -m udp -m ipinle - IPINLE ESTABLISHED, RELATED -j Gba $ IPT -A UDP_IN -j PADA $ IPT -N TCP_IN $ IPT -A INPUT!  -i lo -p tcp -j TCP_IN $ IPT -A TCP_IN!  -i wo!  -p tcp -f -j ULOG --ulog-prefix IN_TCP_FRAGMENTED $ IPT -A TCP_IN -p tcp -m tcp --sport ipo 53 -m -Ijọba ti ṢE, TI RELATED -m gigun!  --gbara 513: 1500 -j ULOG --filogi -logi IN_TCP_DNS_INVALIDSIZE $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m ipinle - Ipinle TITUN -j ULOG --filogi-iwe IN_TCP_DNS $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m ipinle - Ipinle TITUN -j REJECT - kọ-pẹlu icmp-ibudo-ti ko le de ọdọ $ IPT -A TCP_IN -p tcp -m tcp -m multiport!  - awọn ibudo 80,443 -m ipinle - Ipinle TITUN -j ULOG --ulogi-prefix IN_TCP $ IPT -A TCP_IN -p tcp -m tcp -m multiport --dports 80,443 -m ipinle - Ipinle TITUN -m hashlimit - hashlimit -upto 4 / sec --hashlimit-nwaye 16 --hashlimit-mode srcip --hashlimit-orukọ navreq -j ACCEPT $ IPT -A TCP_IN -p tcp -m tcp -m multiport --dports 80,443 -m state - state ESTABLISHED -m konnlimit!  -connlimit-loke 16 -j Gba $ IPT -A TCP_IN -p tcp -m tcp -m multiport! 

Pẹlu iṣeto tẹlẹ, VPS wa yẹ ki o ni aabo ni aabo, ṣugbọn ti a ba fẹ a le ni aabo diẹ diẹ sii, fun eyiti a le lo diẹ ninu awọn ofin to ti ni ilọsiwaju.

Kii ṣe gbogbo VPS gba laaye fifi sori ẹrọ ti awọn modulu afikun fun netfilter, ṣugbọn ọkan ti o wulo pupọ ni ps, eyiti o fun ọ laaye lati yago fun awọn iwoye ibudo. Lailorire pe module yii ko ṣepọ sinu netfilter nipasẹ aiyipada, nitorinaa o ṣe pataki lati fi awọn idii kan sii ati lẹhinna kọ modulu naa:

aptitude -RvW fi sori ẹrọ iptables-dev xtables-addons-orisun modulu-oluranlọwọ module-oluranlọwọ --verbose - ipo-aifọwọyi-fi sori ẹrọ xtables-addons-orisun

Lọgan ti o ti ṣe loke, a le ṣafikun ofin bi eleyi:

iptables -A INPUT -m psd --psd-weight-threshold 15 --psd-idaduro-iloro 2000 --psd-lo-ibudo-iwuwo 3 --psd-hi-ports-weight 1 -j ULOG --ulog- ìpele IN_PORTSCAN

Ofin iṣaaju tumọ si pe a yoo ṣẹda counter kan ti yoo pọ si nipasẹ 3 ni igbakugba ti a ba ṣe igbiyanju lati wọle si ibudo kekere kan ju 1024 lọ ati nipasẹ 1 nigbakugba ti a ba ṣe igbiyanju lati wọle si ibudo ti o ga ju 1023 lọ, ati nigba ti iwe kika yii Gigun 15 ni akoko ti o kere ju awọn aaya 20, awọn idii yoo forukọsilẹ nipasẹ agbo bi igbiyanju ni ibudo oko oju omi. Awọn apo-iwe le tun di asonu ni ẹẹkan, ṣugbọn ninu ọran yii a pinnu lati lo kuna2ban, eyiti a yoo tunto nigbamii.

Lọgan ti a ṣẹda awọn ofin, a gbọdọ ṣe awọn iṣọra kan lati jẹ ki wọn duro ṣinṣin, bibẹkọ ti a yoo padanu wọn nigbati a tun bẹrẹ olupin naa. Awọn ọna pupọ lo wa lati ṣe eyi; Ninu ẹkọ yii a yoo lo package iptables-jubẹẹlo ti a fi sori ẹrọ ni ibẹrẹ, eyiti o tọju awọn ofin sinu /etc/iptables/rules.v4 y /etc/iptables/rules.v6 fun ipv6.

iptables-fipamo> /etc/iptables/rules.v4

Ni otitọ, botilẹjẹpe lilo ipv6 ni Kuba ko iti di ibigbogbo, a le ṣẹda awọn ofin ipilẹ diẹ daradara:

IPT = $ (eyi ti ip6tabili) $ IPT -P INPUT DOP $ IPT -P SIWAJU DOP $ IPT -P OUTPUT ACCEPT $ IPT -A INPUT -i lo -j Gba $ IPT -A INPUT! -i lo -m ipinle - IPILE ṢE IPILẸ, RELATED -j Gba gbigba IPT silẹ

Awọn ofin wọnyi le tun ṣe itẹramọṣẹ:

ip6tabulu-fipamọ> /etc/iptables/rules.v6

Lakotan fun aabo nla, a nu iforukọsilẹ ti ogiriina ki o tun bẹrẹ awọn iṣẹ naa:

iwoyi -n> /var/log/firewall.log iṣẹ iṣẹ atunbere iṣẹ ulogd tun bẹrẹ iṣẹ iptables-jubẹẹlo atunbere

Nginx

A yoo lo Nginx bi olupin ayelujara kan, nitori awọn VPS maa n ni iye ti o dinku ti Ramu ti a fiwe si olupin gidi, nitorinaa o rọrun ni gbogbogbo lati ni ohun fẹẹrẹfẹ ju Apache.

Ṣaaju tito leto Nginx, a yoo ṣẹda ijẹrisi kan (ko si ọrọ igbaniwọle) fun lilo lori HTTPS:

cd / ati be be / nginx openssl genrsa -des3 -out cert.key 4096 cp -v cert.key cert.key.original openssl req -new -key cert.key -out cert.csr openssl rsa -in cert.key.original - jade cert.key openssl x509 -req -days 365 -in cert.csr -signkey cert.key -out cert.crt

Ni kete ti a ti ṣe eyi, a yoo ṣẹda faili ọrọ igbaniwọle fun olumulo "elusuario":

htpasswd -c .htpasswd olumulo

Nigbamii ti, a yoo yipada faili naa / ati be be lo / nginx / awọn aaye-wa / aiyipada lati ṣeto awọn ayanfẹ aaye aiyipada. O le dabi eleyi:

olupin {olupin olupin_name localhost; itọka atọka.html index.htm default.html default.htm; gbongbo / var / www; ipo / {# ṣeto aṣẹ ti ijerisi ati oju-iwe lati kojọpọ, ti a ko ba ri URI try_files $ uri $ uri / /inin.html; }} olupin {gbọ 127.0.0.1:443; server_name localhost; itọka atọka.html index.htm default.html default.htm; gbongbo / var / www; ssl lori; ssl_certificate cert.crt; ssl_certificate_key cert.key; ssl_session_timeout 5m; # Jeki HTTPS nikan lori TLS (ni aabo diẹ sii ju SSL lọ) ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # fi ààyò fun awọn ciphers agbara-giga [HIGH], # gbe awọn ciphers agbara alabọde [alabọde] si opin atokọ naa, # mu awọn ciphers agbara-kekere [LOW] (40 ati awọn bits 56) # mu awọn ciphers ṣiṣẹ pẹlu awọn alugoridimu ti ilu okeere [ EXP] # mu asan ciphers [eNULL], laisi ìfàṣẹsí [aNULL], SSL (awọn ẹya 2 ati 3) ati DSS (nikan gba awọn bọtini to 1024 bitts) ssl_ciphers Giga: + Alabọde: LOW :! EXP:! ANULL :! eNULL :! SSLv3 :! SSLv2 :! DSS; # Fẹ awọn ọna fifi ẹnọ kọ nkan olupin naa (nipa aiyipada awọn onibara lo) ssl_prefer_server_ciphers on; ipo / {# jeki ìfàṣẹsí auth_basic "Wọle"; auth_basic_user_file /etc/nginx/.htpasswd; # ṣeto aṣẹ ti ijerisi ati koodu oju-iwe lati fifuye, ti URI ko ba ri gbiyanju_files $ uri $ uri / = 404; # gba laaye ẹda ti itọka kan fun awọn olumulo ti o jẹrisi autoindex lori; autoindex_exact_size pa; autoindex_localtime lori; }}

A ṣayẹwo pe iṣeto ni o tọ:

nginx -t

Lakotan, a tun bẹrẹ iṣẹ naa:

iṣẹ ntinx tun bẹrẹ

Ikuna2Ban

Ṣaaju ki o to bẹrẹ lati tunto Fail2Ban, fun aabo nla a da iṣẹ naa duro ki o nu iforukọsilẹ naa:

fail2ban-alabara da iwoyi -n> /var/log/fail2ban.log

Nigbamii ti, a ṣẹda faili iṣeto /etc/fail2ban/jail.local pẹlu akoonu aṣa wọnyi:

# Faili iṣeto aṣa /etc/fail2ban/jail.local # [DEFAULT] akoko wiwa = 43200; Wakati 12 bantime = 86400; 1 ọjọ maxretry = 3; idinamọ yoo waye lẹhin igbiyanju kẹrin [ssh] ti mu ṣiṣẹ = eke [nginx-auth] ti mu ṣiṣẹ = asẹ otitọ = iṣẹ nginx-auth = iptables-multiport [orukọ = NoAuthFailures, ibudo = "http, https"] logpath = / var / log / nginx * / * error * .log [nginx-badbots] enabled = àlẹmọ gidi = apache-badbots action = iptables-multiport [name = BadBots, port = "http, https"] logpath = / var / log / nginx * / * wiwọle +.log bantime = 4; Ọsẹ 604800 maxretry = 1 [nginx-wiwọle] ṣiṣẹ = àlẹmọ otitọ = nginx-login action = iptables-multiport [name = NoLoginFailures, ibudo = "http, https"] logpath = / var / log / nginx * / * access *. wọle bantime = 0; Awọn iṣẹju 1800 [nginx-noscript] ṣiṣẹ = iṣẹ tootọ = iptables-multiport [orukọ = NoScript, ibudo = "http, https"] àlẹmọ = nginx-noscript logpath = /var/log/nginx*/*access*.log maxretry = 30 [nginx-aṣoju] ti ṣiṣẹ = iṣẹ otitọ = iptables-multiport [orukọ = NoProxy, ibudo = "http, https"] àlẹmọ = nginx-proxy logpath = /var/log/nginx*/*access*.log bantime = 0 ; Ọsẹ 604800 maxretry = 1 [ogiriina] ṣiṣẹ = iṣẹ tootọ = iptables-multiport [orukọ = Ogiriina] àlẹmọ = ogiriina logpath = /var/log/firewall.log maxretry = 0

Lọgan ti a ba ti ṣe eyi, a ṣẹda ninu itọsọna naa /etc/fail2ban/filters.d/ awọn faili wọnyi:

# /etc/fail2ban/filter.d/nginx-auth.conf # Auth filter # Awọn bulọọki IPs ti o kuna lati jẹrisi nipa lilo ijẹrisi ipilẹ # [Definition] failregex = ko si olumulo / ọrọ igbaniwọle ti a pese fun ijẹrisi ipilẹ. * alabara: olumulo. * ko ri ninu. * alabara: olumulo. * aṣiṣe aṣiṣe. * alabara: ignregex =
# /etc/fail2ban/filter.d/nginx-login.conf # Ajọwọle iwọle # Awọn bulọọki IP ti o kuna lati jẹrisi nipa lilo akọọlẹ ohun elo wẹẹbu ni oju-iwe # Ṣayẹwo àkọọlẹ wiwọle fun HTTP 200 + POST / sessions => log log in # ] failregex = ^ -. * POST / awọn akoko HTTP / 1 \ .. "200 ignregex =
# /etc/fail2ban/filter.d/nginx-noscript.conf # Noscript filter # Block IPs n gbiyanju lati ṣe awọn iwe afọwọkọ bii .php, .pl, .exe ati awọn iwe afọwọkọ ẹlẹya miiran. # Awọn ipele fun apẹẹrẹ # 192.168.1.1 - - "GET /something.php # [Definition] failregex = ^ -. * Gba. * (\. Php | \ .asp | \ .exe | \ .pl | \ .cgi | \ scgi) ignoreregex =
# /etc/fail2ban/filter.d/proxy.conf # Aṣoju aṣoju # Block IPs igbiyanju lati lo olupin bi aṣoju. # Awọn ipele fun apẹẹrẹ # 192.168.1.1 - - "Gba http://www.something.com/ # [Definition] failregex = ^ -. * Gba http. * Ignoreregex =
# /etc/fail2ban/filter.d/firewall.conf # Firewall filter # [Definition] failregex = ^. * IN_ (INVALID | PORTSCAN | UDP | TCP |). * SRC = . * $ ignoreregex =

Lakotan, a bẹrẹ iṣẹ naa ati fifuye iṣeto ni:

fail2ban-service -b fail2ban-client gbee

Ijerisi

Gẹgẹbi igbesẹ ti o kẹhin, a le wo awọn igbasilẹ pẹlu iru -f o multitail – tẹle-gbogbo. Ni otitọ, ohun elo igbehin nfunni ni anfani ti o fun ọ laaye lati wo awọn faili pupọ ni akoko kanna ati pese ifamihan ipilẹ sintasi.

Ni ọran ti a ko ba tunto iroyin imeeli kan ninu VPS, o ni imọran lati mu ifiranṣẹ ikilọ kan ti o han nigbati o bẹrẹ multitail, fun eyi ti a yoo ṣe pipaṣẹ wọnyi:

iwoyi "check_mail: 0"> ~ / .multitailrc

Ni otitọ, a le ṣe inagijẹ daradara (4) lati wo awọn akọọlẹ ni kiakia pẹlu aṣẹ kukuru, fun apẹẹrẹ, "flog":

inagijẹ flog = 'multitail -follow-all /var/log/firewall.log /var/log/fail2ban.log'

1) Iwọnyi jẹ awọn iye itanjẹ.
2) Ṣiṣe awọn iṣẹ miiran jẹ rọrun ni kete ti o ba ni oye bi o ṣe n ṣiṣẹ.
3) Fun awọn alaye diẹ sii, ṣiṣe awọn sudoers eniyan.
4) Yiyan ni a le fi kun si faili ~ / .bash_aliases


Awọn akoonu ti nkan naa faramọ awọn ilana wa ti awọn ilana olootu. Lati jabo aṣiṣe kan tẹ nibi.

Awọn asọye 6, fi tirẹ silẹ

Fi ọrọ rẹ silẹ

Adirẹsi imeeli rẹ yoo ko le ṣe atejade.

*

*

  1. Lodidi fun data naa: Miguel Ángel Gatón
  2. Idi ti data naa: SPAM Iṣakoso, iṣakoso ọrọ asọye.
  3. Ofin: Iyọọda rẹ
  4. Ibaraẹnisọrọ data: Awọn data kii yoo ni ifọrọhan si awọn ẹgbẹ kẹta ayafi nipasẹ ọranyan ofin.
  5. Ibi ipamọ data: Alaye data ti o gbalejo nipasẹ Awọn nẹtiwọọki Occentus (EU)
  6. Awọn ẹtọ: Ni eyikeyi akoko o le ni opin, gba pada ki o paarẹ alaye rẹ.

  1.   msx wi

    Diẹ ninu awọn nkan ti o nifẹ wa, + 1

  2.   yukiteru wi

    @Hugo laini yii ni iṣeto:

    ssl_protocols SSLv3 TLSv1;

    Emi yoo mu SSLv3 kuro nitori pe ilana yẹn ko ni aabo mọ, paapaa ni Debian Jessie, ọpọlọpọ awọn iṣẹ ti ni atunto lati yago fun lilo ilana yẹn fun idi naa.

    Alaye lori koko ọrọ nibi:

    https://www.linode.com/docs/security/security-patches/disabling-sslv3-for-poodle
    http://disablessl3.com/

    1.    Hugo wi

      Ero naa kii ṣe lati funni ni awọn iṣẹ akọkọ lori HTTPS, ṣugbọn lati ṣalaye bi o ṣe le lo ibudo 443 fun SSH laisi pipadanu iṣeeṣe lilo rẹ fun HTTPS ti o ba jẹ dandan, ṣugbọn o ṣeun fun ikilọ naa.

      Lonakona Mo ti ṣe imudojuiwọn nkan lati ṣe atunṣe iṣeto nginx diẹ diẹ ati lairotẹlẹ pẹlu diẹ ninu awọn asọye lati ṣalaye awọn nkan diẹ diẹ sii pẹlu eyi ti awọn ilana fifi ẹnọ kọ nkan, ati lati ṣatunṣe diẹ ninu awọn aṣiṣe kekere.

  3.   Daniel PZ wi

    O ṣeun pupọ fun ẹkọ nla yii, ni bayi Emi yoo fi sii ni iṣe! : D, Jeki o Lati Lainos, o ma ya mi lẹnu, Ẹ kí lati Perú.

  4.   Deandekuera wi

    O ṣeun pupọ fun pinpin.

  5.   Fernando wi

    Itọsọna ti o dara pupọ ati pe o wa lati awọn okuta iyebiye ni bayi pe Mo bẹrẹ ni bulọọgi yii ṣugbọn paapaa diẹ sii ni bayi pe Mo fẹrẹ gbe vps mi akọkọ ati ṣi pẹlu ọpọlọpọ awọn iṣoro ṣugbọn nkan yii ti mu mi kuro ninu ọpọlọpọ awọn iyemeji, ọpẹ ati ikini