itthon / A PC elsajátítása / A csillag védelme az illetéktelen csatlakozásoktól. A fail2ban beállítása a biztonságos csillagozáshoz. Korlátozott engedélyek beállítása a könyvtárakra

A csillag védelme az illetéktelen csatlakozásoktól. A fail2ban beállítása a biztonságos csillagozáshoz. Korlátozott engedélyek beállítása a könyvtárakra

Dátum: 09:56 2018.07.28

Az interneten sok történet található a csillaggal való feltörésről és az üzemeltető későbbi büntetéséről. Valahol volt egy sztori egy kis cégről Ausztráliában, amelynek sikerült berepülnie 15-20 ezer dollárért. Szerintem senki sem akar ilyen helyzetbe kerülni. Sokkal jobb, anélkül, hogy megvárná a bajt, ha olyan intézkedéscsomagot hajt végre, amely jelentősen csökkenti a hackelési lehetőségek számát és minimalizálja a veszélyt.

Nem szabványos port az 5060 helyett

Ha van technikai lehetőség - MINDIG módosítsa a szabványos 5060-as portot bármely másikra. Minél jobban eltér a szabványtól, annál jobb. A támadók nagyon gyorsan megtalálják a csillagot azáltal, hogy egyszerűen átkutatják a portokat több címen. Ez nagyon gyorsan fog megtörténni - a jelszó kitalálására tett első kísérleteket már 3 nappal azután, hogy a csillagot felhelyezték az internetre, felfedezték bennem.
A port a sip.conf fájlban a következő részben van beállítva:

bindport=5060 => bindport=5172

Az ilyen akciók után a válogatók száma majdnem nullára csökken.

Tűzfal beállítása

Tilos kívülről csatlakozni az Asterisk porthoz - ez leállítja a jelszavak kitalálásának lehetőségét. Egyes SIP-telefonszolgáltatók azonban nem működnek, ha maguk nem tudják elérni az 5060-as portot – ebben az esetben engedélyeznie kell a hozzáférést ehhez a porthoz a szolgáltató szerveréről. Így egy nap több napig gondolkodtam, hogy miért nincs kapcsolat a Beeline-nal, aztán megnyitottam az IP hozzáférésüket az 5060-as portomhoz, és megjelent a kapcsolat.

Kapcsolja ki a vendéghívásokat

Ha nem kell hívásokat fogadnia regisztráció nélkül, feltétlenül kapcsolja ki a következő lehetőséget a sip.conf oldalon:
allowguest=yes => allowguest=no ; Vendéghívások engedélyezése vagy elutasítása (alapértelmezés szerint igen)

Jelszóriasztás letiltása

Szinte mindenkinek van csillaggal jelölt fiókja, például 100, 200, 700 stb. Alapértelmezés szerint a csillag egy hibás jelszót ad egy meglévő fiókhoz, egy másikat pedig egy nem létező fiókhoz. Speciális segítségével jelszókitaláló szoftver segítségével a támadó gyorsan válogathat az összes rövid szám között, és csak azon meglévő fiókok jelszavait találhatja ki, amelyek „rossz jelszót” válaszoltak. Ennek megakadályozása érdekében módosítjuk a sip.conf beállítását:
alwaysauthreject = nem => alwaysauthreject = igen
Egy ilyen beállítás után a csillag ugyanazt a visszapattanást jelzi minden hibás engedélyezés esetén.

A fiókokhoz összetett jelszavakat használunk

Bármilyen jelszót ki lehet találni, a kérdés csak az idő. Mivel a sip eszközöket egyszer és hosszú ideig konfigurálják, ne fukarkodjon az összetett jelszavakkal. Magam számára hosszú jelszavakat használok kis- és nagybetűk + számok kombinációjával, például: secret=f64GCD74ssdZ42

MINDIG távolítsa el az összes olyan jelszót, amely megfelel a bejelentkezési adatoknak. Ezek az első jelszavak, amelyeket jelszavakhoz használnak.

Tiltás/engedély használata fiókokhoz

Kötelező pillanat! Adja meg a következő sorokat minden olyan fiókhoz, amely nem utal internetkapcsolatra:

Megtagadás=0.0.0.0/0.0.0.0 engedélyezés=10.1.1.1/24 engedélyezés=10.1.2.1/24

Ahol a 10.1.1.1, 10.1.2.1 a helyi címek azon tartományai, amelyekről a kapcsolat létrejön. Más címekről érkező kapcsolatokat a rendszer nem fogadja el csillaggal.

Híváskorlát beállítása

Call-limit=1

Ne használja feleslegesen az alapértelmezett kiterjesztést

Nincs rá szükségünk. Minden, aminek alapértelmezésben kell lennie:

Exten => _X.,1,Hangup

Nem hozunk létre egy univerzális szabályt minden hívásra

Mondj nemet az űrlap szabályaira:

Kiterjesztés => _X.,1,tárcsázás(SIP/$(EXTEN)@operátor)

Világosan felírjuk a kezelőnek továbbított összes szükséges számkombinációt. Ha nincs szükség a használatára nemzetközi kommunikáció- egyáltalán ne írja le neki a szabályokat. A hackelés szinte minden esetét külföldi hívásokhoz használják fel.

;Sürgősségi szolgáltatások kiterjesztés => _0X,1, Tárcsázás(SIP/$(EXTEN)@operátor) mellék => _0X,n, Hangbontás ;Moszkva mellék => _8495XXXXXXX,1, Tárcsázás(SIP/$(EXTEN)@operátor) mellék => _8495XXXXXXX,n, Leállítási kiterjesztés => _8499XXXXXXX,1, Tárcsázás(SIP/$(EXTEN)@operátor) kiterjesztés => _8499XXXXXXX,n, Leállítási kiterjesztés => _XXXXXXX,1, Tárcsázás(SIP/$(EXTEN)@operátor ) exten => _XXXXXXX,n, Hangon

