Domov / Ovládanie PC / Ochrana hviezdičky pred neoprávneným pripojením. Konfigurácia fail2ban na zabezpečenie hviezdičky. Nastavte obmedzené povolenia pre adresáre

Ochrana hviezdičky pred neoprávneným pripojením. Konfigurácia fail2ban na zabezpečenie hviezdičky. Nastavte obmedzené povolenia pre adresáre

Dátum: 09:56 28.07.2018

Na internete je veľa príbehov o hackoch s hviezdičkami a následnom trestaní zo strany operátora. Niekde bol príbeh o malej spoločnosti v Austrálii, ktorej sa podarilo priletieť za 15 000 – 20 000 dolárov. Myslím, že nikto nechce byť v takejto situácii. Je oveľa lepšie, bez čakania na problémy, vykonať nejaký súbor opatrení, ktoré výrazne znížia počet možností hackovania a minimalizujú nebezpečenstvo.

Neštandardný port namiesto 5060

Ak existuje technická možnosť - VŽDY zmeňte štandardný port 5060 na akýkoľvek iný. Čím viac sa líši od štandardu, tým lepšie. Útočníci veľmi rýchlo nájdu vašu hviezdičku jednoduchým skenovaním portov na rôznych adresách. Stane sa to veľmi rýchlo - prvé pokusy uhádnuť heslo som objavil už 3 dni po umiestnení hviezdičky na internet.
Port je nakonfigurovaný v súbore sip.conf v sekcii:

bindport=5060 => bindport=5172

Po takýchto akciách sa počet zberačov zníži takmer na nulu.

Nastavenie brány firewall

Zakazujeme sa pripojiť k portu Asterisk zvonku – tým sa odreže možnosť uhádnuť heslá. Niektorí poskytovatelia SIP telefónie však nefungujú, ak nemôžu sami dosiahnuť váš port 5060 – v tomto prípade musíte povoliť prístup k tomuto portu zo servera tohto poskytovateľa. Jedného dňa som niekoľko dní rozmýšľal, prečo nie je spojenie s Beeline, potom som otvoril ich IP prístup na môj port 5060 a spojenie sa objavilo.

Vypnite hovory hostí

Ak nepotrebujete prijímať hovory bez registrácie, nezabudnite vypnúť nasledujúcu možnosť v sip.conf:
dovoliť hosť=áno => dovoliť hosť=nie ; Povoliť alebo odmietnuť hovory hostí (predvolené nastavenie je áno)

Zakázať upozornenie na heslo

Takmer každý má účty s hviezdičkou ako 100, 200, 700 atď. V predvolenom nastavení hviezdička uvádza jednu chybu nesprávneho hesla pre existujúci účet a druhú pre neexistujúci účet. S pomocou špeciálnych softvér na prelomenie hesiel, môže útočník rýchlo pretriediť všetky krátke čísla a uhádnuť heslá iba pre existujúce účty, ktoré odpovedali „nesprávne heslo“. Aby sme tomu zabránili, zmeníme možnosť v sip.conf:
alwaysauthreject = nie => alwaysauthreject = áno
Po takomto nastavení hviezdička poskytne rovnaký odskok pre akékoľvek nesprávne autorizácie.

Pre účty používame zložité heslá

Akékoľvek heslo sa dá uhádnuť, otázkou je len čas. Keďže zariadenia sip sa konfigurujú raz a na dlhú dobu, nešetrite zložitými heslami. Pre seba používam dlhé heslá s kombináciami veľkých a malých písmen + číslic takto: secret=f64GCD74ssdZ42

VŽDY odstráňte všetky heslá, ktoré sa zhodujú s prihlasovacími údajmi. Toto sú prvé heslá používané pre heslá.

Použitie odmietnutia/povolenia pre účty

Povinný moment! Zadajte nasledujúce riadky pre všetky účty, ktoré neimplikujú pripojenie z internetu:

Zamietnuť=0.0.0.0/0.0.0.0 povolenie=10.1.1.1/24 povolenie=10.1.2.1/24

Kde 10.1.1.1, 10.1.2.1 sú rozsahy lokálnych adries, z ktorých sa vytvorí spojenie. Pripojenie z iných adries nebude akceptované hviezdičkou.

Nastavenie limitu hovorov

Call-limit=1

Nepoužívajte zbytočne predvolené rozšírenie

Nepotrebujeme to. Všetko, čo by malo byť predvolené:

Predĺžiť => _X.,1,Zavesiť

Nerobíme jedno univerzálne pravidlo pre všetky hovory

Povedz nie pravidlám formulára:

Rozšíriť => _X.,1,Vytočiť(SIP/$(EXTEN)@operátor)

Jasne zapíšeme všetky potrebné kombinácie čísel prenášaných operátorovi. Ak nie je potrebné použiť medzinárodná komunikácia- vobec jej nepopisuj pravidla. Takmer všetky prípady hackovania sa využívajú na hovory do zahraničia.

;Rozšírenie tiesňových služieb => _0X,1, Vytočiť (SIP/$(EXTEN)@operátor) predĺženie => _0X,n, Zavesiť ;Predĺženie Moskvy => _8495XXXXXXX,1, Vytočiť (SIP/$(EXTEN)@operátor) predĺženie => _8495XXXXXXX,n, predĺženie zavesenia => _8499XXXXXXX,1, vytočenie (SIP/$(EXTEN)@operátor) predĺženie => _8499XXXXXXX,n, rozšírenie pre zavesenie => _XXXXXXX,1, vytočenie (SIP/$(EXTEN)@operátor ) exten => _XXXXXXX,n, Zavesiť

Teraz sa veľmi často musíme vysporiadať s rôznymi typmi útokov na Hviezdička a analógy. Nesprávna konfigurácia a neznalosť jednoduché pravidlá znamená pre podnik, ktorý používa, finančné straty PBX hviezdička.