Most nagyon gyakran kell megküzdenie a különféle típusú támadásokkal Csillagés analógjai. Rossz konfiguráció és tudatlanság egyszerű szabályok pénzügyi veszteséget okoz a használó vállalkozás számára PBX csillag.

Ebben a cikkben megvizsgáljuk a kezdeti biztonsági mechanizmusokat Csillag 13 telepítés után, és nem veszi figyelembe a Linux biztonsági mechanizmusait. Íme néhány szabály, amelyek segítenek megőrizni a rendszer biztonságát:

1. Hack-álló jelszavak és bejelentkezési adatok minden hálózati eszközön (Asterisk, IP telefonok, VoIP átjárók).

Jelszavak SIP-fiókokhoz, rendszergazdákhoz, Asterisk menedzserekhez és hálózati eszközök legalább 13 karakterből kell állnia (betűk, számok, speciális karakterek, kis- és nagybetűk). Ne használjon bejelentkezéseket a rendszerben, mint pl admin, adminisztrátor, menedzser stb.

2. Helyes SIP-konfiguráció az Asterisk-ben - sip.conf.

A szkennerek elleni védelem érdekében módosítsa a szabványos SIP-portot, tiltsa le a vendéghívásokat és -regisztrációkat, az átfedéseket, iratkozzon fel a csatorna állapotinformációira stb. Teljes leírás paramétereket általános sip.conf cikkben leírva. Az alábbiakban látható a sip.conf, amelyet az Asterisk szerverhez konfiguráltam megjegyzésekkel:
context=default ;Alapértelmezés szerint nem használt kontextus hozzárendelése a kimenő hívásokhoz allowguest=no ;Vendégkapcsolatok letiltása (hitelesítés nélkül) match_auth_username=no ;A "felhasználónév" mező használatának tiltása "from" helyett allowoverlap=no ;Egy számjegyű letiltása tárcsázás;allowtransfer= nem ;A továbbítási tartomány használatának letiltása=CUCM11.5(1)SU3 ;Használja a sajátunkat Domain név szerver (elrejti a csillagot) ;domainsasrealm=no ;recordonfeature=automixmon bindport=9050 ;SIP jelzési port módosítása udpbindaddr=0.0.0.0 ;Alapértelmezett UDP-cím tcpenable=yes ;TCP-támogatás engedélyezése (lehet, hogy van .dtdrcp Avaya).dtdr=0 TCP-cím;tlsenable=no ;tlsbindaddr=0.0.0.0 ;tcpauthtimeout = 30 ;tcpauthlimit = 100 ;websocket_enabled = igaz ;websocket_write_timeout = 100 = igen ;tos_sip=cs3 ;tos_audio=ef ;tos_video=af41 ;tos_text=af41 ;cos_sip=3 ;cos_audio=5 ;cos_video=4 ;cos_text=3 ;maxexpiry=3600 ;mineexpiry=60 ;s1mary=0expiry ;s1x0 ubmineexpiry =60 ;mwiexpiry=3600 ;maxforwards=70 qualifyfreq=60 ;Állítsa be a gazdagép rendelkezésre állási ellenőrzését 60 másodpercre;qualifygap=100 ;qualifypeers=1 ;keepalive=60 ;notifymimetype=text/plain ;buggymterisk=v=fromeasterwisk=m; hangposta ;preferred_codec_only=yes disallow=all ;Összes kodek letiltása allow=alaw ;Alaw engedélyezése allow=ulaw ;Ulaw engedélyezése ;autoframing=yes ;mohinterpret=default ;mohsuggest=default ;parkinglot=plaza language=ru ;Készítse el az orosz nyelvet rendszer alapértelmezés szerint tonezone=ru ;A globális hangzóna meghatározása Ru-ban relaxdtmf=yes ;A rosszul felismert DTMF jelek felismerésének bekapcsolása;trustrpid = nem ;sendrpid = igen rpid_update=yes ;A számlálószerver azonnali értesítése a számlálószerver állapotának változásairól a vonal;trust_id_outbound = nem ;prematuremedia=no ;progressinband=no callerid=CUCM11.5(1)SU3 ;Ha valahol nincs beállítva a CallerID, tedd useragent=Cisco-SIPGateway/IOS-12.x karakterrel Cisco-SIPGateway;promiscredir = nincs ;Állítsa be a Peer állapotot, ha nem tud bejelentkezni=elutasítva alwaysauthreject=yes ;Ha a hitelesítési kérelmet elutasították, akkor a válasz NEM azt mondja, hogy a felhasználót hibásan adták meg, a felhasználónevek felsorolásának védelme auth_options_requests=yes ;Engedélyezés szükséges, ha OPTION és INVITE küldése ; accept_outofcall_message = nem ;outofcall_message_context = üzenetek auth_message_requests=yes ;MESSAGE kérés hitelesítésének engedélyezése ;g726nonstandard = yes ;outboundproxy=proxy.provider.domain:80ay8pathes; locally = yes ;dynamic_exclude_static = igen ;con tactdeny=0. 0.0.0/0.0.0.0.0.0.0.0.0.0.0.0.0.0.0/255.255.0.0; Contactacl = named_acl_example; rtp_engine = csillag; regcontext = sipregisztrációk reghextenonqualify, és akkor megöli, ha kiesik a pirae; ez a bővítmény a regContext-ből; legacy_useroption_parsing=yes ;send_diversion=no ;shrinkcallerid=yes ;use_q850_reason = no ;refer_addheaders=yes autocreatepeer=no ;UAC regisztráció letiltása hitelesítés nélkül t1min=200 hoszttól t1min=200 ;0minimumer=200 ;timerb=32000 rtptimeout= 600 ;A hívás megszakítása, ha 600 másodperc után nincs RTP-médiafolyam-tevékenység rtpholdtimeout=300 ;A hívás megszakítása, ha 300 másodperc után nincs RTP-médiafolyam-tevékenység tartási módban;rtpkeepalive= ;session-timerssion =eredeti ;session-expires=600 ;session-minse=90 ;session-refresher=uac ;sipdebug = yes ;recordhistory=yes ;dumphistory=yes ;allowsubscribe=no ;subscribecontext = default ;notifyringinghol = cidesnotifyhold nem ; = yes callcounter=yes ;Hívásszámláló engedélyezése t38pt_udptl=yes ;T.38 támogatásának engedélyezése FEC hibajavítással faxdetect=yes ;CNG és T.38 észlelés engedélyezése nat=auto_force_rport,auto_comedia ;A porton automatikusan megtaláljuk a Nat-ot és a médiaadatokat ahonnan az Asterisk ezeket kapta, és nem azt, amit az SDP-ben kapott ;media_address = 172.16.42.1 ;subscribe_network_change_event = yes ;icesupport = yes directmedia=no ;RTP-forgalom küldése közvetlenül a társak között, az Asterisk megkerülésével ;directrtpsetup=0yes ;/directrtpsetup=0.0media. 3 0 ; avpf=yes ;force_avp=yes ;rtcachefriends=yes ;rtsavesysname=yes ;rtupdate =yes ;rtautoclear=yes ;ignoreregexpire=yes ;domain=customer.com,customer-context ;allowexternaldomains=domaindomainm=nodomaindomains tld ;snom_aoc_enabled = igen; jbforce = nem jbmaxsize=200 ;A maximális RTP pufferméret beállítása 200 ms-ra;jbresyncthreshold = 1000 ;jbimpl = rögzített ;jbtargetextra = 40 ;jblog = nem

3. Nem szabványos IAX portot használunk.

Ehhez a fájlban /etc/asterisk/iax.conf szakaszban módosítsa a paramétert bindport=4569 paraméterenként bindport=9069

4. Az Asterisk-et másik felhasználóként kell futtatni (nem root felhasználóként). A cikkben meg van írva, hogyan kell ezt megtenni.

5. Állítsa be az engedélyezett IP-címeket vagy hálózatokat a SIP-bővítmények számára.

megtagadás=0.0.0.0/0.0.0.0 ; Minden megtagadása engedély=10.0.0.0/255.0.0.0 ; Ismert engedély engedélyezése=172.20.0.0/255.255.0.0 ; Ismert engedély engedélyezése=192.168.0.0/16 ; Ismert engedélyezése

6. Állítsa be az egyidejű hívások korlátját.

call-limit=2 ;Állítsa be az értéket 2-re, hogy a felhasználó átutalást hajthasson végre

7. Állítson be különböző kimenő útválasztási szabályokat minden felhasználó számára.

El kell távolítani az összes alapértelmezés szerint használt útvonalat, és hozzá kell rendelni a sajátját, megkülönböztetve a kontextusokat:

  • Helyi készletek
  • Helyi hívások
  • Zóna hívások
  • Távolsági hívások
  • Nemzetközi hívások
Az ABC, DEF kódok teljes listája a Rossvyaz hivatalos forrásából származik.
Az alapértelmezett útvonalhoz tegye exten => _X.,1,Hangup()

8. IPtables használata

9. Használja a Fail2Ban-t

10. Minden telefonkészüléket külön Voice VLAN-ban jelenítünk meg. Itt meg kell erőltetni a hálózatépítőket.

11. Kiemelt figyelmet fordítunk a nemzetközi irány 8-10.

Csak a szervezetben használt irányokat állítjuk be, és szükség szerint kiegészítjük (bővítjük). E-mailben is értesítünk, ha egy felhasználó vagy egy támadó ismeretlen nemzetközi célállomást használt, és korlátozzuk az egyes kapcsolatokat és az egyidejű hívások számát. A cikkben egy kész megoldás található a 8-10 irány védelmére.

12. Tiltsa le a nem használt csatornákat és szolgáltatásokat.

Például, ha nem használja a protokollt MGCP vagy sovány, tiltsa le ezeket a modulokat a fájlban /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.soari.soload > 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_bridges.so noload => res_ari_events.so>noload_res_ari_playbacks. res_pjsip .so noload => cdr_mysql.so noload => res_phoneprov.so noload => cdr_odbc.so noload => cdr_pgsql.so ;====================== = ==== ; PBX -- noload => pbx_ael.so ; Csatornák -- 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_chanlbest noloadi so noload => chan_alsa.so noload => chan_oss.so ; Kodekek -- noload => codec_lpc10.so ; Formátumok -- noload => format_au.so noload => format_gsm.so noload => format_h263.so noload => format_ilbc.so noload => format_jpeg.so ; Alkalmazások -- noload => app_image.so noload => app_zapateller.so noload => app_zapbarge.so noload => app_zapscan.so noload => res_config_ldap.so

13. Korlátozza a távoli hozzáférést az IP-PBX-hez a tűzfal segítségével.

Ha tervezi biztosítani távoli hozzáférés felhatalmazott alkalmazottak számára a legjobb, ha a segítségével szervezzük meg VPN szerverek(pl. OpenVPN).