V tomto článku sa pozrieme na počiatočné bezpečnostné mechanizmy Hviezdička 13 po inštalácii a nebude brať do úvahy bezpečnostné mechanizmy Linuxu. Tu je niekoľko pravidiel, ktoré vám pomôžu udržať váš systém v bezpečí:

1. Heslá a prihlasovacie údaje odolné voči hacknutiu na všetkých sieťových zariadeniach (Hviezdička, IP telefóny, VoIP brány).

Heslá pre účty SIP, správcov, správcov Asterisk a sieťové zariadenia musí pozostávať aspoň z 13 znakov (písmená, číslice, špeciálne znaky, zmena malých a veľkých písmen). Nepoužívajte prihlasovacie údaje v systéme ako napr admin, správca, manažér atď.

2. Správna konfigurácia SIP v Asterisk - sip.conf.

Na ochranu pred skenermi by ste mali zmeniť štandardný port SIP, zakázať hovory a registrácie hostí, prekrývajúce sa sady, prihlásiť sa na odber informácií o stave kanála atď. Celý popis parametre všeobecný sip.conf popísané v článku. Nižšie je sip.conf, ktorý som nakonfiguroval pre server Asterisk s komentármi:
context=default ;Štandardne priradiť nepoužívaný kontext pre odchádzajúce hovory allowguest=no ;Zakázať pripojenia hosťa (bez autentifikácie) match_auth_username=no ;Zakázať použitie poľa „username“ namiesto „from“ allowoverlap=no ;Nepovoliť jednociferné dialing;allowtransfer= no ;Zakázať používanie sféry preposielania=CUCM11.5(1)SU3 ;Použiť naše vlastné Doménové meno server (skryje tú hviezdičku) ;domainsasrealm=no ;recordonfeature=automixmon bindport=9050 ;Zmena signalizačného portu SIP udpbindaddr=0.0.0.0 ;Predvolená adresa UDP tcpenable=áno ;Povoliť podporu TCP (zrazu máte Avdayad 0.0.0.0.0. Predvolená adresa TCP;tlsenable=no ;tlsbindaddr=0.0.0.0 ;tcpauthtimeout = 30 ;tcpauthlimit = 100 ;websocket_enabled = true ;websocket_write_timeout = 100 transport=udp ;Predvolený prenos srvtookup_s_pedant=yes= DNS tos_audio=ef ;tos_video=af41 ;tos_text=af41 ;cos_sip=3 ;cos_audio=5 ;cos_video=4 ;cos_text=3 ;maxexpiry=3600 ;minexpiry=60 ;expaultexpiry= 120 ;expaultexpiry= 6=submin 3 3600 ;maxforwards=70 qualifyfreq=60 ;Nastaviť kontrolu dostupnosti hostiteľa na 60 sekúnd;qualifygap=100 ;qualifypeers=1 ;keepalive=60 ;notifymimetype=text/plain ;buggymwi=no ;mwi_from=asterisk_voicemail ;vmexten; disallow=all ;Zakázať všetky kodeky allow=a zákon ;Povoliť Alaw allow=ulaw ;Povoliť Ulaw ;autoframing=áno ;mohinterpret=predvolené ;mohsuggest=predvolené ;parkinglot=plaza language=ru ;Nastaviť ruský jazyk v systéme ako predvolený tonezone=ru ;Definovať globálny tónový pás v Ru relaxdtmf=yes ; Povoliť rozpoznávanie zle rozpoznaných signálov DTMF;trustrpid = nie ;sendrpid = áno rpid_update=yes ;Okamžité upozornenie na opačný server o zmenách stavu linky;trust_id_outbound = nie ;prematuremedia=no ;progressinband=no callerid=CUCM11.5(1)SU3 ;Ak niekde nemáme nastavené CallerID - urobíme to symbolicky useragent=Cisco-SIPGateway/IOS-12.x ;A ako PBX máme Cisco-SIPGateway ;promiscredir = no ;usereqphone = no dtmfmode=rfc2833 ;Nastav tlačidlo stlačiť tón na telefóne;compactheaders = yes videosupport=yes ;Povoliť podporu videohovorov;textsupport=no maxcallbitrate=2048 ;Maximálna bitová rýchlosť videohovoru authfailureevents=yes ;Nastaviť stav partnera, ak sa nemôže prihlásiť=odmietnuté vždyauthr eject=yes ;Ak bola žiadosť o autentifikáciu odmietnutá, tak odpoveď NEPOVEDÁ, že užívateľ bol zadaný nesprávne, ochrana enumerácie užívateľských mien auth_options_requests=yes ;Pri odosielaní OPTION a INVITE vyžadujeme autorizáciu ;accept_outofcall_message = nie ;outofcall_message_context_message = messages a =yes ;Povoliť autentifikáciu žiadosti MESSAGE ;g726nonstandard = yes ;outboundproxy=proxy.provider.domain:8080 ;supportpath=yes ;rtsavepath=yes ;matchexternaddrlocally = yes ;dynamic_exclude_static = yes ;contactdeny=0. 0.0.0/0.0.0.0 ;contactpermit=172.16.0.0/255.255.0.0 ;contactacl=named_acl_example ;rtp_engine=hviezdička ;regcontext=sipregistrations regextenonqualify=yes, *Ak je povolená kvalita tohto rozšírenia pre peer a prekročí sa regcontext ; legacy_useroption_parsing=yes ;send_diversion=no ;shrinkcallerid=yes ;use_q850_reason = nie ;refer_addheaders=yes autocreatepeer=no ;Zakázať registráciu UAC bez autentifikácie t1min=200 ;Minimálny čas od 00 do 15 hostiteľských správ= 32000 rtptimeout= 600 ;Prerušenie hovoru, ak po 600 sekundách nie je žiadna aktivita RTP mediálneho toku rtpholdtimeout=300 ;Prerušenie hovoru, ak po 300 sekundách nie je žiadna aktivita RTP mediálneho toku v režime Hold;rtpkeepalive= ;session-timers=originate ; session-expires=600 ;session-minse=90 ;session-refresher=uac ;sipdebug = yes ;recordhistory=yes ;dumphistory=yes ;allowsubscribe=no ;subscribecontext = predvolene ;notifyringing = nie ;notifyhold = áno ;notifycid = áno počítadlo hovorov =áno ;Povoliť počítadlá na volania t38pt_udptl=yes ;Povoliť podporu pre T.38 s korekciou chýb FEC faxdetect=yes ;Povoliť detekciu CNG a T.38 nat=auto_force_rport,auto_comedia ;Nat nájdeme automaticky a mediálne dáta na porte, z ktorého ich Asterisk prijal a nie čo bolo prijaté v SDP ;media_address = 172.16.42.1 ;subscribe_network_change_event = yes ;icesupport = yes directmedia=no ;Priama prevádzka RTP priamo medzi partnermi, obchádzanie Asterisk ;directrtpsetup=yes ;directmediadeny=0.0.0.0.0.10 ;directmediadeny=0.0.0.0.0.1 ;directmedia /16 ; directmediaacl=acl_example ;ignoresdpversion=áno sdpsession=SIP hovor ;Zmena názvu relácie SDP sdpowner=CiscoSystemsSIP-GW-UserAgent ;Zmena používateľských polí v reťazci vlastníka SDP ;encryption=no ;forceav_taglen=80 ; ;rtcachefriends= yes ;rtsavesysname=yes ;rtupdate=yes ;rtautoclear=yes ;ignoreregexpire=yes ;domain=customer.com,customer-context ;allowexternaldomains=no ;allowexternaldomains=no ;=fromtld_a=moja doména. áno; Povoliť použitie jbforce = no jbmaxsize=200 ;Nastavte maximálnu veľkosť vyrovnávacej pamäte RTP na 200 ms;jbresyncthreshold = 1000 ;jbimpl = pevné ;jbtargetextra = 40 ;jblog = nie

3. Používame neštandardný IAX port.

K tomu v súbore /etc/asterisk/iax.conf v sekcii zmeniť parameter bindport=4569 na parameter bindport=9069

4. Asterisk musí byť spustený ako iný používateľ (nie root). Ako to urobiť, je napísané v článku.

5. Nastavte povolené adresy IP alebo siete pre rozšírenia SIP.

zamietnuť=0.0.0.0/0.0.0.0 ; Zakázať všetko povolenie=10.0.0.0/255.0.0.0 ; Povoliť známe povolenie=172.20.0.0/255.255.0.0 ; Povoliť známe povolenie=192.168.0.0/16 ; Povoliť známe povolenie

6. Nastavte limit simultánnych hovorov.

call-limit=2 ;Nastavte hodnotu na 2, aby používateľ mohol uskutočniť prevod

7. Pre každého používateľa nastavte rôzne pravidlá smerovania pre odchádzajúce smerovanie.

Je potrebné odstrániť všetky štandardne používané trasy a priradiť svoje vlastné s rozdielom v kontextoch:

  • Miestne súpravy
  • Miestne hovory
  • Zónové hovory
  • Diaľkové hovory
  • Medzinárodné hovory
Úplný zoznam kódov ABC, DEF možno prevziať z oficiálneho zdroja Rossvyaz.
Pre predvolenú trasu urobte exten => _X.,1,Hangup()

8. Použite IPtables

9. Použite Fail2Ban

10. Všetky telefónne zariadenia zobrazujeme v samostatnej Voice VLAN. Tu je potrebné napínať sieťárov.

11. Osobitnú pozornosť venujeme medzinárodnému smerovaniu 8.-10.

Nastavíme len smery používané v organizácii a podľa potreby ich pridáme (rozšírime). Upozorňujeme tiež e-mailom, ak používateľ alebo útočník použil neznámu medzinárodnú destináciu a nastavíme limit pre každé spojenie a súčasný počet hovorov. V článku je popísané hotové riešenie na ochranu smeru 8-10.

12. Zakážte nepoužívané kanály a služby.

Napríklad, ak nepoužívate protokol MGCP alebo chudá, zakážte tieto moduly v súbore /etc/asterisk/modules.conf:
noload => pbx_gtkconsole.so noload => chan_alsa.so noload => chan_console.so noload => res_ari.so noload => chan_dahdi.so noload => codec_dahdi.so noload => res_ari_device_states.so noload => res_ari_application > res_ari_channels.so noload => res_ari_events.so noload => res_ari_playbacks.so noload => res_ari_endpoints.so noload => res_ari_recordings.so noload => res_ari_bridges.so noload => res_ari_so>asterisk.so noload => resspari_noasterisk.so noload .so noload => cdr_mysql.so noload => res_phoneprov.so noload => cdr_odbc.so noload => cdr_pgsql.so ;======================= ==== ; PBX -- noload => pbx_ael.so ; Kanály -- noload => chan_mgcp.so noload => chan_skinny.so noload => chan_unistim.so noload => chan_pjsip.so noload => chan_modem.so noload => chan_modem_aopen.so noload => chan_modem_bestdata.so noload => chan_modem_bestdata.4modem. so noload => chan_alsa.so noload => chan_oss.so ; Kodeky -- noload => codec_lpc10.so ; Formáty -- noload => format_au.so noload => format_gsm.so noload => format_h263.so noload => format_ilbc.so noload => format_jpeg.so ; Aplikácie -- noload => app_image.so noload => app_zapateller.so noload => app_zapbarge.so noload => app_zapscan.so noload => res_config_ldap.so

13. Obmedzte vzdialený prístup k IP-PBX pomocou brány firewall.

Ak plánujete poskytnúť vzdialený prístup pre oprávnených zamestnancov je najlepšie organizovať to pomocou servery VPN(napr. OpenVPN).

Ako viete, asterisk je aplikácia (server) pre IP telefóniu. To znamená, že umožňuje klientom, ktorí sú k nemu pripojený, volať medzi sebou a do vonkajšieho sveta pomocou (okrem iného) liniek telefónne spojenie. To predstavuje nasledujúce riziká:

  1. klienti sú identifikovaní pomocou prihlasovacieho mena/hesla a (zvyčajne) podľa IP adresy. Zároveň je možné si heslo vyzdvihnúť (podľa zložitosti skôr či neskôr, ale v každom prípade je to možné) a veľmi často nie sú obmedzenia na IP adresy ani zďaleka také prísne, ako by sme chceli. (v ideálnom prípade by mal mať každý klient svoju jedinečnú IP adresu)
  2. prichádzajúce hovory z internetu (napríklad z iných serverov s hviezdičkou). Pri týchto pripojeniach je všetko komplikovanejšie, keďže hviezdička (v základnej konfigurácii) neumožňuje zobrazenie IP adries, z ktorých sa pripojenie uskutočňuje.

Program fail2ban v spojení s firewallom (napríklad iptables) a správne nakonfigurovanou hviezdičkou (ktorá zobrazuje všetky informácie v protokoloch vrátane IP adries klientov a iných serverov) môže účinne blokovať pokusy o pripojenie a hádanie hesla.

Pred spustením konfigurácie je potrebné nainštalovať iptables a fail2ban. Tiež iptables už musia byť nakonfigurované (a umožniť pripojeniam hviezdičku), aby bolo možné nakonfigurovať fail2ban! Ako nastaviť iptables si môžete prečítať tu: Nastavenie iptables tak, aby hviezdička fungovala. Fail2ban môžete nainštalovať aj pred inštaláciou samotnej hviezdičky, v takom prípade (aspoň teoreticky) počas inštalácie najnovšie verzie hviezdička zistí nainštalovaný fail2ban a automaticky ho nakonfiguruje. Avšak:

  1. Otázka zabezpečenia IP telefónie nie je vždy zvážená pred inštaláciou hviezdičky. To znamená, že s najväčšou pravdepodobnosťou chcete nainštalovať fail2ban na systém s už nainštalovanou (a nakonfigurovanou) hviezdičkou.
  2. Nie vo všetkých prípadoch funguje automatická konfigurácia vôbec, nieto aby fungovala správne (a začala blokovať všetky útoky proti hviezdičke).

Nastavenie logovania s hviezdičkou

V prvom rade má zmysel nastaviť logovanie pomocou hviezdičiek, aby sa informácie okamžite začali zhromažďovať vo formáte a forme, ktorú potrebujeme. Ak to chcete urobiť, v konfiguračnom adresári hviezdičky (štandardne je to /etc/asterisk) nájdite súbor logger.conf a vykonajte v ňom nasledujúce zmeny: odkomentujte (odstráňte bodkočiarku na začiatku riadku):

Formát dátumu=%F %T ; Formát dátumu ISO 8601

Je to potrebné, aby hviezdička zapísala dátum do denníkov v správnom formáte:
rok-mesiac-deň hodiny:minúty:sekundy

Počnúc verziou 10 programu asterisk môžete povoliť bezpečnostný rámec Asterisk. Ak to chcete urobiť, v súbore logger.conf nájdite a odkomentujte (alebo pridajte) riadok:

bezpečnosť => bezpečnosť

Tento riadok na ľavej strane šípky označuje názov súboru, do ktorého sa udalosti uložia, a na pravej strane úrovne (typy udalostí), ktoré sa uložia. AT tento príklad udalosti súvisiace s úrovňou zabezpečenia (a iba s nimi) sa uložia do súboru s názvom security v priečinku s hviezdičkami.
Samozrejme, po vykonaní zmien je potrebné, aby si hviezdička znovu prečítala konfiguráciu. Ak to chcete urobiť, môžete buď znova načítať službu hviezdičky, alebo iba konfiguráciu denníka (opätovné načítanie denníka z CLI s hviezdičkou).

Potom súbor s názvom security. Nezabudnite pre tento súbor nastaviť rotáciu protokolov (rovnako ako pre ostatné protokoly s hviezdičkou)!

Nastavenie pravidiel filtrovania

Teraz musíme vytvoriť filter, ktorý bude extrahovať potenciálne nebezpečné udalosti zo všeobecného prúdu správ s hviezdičkou (nesprávne používateľské meno / heslo, pokus o prihlásenie z neoprávnenej IP adresy atď., atď.). Zároveň musíme takéto potenciálne nebezpečné udalosti nielen odhaliť, ale aj izolovať odtiaľ IP adresu, z ktorej bola akcia vykonaná. To znamená, že nehľadáme len určité riadky v súboroch udalostí s hviezdičkou, ale nastavujeme pravidlá filtrovania.
Pravidlá filtrovania je možné zapísať do súboru /etc/fail2ban/filter.d/asterisk.conf. Tu je ukážka obsahu tohto súboru:

# Konfiguračný súbor Fail2Ban # # # $Revízia: $250 # # Čítanie bežných prefixov. Ak sú k dispozícii nejaké prispôsobenia -- prečítajte si ich z # common.local #before = common.conf #_daemon = hviezdička # Možnosť: failregex # Poznámky.: regex, aby sa zhodovali so správami o zlyhaní hesiel v protokolovom súbore. # hostiteľ musí zodpovedať skupine s názvom "hostiteľ". Značka " " môže byť # použitá na štandardné párovanie IP/hostname a je len aliasom pre # (?:::f(4,6):)?(?P \S+) # Hodnoty: TEXT # # Používa hviezdička 1.8 Host: Formát portu, ktorý sa tu odráža failregex = UPOZORNENIE.* .*: Registrácia z „.*“ zlyhala pre „ :.*“ - Nesprávne heslo OZNÁMENIE.* .*: Registrácia z „.*“ pre „ :.* zlyhala " - Nenašiel sa žiadny zodpovedajúci partner UPOZORNENIE.* .*: Registrácia z ".*" zlyhala pre " :.*" - Nezhoda používateľského mena/autorizačného mena OZNÁMENIE.* .*: Registrácia z ".*" pre " :.*" zlyhala - Zariadenie sa nezhoduje s OZNÁMENÍM ACL.* .*: Registrácia z ".*" zlyhala pre " :.*" - Nejde o lokálnu doménu OZNÁMENIE.* .*: Registrácia z ".*" pre " :.*" zlyhala - Partner sa nemá registrovať OZNÁMENIE.* .*: Registrácia z ".*" zlyhala pre " :.*" - chyba ACL (povoliť/zamietnuť) OZNÁMENIE.* .*: Registrácia z ".*" pre " " zlyhala - Nesprávne heslo OZNÁMENIE.* .*: Registrácia z „.*“ zlyhala pre „ “ – nenašiel sa žiadny zodpovedajúci partner OZNÁMENIE.* .*: Registrácia z „.*“ zlyhala pre „ “ - Nezhoda používateľského mena/autorizačného mena OZNÁMENIE E.* .*: Registrácia z ".*" zlyhala pre " " - Zariadenie sa nezhoduje s OZNÁMENÍM ACL.* .*: Registrácia z ".*" zlyhala pre " " - Nejde o lokálnu doménu OZNÁMENIE.* .*: Registrácia od ".*" zlyhalo pre " " - Partner sa nemá zaregistrovať OZNÁMENIE.* .*: Registrácia z ".*" zlyhala pre " " - Chyba ACL (povoliť/zamietnuť) OZNÁMENIE.* .*: Registrácia z "\ ".*\".*" zlyhala pre " :.*" - nenašiel sa žiadny zodpovedajúci partner OZNÁMENIE.* .*: Registrácia z "\".*\".*" zlyhala pre " :.*" - OZNÁMENIE s nesprávnym heslom. * .*: Žiadna registrácia pre peer ".*" \(od \) OZNÁMENIE.* .*: Zlyhala autentifikácia hostiteľa MD5 pre ".*" (.*) OZNÁMENIE.* .*: Nepodarilo sa overiť používateľa .*@ . * OZNÁMENIE.* sa nepodarilo overiť ako ".*"$ OZNÁMENIE.* .*: Odosielanie falošného odmietnutia overenia pre zariadenie .*\<.>

Vo verzii a starších sa používajú reťazce ako avi nad reťazcom, keďže počnúc verziou sa v protokoloch objavovali informácie o čísle portu, ktoré sa vo vyššie uvedenom variante nenachádza, zohľadňuje starú aj novú verziu, takže v ňom nemusíte nič meniť

Pre verzie a vyššie, ak ste povolili alebo povolili protokolovanie, nezabudnite nastaviť pravidlá filtrovania týchto protokolov

Pravidlá filtrovania je možné zapísať do súboru. Tu je ukážka obsahu tohto súboru

Nastavenie izolátorov pre

Teraz musíme vytvoriť popisy takzvaných izolátorov pre tých, ktorí naviažu naše filtre, aby vysvetlili, v ktorých súboroch by sa tieto riadky mali hľadať a čo potom robiť

Ak to chcete urobiť, otvorte súbor

  1. Uistite sa, že neexistujú alebo nie sú zahrnuté ďalšie pravidlá súvisiace s Pre tento rok stačí vykonať vyhľadávanie v súbore podľa názvu bez úvodzoviek kontroly, aby ste sa uistili, že ak takéto pravidlá existujú pre každý z nich, vlastnosť je nastavená
  2. Ak je verzia menšia alebo nechcete používať protokoly, dôrazne sa odporúča používať protokoly, potom budete musieť vytvoriť iba jedno pravidlo, inak budete musieť vytvoriť pravidlá

Pravidlo č.

Toto pravidlo je potrebné vytvoriť pre všetky verzie. Môžete vytvoriť nové pravidlo alebo upraviť ktorékoľvek z existujúcich, no nové pravidlo ste deaktivovali, pretože v našom príklade bude použité v spojení s bude volané a bude aplikované na súbor v ktorom sú uložené všetky hlavné typy udalostí s hviezdičkou.

настраиваемизоляторыдляосновныхсобытийправиловключенофильтркоторымбудетпользоватьсяправилоназываетсяназваниефильтраэтоимяфайлавкаталогеккакомуфайлулогамастерискаприменятьфильтрдляпоискапотенциальноопасныхсобытийколичествопотенциальноопасныхсобытийнайденныхфильтромдлясрабатываниядействиянакакойпериодвременивсекундахприменятьдействиезакакойпериодвременивсекундахискатьвпотенциальноопасныесобытиячтоделатьеслифильтробнаружилатакузапериодсекундвлогахобнаруженопотенциальноопасныхдействийсодногоадресаблокируемвсепортыдляэтогоипосылаемписьмодлясписокадресовподсетейдлякоторыхвсепотенциальноопасныесобытияигнорируются

Pravidlo č.

Toto pravidlo bude fungovať iba vtedy, ak je verzia alebo novšia a tiež ak je povolené protokolovanie, pozri vyššie. Môžete tiež vytvoriť nové pravidlo alebo upraviť ktorékoľvek z existujúcich, no nové pravidlo zakážete, pretože v našom príklade sa používa spolu s vôľou a toto pravidlo sa použije na analýzu súborom v adresári hlavného denníka rizík

настраиваемизоляторыдлясобытийбезопасностиправиловключенофильтркоторымбудетпользоватьсяправилоназываетсяназваниефильтраэтоимяфайлавкаталогеккакомуфайлулогамастерискаприменятьфильтрдляпоискапотенциальноопасныхсобытийколичествопотенциальноопасныхсобытийнайденныхфильтромдлясрабатываниядействиянакакойпериодвременивсекундахприменятьдействиезакакойпериодвременивсекундахискатьвпотенциальноопасныесобытиячтоделатьеслифильтробнаружилатакузапериодсекундвлогахобнаруженопотенциальноопасныхдействийсодногоадресаблокируемвсепортыдляэтогоипосылаемписьмодлясписокадресовподсетейдлякоторыхвсепотенциальноопасныесобытияигнорируются

spustiť

Teraz je potrebné spustiť alebo reštartovať a ak je to potrebné, napríklad ešte nebolo spustené

Ak ho chcete spustiť, musíte ho najskôr spustiť, spustite nasledujúci príkaz

Ak chcete reštartovať, spustite nasledujúci príkaz

Ak chcete skontrolovať, či bol úspešne spustený a či boli načítané pravidlá, spustite nasledujúci príkaz

a ak existuje druhé pravidlo

Ak chcete zobraziť zoznam pravidiel, spustite nasledujúci príkaz

V prípade, že ste práve nainštalovali alebo sa nezabudnite uistiť, že sú nakonfigurované tak, aby sa automaticky spustili pri zavádzaní systému

Kontrola práce

Hlavnou vecou v procese overovania je mať po ruke iný počítač alebo lokálny prístup k serveru, aby ste sa v prípade zablokovania vašej adresy mohli pripojiť a odstrániť toto blokovanie

Je potrebné skontrolovať fungovanie odkazu, pretože aj keď ste všetko správne nakonfigurovali alebo skopírovali, môže dôjsť k mnohým kombináciám udalostí, v dôsledku ktorých nebudú fungovať zámky, ktoré ste nakonfigurovali

Postupnosť akcií na kontrolu fungovania prepojenia

  1. Uistite sa, že máte nakonfigurované spúšťania pri spúšťaní počítača
  2. Ak máte pre ňu nakonfigurované pravidlá, dôrazne odporúčame otestovať fungovanie každého z nich jednotlivo.Za týmto účelom deaktivujte jedno z pravidiel, napr.
  3. reštartujte počítače, skontrolujte to
    1. služby sú spustené
    2. jedno z pravidiel je povolené a druhé je zakázané

      V tomto prípade sa pre zakázané pravidlo zobrazí správa

      a pre zahrnutú správu formulára

  4. Spustite klienta bez samotného servera z iného počítača a zadajte nesprávne údaje na autorizáciu. Adresa pripojenia musí byť adresa servera. Skúste sa prihlásiť raz alebo viackrát. Počet autorizácií, po ktorých je adresa zablokovaná, je uvedený v parameter pre každé pravidlo samostatne.
  5. Ak ste klienta spustili na tom istom počítači, na ktorý ste sa pripojili k serveru a ak bol správne nakonfigurovaný, vaša adresa je zablokovaná a nemôžete sa pripojiť k serveru z tohto počítača, skontrolujte toto, pripojte sa k inému počítaču alebo lokálne a pokračujte v spúšťaní príkazy
  6. Spustite commandview

    pre povolené pravidlo a uistite sa, že adresa, ku ktorej sa klient pripojil, je v zozname blokovaných

  7. Teraz, analogicky s akciami z odseku, odblokujte napríklad druhé pravidlo a zablokujte prvé
  8. Postupujte podľa krokov od bodu k bodu iba namiesto reštartovania počítača, čo môžete urobiť aj na reštartovanie služby.Potom môže byť adresa počítača, na ktorom ste spustili klienta, okamžite odomknutá, ale musíte spustiť opäť v bode na kontrolu fungovania druhého pravidla.
  9. Keď si obe pravidlá otestujete samostatne, nezabudnite ich povoliť pre parameter for aj for. Potom samozrejme nezabudnite znova načítať službu
  10. A posledný bod, ak ste dokončili alebo predchádzajúce body sú dostatočne rýchle na niekoľko minút, potom sa môže zdať, že po povolení oboch pravidiel, následnom reštarte, budete opäť blokovaní adresou klienta, ktorý bol spustený
    Buď opatrný

riadenie pravidiel

Dočasne zakážte blokovanie adries

Ak to chcete urobiť, musíte použiť službu Najprv zobrazíme zoznam pravidiel na konzole a potom vyberieme potrebné na ich odstránenie zo zákazu

Ak chcete zobraziť zoznam pravidiel, zadajte príkaz

Zobrazí sa vám takáto správa

Máme záujem odstrániť zo zákazu adresu, ktorá, ako vidíme, je v reťazci pravidiel pod názvom napíšeme príkaz

V prípade úspešného vykonania príkazu sa nezobrazia žiadne správy a ak teraz príkaz spustíme znova

uvidíme, že adresa zmizla z blokovania, hoci zostáva v blokovaní. Zároveň sa môžeme opäť pripojiť k serveru

Natrvalo zakázať blokovanie adries

Aby nedošlo k zablokovaniu určitej adresy alebo viacerých adries, bez ohľadu na to, koľko neúspešných pokusov o uhádnutie hesla a iných nezákonných akcií spáchali alebo je potrebné vykonať dodatočné nastavenia v súbore

Každé pravidlo súboru môže obsahovať parameter, ktorý špecifikuje zoznam adries, ktoré sú zahrnuté v bielom zozname pre toto pravidlo. Keďže môžu existovať dve pravidlá, všimnite si, že to vaše musí byť zapísané v oboch pravidlách

Parameter má nasledujúci tvar

To znamená, že v tomto prípade môžete predpísať podsiete aj jednotlivé adresy, biely zoznam padá a

Odblokovanie testovanej adresy

Počas overovania správnosti nastavení klienta opakovane spúšťate, aby ste otestovali prácu na blokovaní budúcich útokov na internete a v priebehu následnej práce možno budete musieť z času na čas vykonať akcie, dôsledky ktoré môžu blokovať zo strany.

Existujú spôsoby, ako tento problém vyriešiť

  1. Zadajte adresu do pravidiel v zozname Niekedy však nemusí byť žiaduce vykonávať napríklad pravidelné testovanie práce
  2. ОбычновремяэтодлительностьинтервалавсекундахзакотороесобытиеатакаподборпаролядолжноповторитьсяразпослечегобанвступитвсилунамногоменьшечемэтовремябанавсекундахпоистечениикоторогоадресудаляетсяизсписказаблокированныхНапримервыставляетсявминутачасЛибочасаденьилидажебольшеИтакдалееПоэтомуимеетсмыслсделатьпаузудлительностьюнеменеечемсмоментапоследнеготестированияизабаниванияВашегоадресапослечегоперезагрузитьсервисПриперезагрузкесервисавсеблокировкианнулируютсяОднакоприпоследующейзагрузкелогианализируютсясноваиесливлогахвтечениебылонеудачныхпопытокподключениясодногоэтотбудетсновазабаненсразупослезапуска

Testovanie konfigurácie

Môžete skontrolovať, ako bude filter aplikovaný na jeden alebo druhý protokol. Ak to chcete urobiť, môžete spustiť príkaz

Kde je tento vzorový súbor cesty s protokolmi, ktoré budú filtrované ako samotný filter, ktorý obsahuje úryvky chybového hlásenia, ktoré by mali byť v protokole, aby sa zakázali adresy útočníkov

A nakoniec, namiesto reštartovania pomocou, môžete spustiť nasledujúci príkaz

Odkazy na zdroje

Materiály sú prevzaté najmä z oficiálnej stránky regulárneho výrazu a pravidlá pre hviezdičku sú prevzaté zo sekcie

Telefonovanie môže byť lacné
a funkčné!

Spoločnosť ITCUBE poskytuje široký okruh služby pre inštaláciu, integráciu a konfiguráciu IP telefónie

IT služby môžu byť vysoko kvalitné!

chmod 755 install_apf_bfd.sh

./install_apf_bfd.sh

Konfigurácia APF je v /etc/apf/conf.apf

Ak chcete začať upravovať súbor, použite nasledujúci príkaz:

nano /etc/apf/conf.ap f

Nastavte IFACE_IN a IFACE_OUT na sieťové rozhranie pri pohľade na internet. Pre sieťové rozhranie na pohľad lokálna sieť, nastavte IFACE_TRUSTED.

SET_TRIM="0"

APF má schopnosť podporovať QoS. Pre SIP a IAX musíte nastaviť nasledovné:

TOS _8="21,20,80,4569,5060,10000_20000"

Ak zmeníte port SSH, musíte upraviť súbor conf.apf tak, aby zodpovedal tomuto novému portu.

HELPER_SSH_PORT="2222"

Nezabudnite nahradiť 2222 správnym číslom portu, na ktorom sa rozhodnete spravovať SSH.

Filtrovanie prichádzajúcej prevádzky sa používa na otvorenie portov pre prístup; TCP a UDP majú samostatné nastavenia. Pre Asterisk (Trixbox) musia byť otvorené nasledujúce porty; a TCP a UDP sú uvedené. Ak nepoužívate TFTP, neotvárajte port 69. Nezabudnite zmeniť port SSH. V opačnom prípade nebudete mať prístup; tu používame port 2222 z nášho posledného príkladu. Do tohto nastavenia sme nezahrnuli porty IAX. Existuje jednoduchý spôsob, ako zabezpečiť, aby IAX mohli používať iba určití hostitelia, ktorým sa budeme venovať neskôr. To je užitočné, ak používate IAX na vyvolanie medzikancelárií, ktoré sú pre vonkajší svet neviditeľné.

IG_TCP_CPORTS="2222,69,80,5060,6600,10000_20000"
IG_UDP_CPORTS="69,5060,10000_20000"

Nepoužívam odchádzajúce filtrovanie, takže to nie je zahrnuté v tomto článku. Je nastavený na EGF="0", predvolene vypnutý.

Ak chcete zobraziť zoznam možností príkazový riadok, spustiť apf bez príznakov.

#apf
apf(3402): (glob) stavový protokol nenájdený, vytvorený
APF verzia 9.6< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Copyright (C) 1999-2007, R-fx Networks< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Copyright (C) 2007, Ryan MacDonald< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Tento program môže byť voľne redistribuovaný podľa podmienok GNU GPL
použitie /usr/local/sbin/apf
-s|--start ......................... načítať všetky pravidlá brány firewall
-r|--restart ....................... zastaviť (vyprázdniť) a znova načítať pravidlá brány firewall
-f|--stop........ ............. zastaviť (vyprázdniť) všetky pravidlá brány firewall
-l|--list ...................... zoznam všetkých pravidiel brány firewall
-t|--status ........................ výstup protokolu stavu brány firewall
-e|--refresh ....................... obnoviť a vyriešiť názvy DNS ako dôveryhodné
pravidlá
-a HOST CMT|--povoliť KOMENTÁR HOSTITEĽA ... pridať hostiteľa (IP/FQDN) do
allow_hosts.rules a okamžite načítajte nové pravidlo do firewallu
-d HOST CMT|--deny HOST COMMENT .... pridať hostiteľa (IP/FQDN) do
deny_hosts.rules a okamžite načítajte nové pravidlo do firewallu
-u|--remove HOST ...................odstránenie hostiteľa z
*_hosts.rules a okamžite odstráňte pravidlo z brány firewall
-o|--ovars ........................ výstup všetkých možností konfigurácie

Na spustenie APF používame nasledujúce príkazy:

# apf -s
apf(3445): (glob) aktivuje firewall
apf(3489): (glob) určené (IFACE_IN) eth0 má adresu 192.168.1.31
apf(3489): (glob) určené (IFACE_OUT) eth0 má adresu 192.168.1.31
apf(3489): (glob) načítava preroute.rules http://r-fx.ca/downloads/reserved http://feeds.dshield.org/top10-2.txt
http://www.spamhaus.org/drop/drop.lasso
apf(3489): (sdrop) analyzuje drop.lasso do /etc/apf/sdrop_hosts.rules
apf(3489): (pokles) načítava súbor sdrop_hosts.rules
apf(3489): (glob) načítava bežné drop porty
...........orezané pre tento dokument.........
apf(3489): (glob) predvolený (vstupný) pokles vstupu
apf(3445): (glob) firewall inicializovaný
apf(3445): (glob) !!REŽIM VÝVOJA ZAPNUTÝ!! - firewall sa spláchne
každých 5 minút.

Vidíme, že APF je v prevádzke, sťahuje sa niektoré pravidlá z dshield.org a spamhaus.org. Teraz poďme otestovať prihlásenie na server Asterisk (Trixbox) cez SSH, aby sme sa uistili, že ste všetko nakonfigurovali správne. Ak sa nemôžete pripojiť, musíte počkať 5 minút a potom APF blokovanie uvoľní. Keď ste si istí, že môžete používať SSH, môžeme zmeniť DEVEL_MODE = "1" na DEVEL_MODE = "0" v conf.apf a reštartovať APF. APF sa spustí a nevydá upozornenie, že je v DEVELOPMETN_MODE.

APF: dodatočné ladenie

Toto nie je koniec nastavenia, ak chcete pripojiť svoje servery Asterisk (Trixbox) cez IAX. Ak to chcete urobiť, budete musieť pridať porty IAX do conf.apf. Táto možnosť bude fungovať so statickými adresami IP alebo DynDNS. Príkaz apf -a umožňuje prístup ku konkrétnej IP adrese. Toto globálne umožní hostiteľovi pripojiť sa k Asterisk (Trixbox) a obísť pravidlá brány firewall.

apf -a 192.168.1.216

To umožní systému 192.168.1.216 pripojiť sa k akémukoľvek portu na serveri chránenom bránou firewall, čím sa obídu pravidlá brány firewall. Ak používate APF na oboch Asterisk (Trixbox), uistite sa, že urobte to isté na druhom hostiteľovi so správnou IP adresou.

APF tiež umožňuje správcovi systému zablokovať hostiteľa alebo celú podsieť. Je to užitočné, ak vidíte niekoho, kto sa pokúša pripojiť k vášmu počítaču cez FTP, Telnet, SSH atď. Ak chcete zablokovať konkrétneho hostiteľa, použite nasledovné: nezabudnite použiť adresu IP, ktorú chcete blokovať.

apf -d 192.168.1.216

Ak chcete zablokovať celú podsieť (CIDR):

apf -d 202.86.128.0/24

APF nepodporuje QoS pre pakety UDP. iba TCP. Existuje jednoduchý spôsob, ako to opraviť. /etc/apf/internals má súbor functions.apf. Tento súbor musíme upraviť ručne. Existuje niekoľko miest, kde musíme pridať jeden riadok. Hľadáme sekciu TOS_ v súbore functions.apf. Bude to vyzerať takto:

ak [! "$TOS_0" == "" ]; potom
pre ja v `echo $TOS_0 | tr "," """; robiť
i=`echo $i | tr "_" ":"".
$IPT -t mangle -A PREROUTING -p tcp --sport $i -j TOS --set-tos 0
$IPT -t mangle -A PREROUTING -p udp --sport $i -j TOS --set-tos 0
hotový
fi

Tento extra riadok musí byť vytvorený pre všetky bity TOS, ktoré používate.

BFD

Detekcia hrubej sily (slovníkový útok) sa používa na sledovanie neoprávnených pokusov o prihlásenie.

Konfiguračný súbor pre BFD sa nachádza v /usr/local/bfd a má názov conf.bfd. Tento súbor, podobne ako pre APF, obsahuje veľa komentárov. Pozrime sa len na niektoré možnosti prispôsobenia.

Prvá konfiguračná premenná, na ktorú sa pozrieme, je TRIG; toto je počet neúspešných pokusov predtým, ako je útočník zablokovaný. Predvolená hodnota je 15. Majte na pamäti, že ide o počet pokusov nie z jedného účtu, ale z jednej IP adresy. Ak teda z 1 adresy IP príde 15 neúspešné pokusy prihlásiť pomocou rôznych účtov, bude stále uzamknutý.

BFD má príjemnú funkciu – posielať e-maily pri zistení hrubej sily. Zapnúť túto možnosť, nastavte EMAIL_ALERTS na 1; nezabudnite uviesť adresu, na ktorú chcete dostávať upozornenia - EMAIL_ADRESS.

BFD spúšťa cron každé 3 minúty a nachádza sa v /etc/cron.d.

Zoznam zakázaných IP adries môžete získať pomocou príkazu:

Na spustenie BFD použite nasledujúci príkaz:

bfd -s

Zhrnutie

Týmto je kontrola zabezpečenia Asterisk (Trixbox) dokončená.

Tento článok obsahuje iba základné princípy ochrany Asterisk (Trixbox). Prirodzene, budovanie bezpečných VoIP systémov sa neobmedzuje len na toto.

Pôvodný článok nájdete na odkaze