Mint tudják, a csillag egy alkalmazás (szerver) az IP-telefóniához. Vagyis lehetővé teszi, hogy a hozzá csatlakozó ügyfelek hívják egymást és a külvilágot (többek között) vonalon telefonos kommunikáció. Ez a következő kockázatokkal jár:

  1. az ügyfelek azonosítása bejelentkezési név/jelszó és (általában) IP-cím alapján történik. Ugyanakkor lehetőség van jelszó felvételére (korábban vagy később, összetettségétől függően, de mindenképpen lehetséges), és nagyon gyakran az IP-címekre vonatkozó korlátozások korántsem olyan szigorúak, mint szeretnénk. (ideális esetben minden ügyfélnek saját egyedi IP-címmel kell rendelkeznie)
  2. bejövő hívások az internetről (például más csillagszerverekről). Ezekkel a kapcsolatokkal minden bonyolultabb, mivel a csillag (az alapkonfigurációban) nem biztosítja azoknak az IP-címeknek a megjelenítését, amelyekről a kapcsolat létrejön.

A fail2ban program egy tűzfallal (például iptables) és egy megfelelően konfigurált csillaggal (amely a naplókban teljes információt jelenít meg, beleértve a kliensek és más szerverek IP-címét is) hatékonyan blokkolja a csatlakozási kísérleteket és a jelszókitalálást.

A konfiguráció megkezdése előtt telepítenie kell az iptables-t és a fail2ban-t. Ezenkívül az iptables-nak már konfiguráltnak kell lennie (és engedélyeznie kell a kapcsolatoknak a csillagot), mielőtt a fail2ban konfigurálható lenne! Az iptables beállításáról itt olvashat: Az iptables beállítása, hogy a csillag működjön. Telepítheti a fail2ban-t magának a csillagnak a telepítése előtt is, ebben az esetben (legalábbis elméletben) a telepítési folyamat során legújabb verziói Asterisk észleli a telepített fail2ban-t, és automatikusan konfigurálja. Azonban:

  1. Az IP-telefónia biztonságának kérdését nem mindig veszik figyelembe a csillag telepítése előtt. Ez azt jelenti, hogy nagy valószínűséggel olyan rendszerre szeretné telepíteni a fail2ban-t, amelyen már telepítve (és konfigurálva) van egy csillag.
  2. Az auto-config egyáltalán nem működik minden esetben, nem beszélve arról, hogy megfelelően működjön (és elkezd blokkolni minden csillag elleni támadást).

A csillagok naplózásának beállítása

Mindenekelőtt érdemes beállítani a csillagok naplózását, hogy azonnal megkezdődjön az információgyűjtés a szükséges formátumban és formában. Ehhez a csillag konfigurációs könyvtárban (alapértelmezés szerint /etc/asterisk) keresse meg a logger.conf fájlt, és hajtsa végre a következő módosításokat: uncomment (távolítsa el a pontosvesszőt a sor elején):

Dátumformátum=%F %T ; ISO 8601 dátumformátum

Erre azért van szükség, hogy a csillag a megfelelő formátumban írja be a dátumot a naplókba:
év-hónap-nap óra:perc:másodperc

Az Asterisk 10-es verziójától kezdve engedélyezheti az Asterisk biztonsági keretrendszert. Ehhez a logger.conf fájlban keresse meg és vegye ki a megjegyzést (vagy adja hozzá) a következő sort:

biztonság => biztonság

Ez a sor a nyíl bal oldalán jelzi annak a fájlnak a nevét, amelybe az eseményeket menti, a jobb oldalon pedig a menteni kívánt szinteket (eseménytípusokat). BAN BEN ezt a példát a biztonsági szinttel kapcsolatos események (és csak ezek) a csillag naplómappában lévő security nevű fájlba kerülnek.
Természetesen a változtatások elvégzése után a csillaggal újra el kell olvasni a konfigurációt. Ehhez újratöltheti a csillag szolgáltatást, vagy csak a naplókonfigurációt (naplózó újratöltése a csillag CLI-ből).

Ezt követően egy biztonsági nevű fájl. Ne felejtse el beállítani ehhez a fájlhoz a naplóforgatást (ugyanúgy, mint a többi csillaggal jelölt napló esetében)!

Szűrési szabályok beállítása

Most létre kell hoznunk egy szűrőt, amely kivonja a potenciálisan veszélyes eseményeket a csillag általános üzenetfolyamából (helytelen felhasználónév / jelszó, bejelentkezési kísérlet jogosulatlan IP-címről stb. stb.). Ugyanakkor nemcsak észlelnünk kell az ilyen potenciálisan veszélyes eseményeket, hanem el kell különítenünk onnan azt az IP-címet, amelyről a műveletet végrehajtották. Vagyis nem csak bizonyos sorokat keresünk a csillag eseményfájlokban, hanem szűrési szabályokat állítunk be.
A szűrési szabályok az /etc/fail2ban/filter.d/asterisk.conf fájlba írhatók. Íme egy példa a fájl tartalmára:

# Fail2Ban konfigurációs fájl # # # $Revision: $250 # # Olvassa el a gyakori előtagokat. Ha bármilyen testreszabás elérhető, olvassa el azokat a # common.local #before = common.conf #_daemon = asterisk # Opció: failregex # Megjegyzések: regex, hogy megfeleljen a naplófájlban található jelszóhiba üzeneteknek. A # gazdagépnek egy "host" nevű csoportnak kell megfelelnie. A " " címke # használható szabványos IP/gazdanév egyeztetéshez, és csak álneve a # számára (?:::f(4,6):)?(?P \S+) # Értékek: TEXT # # Csillag 1.8-at használ Gazda:Port formátum, amely itt látható failregex = NOTICE.* .*: A regisztráció sikertelen a ".*" címről a következőhöz: " :.*" - Rossz jelszó FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.* " - Nem található egyező társ. FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.*" - Felhasználónév/hitelesítő név nem egyezik FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.*" - Az eszköz nem egyezik az ACL-lel. MEGJEGYZÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.*" - Nem helyi tartomány FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.*" - A partnernek nem kell regisztrálnia. FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " :.*" - ACL hiba (engedélyezés/megtagadás) FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " " - Hibás jelszó FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " " - Nem található egyező társ. FIGYELMEZTETÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " " - A felhasználónév/engedélyes név nem egyezik FIGYELMEZTETÉS.* .* : Sikertelen regisztráció innen: ".*" a következőhöz: " " - Az eszköz nem egyezik az ACL-lel. MEGJEGYZÉS.* .*: Sikertelen regisztráció innen: ".*" a következőhöz: " " - Nem helyi domain NOTICE.* .*: Regisztráció innen: ".*" sikertelen a következőhöz: " " - A partnernek nem szabad regisztrálnia. NOTICE.* .*: Regisztráció innen: ".*" nem sikerült a következőhöz: " " - ACL hiba (engedélyezés/megtagadás) NOTICE.* .*: Regisztráció innen: "\".*\" .*" nem sikerült a következőhöz: " :.*" - Nem található egyező társ. FIGYELMEZTETÉS.* .*: Regisztráció innen: "\".*\".*" nem sikerült a következőhöz: " :.*" - Hibás jelszó FIGYELMEZTETÉS.* .*: Nem regisztráció a következőhöz: ".*" \(feladó: \) FIGYELMEZTETÉS.* .*: A gazdagép sikertelen MD5 hitelesítés a ".*" számára (.*) FIGYELMEZTETÉS.* .*: Nem sikerült hitelesíteni a felhasználót: .*@ .* FIGYELMEZTETÉS.* nem sikerült hitelesítés ".*"-ként $ FIGYELMEZTETÉS.* .*: Hamis hitelesítés-elutasítás küldése a(z) eszközhöz.*\<.>

A verzióban és a korábbi verziókban a karakterlánc feletti avi karakterláncok használatosak, mivel a verziótól kezdve a naplókban olyan információ jelent meg a portszámról, amely a fenti változatban nem szerepel, figyelembe veszi a régi és az új verziókat is. , így nem kell rajta változtatni semmit

Verzió és újabb verzió esetén, ha engedélyezte vagy engedélyezte a naplózást, ne felejtse el beállítani a szűrési szabályokat ezekhez a naplókhoz

A szűrési szabályok egy fájlba írhatók, itt található egy példa a fájl tartalmára

Izolátorok beállítása a

Most létre kell hoznunk az úgynevezett szigetelők leírását, hogy összekapcsolják a szűrőinket, hogy elmagyarázzák, mely fájlokban kell keresni ezeket a sorokat, és mit kell tenni

Ehhez nyissa meg a fájlt

  1. Győződjön meg arról, hogy nincs-e vagy nincs-e benne más szabály, amely a következőhöz kapcsolódik. Ebben az évben elegendő a fájlban név szerint, idézőjelek nélkül keresést végezni, hogy megbizonyosodjon arról, hogy ha mindegyikre létezik ilyen szabály, akkor a tulajdonság be van állítva.
  2. Ha a verzió kisebb, vagy nem szeretne naplókat használni, akkor erősen ajánlott a naplók használata, akkor csak egy szabályt kell létrehoznia, ellenkező esetben szabályokat kell létrehoznia

számú szabály

Ezt a szabályt minden verzióhoz létre kell hozni. Létrehozhat új szabályt, vagy módosíthatja bármelyik meglévő szabályt, de letiltja az új szabályt, mivel példánkban a következővel együtt kerül felhasználásra, amelyet a program meghív és alkalmaz a fájlra. amelybe a csillagjeles események összes fő típusa el van mentve.Itaxrule

izolátorok beállítása a szabályok fő eseményeihez engedélyezve a szabály által használt szűrő neve a szűrő neve ez a fájlnév a könyvtárban melyik naplófájlban található a kockázati mester alkalmazza a szűrőt a potenciálisan veszélyes események keresésére a potenciálisan veszélyes események száma a szűrő által talált események a művelet elindításához, másodpercekben hány ideig alkalmazza a műveletet másodpercekben hány ideig potenciálisan veszélyes események kereséséhez mit kell tenni, ha a szűrő másodperceken belül taktikát észlel az észlelt naplókban Az azonos címre vonatkozó potenciálisan veszélyes műveletek blokkolják az összes portot, és levelet küldenek az alhálózatok címlistájára, amelyeknél az összes potenciálisan veszélyes esemény figyelmen kívül marad

számú szabály

Ez a szabály csak akkor működik, ha a verzió vagy újabb, és ha a naplózás engedélyezve van, lásd fent. Létrehozhat új szabályt, vagy módosíthatja a letiltott meglévő szabályokat.

a szabályok biztonsági eseményeinek elkülönítőit állítsa be az engedélyezett szűrőt, amelyet a szabály fog használni, a szűrő neve ez a fájlnév a könyvtárban található, a kockázat naplómesterének melyik fájljában kell alkalmazni a szűrőt a potenciálisan veszélyes események keresésére a potenciálisan veszélyes események száma a szűrő által talált veszélyes események a művelet elindításához, hány másodpercben másodpercben hány ideig alkalmazza a műveletet másodpercekben, hogy potenciálisan veszélyes eseményeket keressen, mit tegyen, ha a szűrő másodperceken belül taktikát észlel a naplókban az azonos címen észlelt potenciálisan veszélyes műveletek blokkolják az ehhez szükséges összes portot, és levelet küldenek azoknak az alhálózatoknak a címlistájára, amelyeknél az összes potenciálisan veszélyes esemény figyelmen kívül marad

dob

Most el kell indítania vagy újra kell indítania, és ha szükséges, például még nem indult el

A futtatásához először le kell futtatnia, futtassa a következő parancsot

Az újraindításhoz futtassa a következő parancsot

Annak ellenőrzéséhez, hogy sikeresen elindult-e, és hogy a szabályok betöltésre kerültek, futtassa a következő parancsot

és ha van egy második szabály

A szabályok listájának megjelenítéséhez futtassa a következő parancsot

Ha most telepítette, vagy ne felejtse el megbizonyosodni arról, hogy ezek úgy vannak beállítva, hogy automatikusan elinduljanak a rendszer indításakor

Munka ellenőrzése

Az ellenőrzési folyamatban a legfontosabb, hogy legyen kéznél egy másik számítógép vagy helyi hozzáférés a szerverhez, így ha a címe blokkolva van, tud csatlakozni és megszüntetni ezt a blokkolást.

Szükséges ellenőrizni a hivatkozás működését, mert hiába állítottál be vagy másoltál be mindent, számos eseménykombináció lehet, aminek következtében az általad beállított zárak nem működnek

A műveletek sorozata a hivatkozás működésének ellenőrzésére

  1. Győződjön meg arról, hogy a számítógép indításakor be van állítva az indítások
  2. Ha szabályokat állított be hozzá, erősen javasoljuk, hogy mindegyik működését külön-külön tesztelje. Ehhez tiltsa le valamelyik szabályt, pl.
  3. indítsa újra a számítógépet, ellenőrizze
    1. szolgáltatások futnak
    2. az egyik szabály engedélyezve van, a másik le van tiltva

      Ebben az esetben a letiltott szabályhoz megjelenik egy üzenet

      és az űrlap mellékelt üzenetéhez

  4. Indítsa el a klienst a szerver nélkül egy másik számítógépről, és adjon meg hibás adatokat az engedélyezéshez A kapcsolat címének a szerver címének kell lennie. Próbáljon meg egyszer vagy többször bejelentkezni A cím letiltása utáni jogosultságok száma a paraméter minden szabályhoz külön-külön.
  5. Ha a klienst ugyanazon a számítógépen indította el, amelyen a kiszolgálóhoz csatlakozott, és helyesen volt beállítva, akkor a címe blokkolva van, és erről a számítógépről nem tud csatlakozni a szerverhez, ellenőrizze ezt, csatlakozzon egy másik számítógéphez vagy helyileg, és folytassa a végrehajtást. a parancsokat
  6. Futtassa a parancsnézetet

    az engedélyezett szabályhoz, és győződjön meg arról, hogy az a cím, amelyhez az ügyfél csatlakozott, szerepel a blokkoltak listájában

  7. Most, a bekezdésben szereplő műveletekkel analóg módon, oldja fel például a második szabály blokkolását, és blokkolja az elsőt
  8. Csak pontról pontra kövesse a lépéseket a számítógép újraindítása helyett, amit szintén megtehet, elég újraindítani a szolgáltatást, ezt követően azonnal feloldódik annak a számítógépnek a címe, amelyen elindította a klienst, de szükség van hogy újraindítsa a pontban, hogy ellenőrizze a második szabály működését. usedseconds, majd töltse be újra a szolgáltatást
  9. Miután mindkét szabályt külön-külön tesztelte, ne felejtse el engedélyezni mind a for, mind a for paraméterhez. Ezután természetesen ne felejtse el újratölteni a szolgáltatást
  10. És az utolsó pont, ha befejezte, vagy az előző pontok elég gyorsak néhány percig, akkor úgy tűnhet, hogy mindkét szabály engedélyezése, a következő újraindítás után ismét blokkolja az elindított kliens címe.
    Légy óvatos

szabálykezelés

Ideiglenesen tiltsa le a címblokkolást

Ehhez a szolgáltatást kell használni, először a szabályok listáját jelenítjük meg a konzolon, majd kiválasztjuk a szükséges szabályokat, hogy töröljük őket a kitiltásból.

A szabályok listájának megtekintéséhez írja be a parancsot

Ilyen üzenetet fog látni

Arra vagyunk kíváncsiak, hogy eltávolítsuk a kitiltásból a címet, ami, mint látjuk, a szabályláncban található a név alatt, amit beírunk a parancs

A parancs sikeres végrehajtása esetén nem jelennek meg üzenetek, és ha most újra futtatjuk a parancsot

látni fogjuk, hogy a cím eltűnt a blokkolásból, bár a blokkolásban megmarad, ugyanakkor újra kapcsolódhatunk a szerverhez

A cím blokkolásának végleges letiltása

Annak érdekében, hogy ne blokkoljon egy bizonyos címet vagy több címet, függetlenül attól, hogy hány sikertelen jelszó kitalálási kísérletet és más illegális tevékenységet követtek el, vagy további beállításokat kell elvégezni a fájlban

Minden fájlszabály tartalmazhat egy paramétert, amely megadja azoknak a címeknek a listáját, amelyek szerepelnek a szabály fehérlistáján. Mivel két szabály lehet, vegye figyelembe, hogy a sajátját mindkét szabályba be kell írni.

A paraméter alakja a következő

Azaz alhálózatokat és egyedi címeket is előírhat ilyenkor, a fehér lista esik és

A tesztelt cím feloldása

A beállítások helyességének ellenőrzése során ismételten lefuttatja a klienst, hogy tesztelje a jövőbeli internetes támadások blokkolására irányuló munkát, és a későbbi munka során előfordulhat, hogy időről időre műveleteket kell végrehajtania, amelyek következményei ami esetleg oldalról blokkol.

Vannak módok a probléma megoldására

  1. Írja be a címet a lista szabályaiba, de néha nem kívánatos például a munka időszakos tesztelése
  2. Az idő általában annak az időtartamnak a másodpercben megadott időtartama, amelyen keresztül a brute-force támadás eseményt egyszer meg kell ismételni, ami után a kitiltás sokkal rövidebb ideig lép érvénybe, mint ez a másodpercben megadott kitiltási idő, amely után a címet eltávolítják a blokkolt listáról. banning címének megadása, majd a szolgáltatás újraindítása A szolgáltatás újraindításakor minden blokkolás törlődik, azonban a következő letöltéseknél a naplók újraelemzése megtörténik, és ha a naplókban sikertelen volt csatlakozni valamelyikhez, akkor ez a blokkolásra kerül. újra azonnal az indítás után

Konfiguráció tesztelése

Ellenőrizheti, hogy a szűrő hogyan kerül alkalmazásra egyik vagy másik naplóra, ehhez futtassa a parancsot

Hol van ez a példa elérési út fájl olyan naplókkal, amelyek maga a szűrő lesz, és amely tartalmazza a hibaüzenet töredékeit, amelyeknek a naplóban kell lenniük a támadók címének kitiltásához

Végül pedig az újraindítás helyett a következő parancsot futtathatja

Hivatkozások a forrásokhoz

Az anyagok különösen a regexp hivatalos webhelyéről származnak, a csillagok szabályai pedig a szakaszból származnak.

A telefonálás olcsó lehet
és funkcionális!

Az ITCUBE cég biztosítja széleskörű IP-telefónia telepítésével, integrációjával és konfigurálásával kapcsolatos szolgáltatások

Az informatikai szolgáltatások minőségiek lehetnek!

chmod 755 install_apf_bfd.sh

./install_apf_bfd.sh

Az APF konfigurációja az /etc/apf/conf.apf fájlban található

A fájl szerkesztésének megkezdéséhez használja a következő parancsot:

nano /etc/apf/conf.ap f

Állítsa be az IFACE_IN és IFACE_OUT értéket hálózati felület az internetet nézegetve. Egy hálózati interfészre nézve helyi hálózat, állítsa be: IFACE_TRUSTED.

SET_TRIM="0"

Az APF képes a QoS támogatására. SIP és IAX esetén a következőket kell beállítani:

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

Ha módosítja az SSH-portot, szerkesztenie kell a conf.apf fájlt, hogy megfeleljen az új portnak.

HELPER_SSH_PORT="2222"

Ügyeljen arra, hogy a 2222-t a megfelelő portszámra cserélje, amelyen az SSH kezelését választotta.

A bejövő forgalom szűrése portok megnyitására szolgál hozzáférés céljából; A TCP-nek és az UDP-nek külön beállításai vannak. Asterisk (Trixbox) esetén a következő portoknak nyitva kell lenniük; valamint a TCP és az UDP listája. Ha nem használ TFTP-t, akkor ne nyissa meg a 69-es portot. Ne felejtse el megváltoztatni az SSH-portot. Ellenkező esetben nem fog tudni hozzáférni; itt a legutóbbi példánk 2222-es portját használjuk. Az IAX portokat nem vettük bele ebbe a beállításba. Van egy egyszerű módszer annak biztosítására, hogy csak bizonyos gazdagépek használhassák az IAX-et, erre később térünk ki. Ez akkor hasznos, ha az IAX-et használja a külvilág számára láthatatlan irodaközi fővonalak megjelenítésére.

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

Nem használok kimenő szűrést, ezért ez a cikk nem foglalkozik vele. EGF="0" értékre van állítva, alapértelmezés szerint le van tiltva.

A lehetőségek listájának megtekintéséhez parancs sor, futtassa az apf-t zászlók nélkül.

#apf
apf(3402): (glob) állapotnapló nem található, létrehozva
APF 9.6-os verzió< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Szerzői jog (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. >
Ez a program szabadon terjeszthető a GNU GPL feltételei szerint
használat /usr/local/sbin/apf
-s|--start ......................... minden tűzfalszabály betöltése
-r|--újraindítás ........................ leállítás (öblítés) és a tűzfalszabályok újratöltése
-f|--stop........ ............. minden tűzfalszabály leállítása (kiürítése).
-l|--lista ..........................az összes tűzfalszabály listája
-t|--status ........................ kimeneti tűzfal állapotnapló
-e|--refresh ....................... dns nevek frissítése és feloldása bizalmasan
szabályokat
-a HOST CMT|--engedélyezze a HOST MEGJEGYZÉSÉT ... host (IP/FQDN) hozzáadása
allow_hosts.rules, és azonnal töltse be az új szabályt a tűzfalba
-d HOST CMT|--megtagadás HOST COMMENT .... host (IP/FQDN) hozzáadása
deny_hosts.rules, és azonnal töltse be az új szabályt a tűzfalba
-u|--remove HOST ...................eltávolítja a gazdagépet innen
*_hosts.rules, és azonnal távolítsa el a szabályt a tűzfalról
-o|--ovars ........................ kiadja az összes konfigurációs opciót

Az APF indításához a következő parancsokat használjuk:

# apf -s
apf(3445): (glob) a tűzfal aktiválása
apf(3489): (glob) meghatározott (IFACE_IN) Az eth0 címe 192.168.1.31
apf(3489): (glob) meghatározott (IFACE_OUT) az eth0 címe 192.168.1.31
apf(3489): (glob) a preroute.rules betöltése http://r-fx.ca/downloads/reserved http://feeds.dshield.org/top10-2.txt
http://www.spamhaus.org/drop/drop.lasso
apf(3489): (sdrop) a drop.lasso elemzése az /etc/apf/sdrop_hosts.rules fájlba
apf(3489): (sdrop) az sdrop_hosts.rules betöltése
apf(3489): (glob) a közös drop portok betöltése
........... ehhez a dokumentumhoz vágva.........
apf(3489): (glob) alapértelmezett (ingress) input drop
apf(3445): (glob) tűzfal inicializálva
apf(3445): (glob) !!FEJLESZTÉSI MÓD ENGEDÉLYEZVE!! - a tűzfal kiürül
5 percenként.

Láthatjuk, hogy az APF működik, és néhány szabályt letöltött a dshield.org és a spamhaus.org oldalról. Most teszteljük az Asterisk (Trixbox) szerverre való bejelentkezést SSH-n keresztül, hogy megbizonyosodjunk arról, hogy mindent megfelelően konfiguráltunk. Ha nem tud csatlakozni, várjon 5 percet, majd az APF feloldja a blokkot. Ha megbizonyosodott arról, hogy be tudja kapcsolni az SSH-t, módosíthatja a DEVEL_MODE = "1" értéket DEVEL_MODE = "0" értékre a conf.apf fájlban, és újraindíthatjuk az APF-et. Az APF elindul, és nem ad ki figyelmeztetést, hogy DEVELOPMETN_MODE módban van.

APF: kiegészítő tuning

Ezzel még nem ért véget a beállítás, ha az Asterisk (Trixbox) szervereit IAX-on keresztül szeretné csatlakoztatni. Ehhez hozzá kell adnia az IAX portokat a conf.apf fájlhoz. Ez az opció statikus IP-címekkel vagy DynDNS-sel működik. Az apf -a parancs hozzáférést biztosít egy adott IP-címhez. Ez globálisan lehetővé teszi a gazdagép számára, hogy a tűzfalszabályok megkerülésével csatlakozzon az Asteriskhez (Trixbox).

apf -a 192.168.1.216

Ez lehetővé teszi a 192.168.1.216 rendszer számára, hogy a tűzfallal védett kiszolgáló bármely portjához csatlakozzon, megkerülve a tűzfalszabályokat. Ha mindkét Asterisken (Trixboxon) APF-et futtat, ügyeljen arra, hogy ugyanezt tegye a másik gazdagépen a megfelelő IP-cím használatával.

Az APF azt is lehetővé teszi a rendszergazdának, hogy blokkoljon egy gazdagépet vagy egy teljes alhálózatot. Ez akkor hasznos, ha valaki FTP-n, Telneten, SSH-n stb. próbál csatlakozni a gépéhez. Egy adott gazdagép blokkolásához használja a következőket: győződjön meg arról, hogy a blokkolni kívánt IP-címet használja.

apf -d 192.168.1.216

Egy teljes alhálózat (CIDR) blokkolása:

apf -d 202.86.128.0/24

Az APF nem támogatja a QoS-t az UDP-csomagokhoz. Csak TCP. Van ennek egy egyszerű módja. Az /etc/apf/internals fájlban van functions.apf fájl. Ezt a fájlt kézzel kell szerkesztenünk. Több helyen kell egyetlen sort hozzáadnunk. A functions.apf fájlban a TOS_ részt keressük. Így fog kinézni:

ha[! "$TOS_0" == "" ]; akkor
for i in `echo $TOS_0 | tr "," ""`; csináld
i=`visszhang $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
Kész
fi

Ezt az extra sort az összes használt TOS bithez meg kell tenni.

BFD

A nyers erő észlelése (szótári támadás) a jogosulatlan bejelentkezési kísérletek felderítésére szolgál.

A BFD konfigurációs fájlja a /usr/local/bfd könyvtárban található, és a neve conf.bfd. Ez a fájl az APF-hez hasonlóan sok megjegyzést tartalmaz. Megnézünk néhány testreszabási lehetőséget.

Az első konfigurációs változó, amelyet megvizsgálunk, a TRIG; ez a sikertelen próbálkozások száma a támadó blokkolása előtt. Az alapértelmezett 15. Ne feledje, hogy ez nem egy fiókból, hanem egy IP-címről érkező próbálkozások száma. Tehát ha 1 IP címből 15 jön sikertelen próbálkozások különböző fiókokkal jelentkezzen be, továbbra is zárolva lesz.

A BFD-nek van egy jó funkciója – e-maileket küldhet, ha brutális erőt észlel. Bekapcsolni ezt a lehetőséget, állítsa az EMAIL_ALERTS-t 1-re; ne felejtse el megadni azt a címet, amelyre értesítéseket szeretne kapni – EMAIL_ADRESS.

A BFD-t a cron 3 percenként futtatja, és az /etc/cron.d könyvtárban található.

A tiltott IP-címek listáját a következő paranccsal kaphatja meg:

A BFD indításához használja a következő parancsot:

bfd -s

Összegzés

Ezzel befejeződik az Asterisk (Trixbox) biztonsági felülvizsgálata.

Ez a cikk csak az Asterisk (Trixbox) védelmének alapelveit tárgyalja. A biztonságos VoIP rendszerek építése természetesen nem korlátozódik erre.

Az eredeti cikk a linken található