Προστασία αστερίσκου από μη εξουσιοδοτημένες συνδέσεις. Προστασία του Asterisk από hacking

Στις μέρες μας πολύ συχνά έχουμε να αντιμετωπίσουμε διάφορα είδη επιθέσεων Αστερίσκοςκαι ανάλογα. Λανθασμένη ρύθμισηκαι την άγνοια απλούς κανόνεςσυνεπάγεται οικονομικές ζημίες για την επιχείρηση που χρησιμοποιεί PBX Asterisk.

Σε αυτό το άρθρο θα δούμε τους αρχικούς μηχανισμούς ασφαλείας Αστερίσκος 13μετά την εγκατάσταση και δεν θα εξετάσει τους μηχανισμούς ασφαλείας του Linux. Παρακάτω θα περιγράψουμε έναν αριθμό κανόνων που θα βοηθήσουν στην ασφάλεια του συστήματός σας:

1. Κωδικοί πρόσβασης και στοιχεία σύνδεσης ανθεκτικά στο hack σε όλες τις συσκευές δικτύου (Asterisk, τηλέφωνα IP, πύλες VoIP).

Κωδικοί πρόσβασης για λογαριασμούς SIP, διαχειριστές, διαχειριστές Asterisk και συσκευές δικτύουπρέπει να αποτελείται από τουλάχιστον 13 χαρακτήρες (γράμματα, αριθμούς, ειδικούς χαρακτήρες, αλλαγή πεζών-κεφαλαίων). Μην χρησιμοποιείτε στοιχεία σύνδεσης στο σύστημα όπως π.χ διαχειριστής, διαχειριστής, διευθυντήςκαι τα λοιπά.

2. Σωστή διαμόρφωση SIP στο Asterisk - sip.conf.

Για προστασία από σαρωτές, θα πρέπει να αλλάξετε την τυπική θύρα SIP, να απαγορεύσετε τις κλήσεις και τις εγγραφές επισκεπτών, τις επικαλυπτόμενες κλήσεις, τη συνδρομή σε πληροφορίες κατάστασης καναλιού κ.λπ. Πλήρης περιγραφήΠαράμετροι γενική γουλιά.confπου περιγράφεται στο άρθρο. Παρακάτω είναι το sip.conf που διαμόρφωσα για τον διακομιστή Asterisk με σχόλια:
context=default ;Ορίστε ένα αχρησιμοποίητο περιβάλλον για εξερχόμενες κλήσεις από προεπιλογή allowguest=no ;Απαγόρευση συνδέσεων επισκέπτη (χωρίς έλεγχο ταυτότητας) match_auth_username=no ;Απαγόρευση της χρήσης του πεδίου "username" αντί του "from" allowoverlap=no ;Απαγόρευση μονοψήφιων συνδέσεων κλήση;allowtransfer= όχι ;Απαγορεύουμε τη χρήση του τομέα προώθησης=CUCM11.5(1)SU3 ;Χρησιμοποιούμε το δικό μας Ονομα τομέα διακομιστής (αποκρύπτουμε αυτόν τον αστερίσκο) ;domainsasrealm=no ;recordonfeature=automixmon bindport=9050 ;Αλλαγή της θύρας σηματοδοσίας SIP udpbindaddr=0.0.0.0 ;Προεπιλεγμένη διεύθυνση UDP tcpenable=yes ;Ενεργοποίηση υποστήριξης TCP (σε περίπτωση που έχετε Avandad0)0bindad0r .0.0 ;Προεπιλεγμένη διεύθυνση TCP;tlsenable=no ;tlsbindaddr=0.0.0.0 ;tcpauthtimeout = 30 ;tcpauthlimit = 100 ;websocket_enabled = true ;websocket_write_timeout = 100 devloollows μεταφορά NSa call=udp; s;παιδικός= ναι ;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; xpiry=3600 ; subminexpiry=60 ;mwiexpiry=3600 ;maxforwards=70 qualifyfreq=60 ;Ρυθμίστε τον έλεγχο διαθεσιμότητας κεντρικού υπολογιστή σε 60 δευτερόλεπτα;qualifygap=100 ;qualifypeers=1 ;keepalive=60 ;notifymimetype=text/buggmimasknof=text/ggmimasknof=; vmexten=φωνητικό μήνυμα ;preferred_codec_only=yes disallow=all ;Απαγόρευση όλων των κωδικοποιητών allow=alaw ;Allow Alaw allow=ulaw ;Allow Ulaw ;autoframing=yes ;mohinterpret=default ;mohsuggest=default ;parkinglot languageru=plake; στο σύστημα από προεπιλογή tonezone=ru ;Προσδιορίστε την καθολική τονική ζώνη στο Ru relaxdtmf=yes ;Ενεργοποίηση αναγνώρισης κακώς αναγνωρισμένων σημάτων DTMF;trustrpid = όχι ;sendrpid = yes rpid_update=yes ;Ειδοποιήστε αμέσως τον επερχόμενο διακομιστή κατάστασης γραμμής για αλλαγές σε trust_id_outbound = όχι ;prematuremedia=no ;progressinband=no callerid=CUCM11.5(1)SU3 ;Εάν δεν έχουμε εγκατεστημένο κάπου το CallerID, κάντε το συμβολικό useragent=Cisco-SIPGateway/IOS-12.x ;Και ως PBX us Cisco-SIPGateway ;promiscredir = όχι ;usereqphone = όχι dtmfmode=rfc2833 ;Ρυθμίστε τον τόνο για το πάτημα των κουμπιών στο τηλέφωνο;compactheaders = yes videosupport=yes ;Ενεργοποίηση υποστήριξης βιντεοκλήσεων;textsupport=no maxcallbitrate=2048 bitrate video; ναι ;Ορίστε την κατάσταση Peer εάν δεν μπορεί να συνδεθεί=απορρίφθηκε πάνταauthreject=yes ;Εάν το αίτημα ελέγχου ταυτότητας απορρίφθηκε, τότε η απάντηση ΔΕΝ θα λέει ότι ο χρήστης έχει εισαχθεί λανθασμένα, προστασία για τα ονόματα χρήστη με ωμή επιβολή auth_options_requests=yes ;Απαιτούμε εξουσιοδότηση κατά την αποστολή OPTION και INVITE ; accept_outofcall_message = όχι ;outofcall_message_context = μηνύματα auth_message_requests=yes ;Ενεργοποίηση ελέγχου ταυτότητας αιτήματος MESSAGE ;g726nonstandard = yes ;outboundprovider8pathavert=yeain. =yes ;matchexternaddrlocally = yes ;dynamic_exclude_static = ναι ;contactdeny=0. 0.0.0/0.0.0.0 ;contactpermit=172.16.0.0/255.255.0.0 ;contactacl=named_acl_example ;rtp_engine=asterisk ;regcontext=sipregistrations regextenonqualify=yes και kills για την ποιότητα είναι από την επέκταση *ναι endI; το regcontext ; legacy_useroption_parsing=yes ;send_diversion=no ;shrinkcallerid=yes ;use_q850_reason = όχι ;refer_addheaders=yes autocreatepeer=no ;Απενεργοποίηση εγγραφής UAC χωρίς έλεγχο ταυτότητας και αποσύνδεση του μηνύματος για επιστροφή του κεντρικού υπολογιστή t1min=200 για να μεταβιβαστεί ξανά το χρονικό διάστημα t1min=200; ; timerb=32000 rtptimeout= 600 ;Διακοπή της κλήσης εάν δεν υπάρχει δραστηριότητα των ροών μέσων RTP μετά από 600 δευτερόλεπτα rtpholdtimeout=300 ;Ακύρωση της κλήσης εάν δεν υπάρχει δραστηριότητα ροών μέσων RTP σε κατάσταση αναμονής μετά από 300 δευτερόλεπτα;rtpkeepalive= ;συνεδρία- timers=originate ;session-expires=600 ;session-minse=90 ;session-refresher=uac ;sipdebug = yes ;recordhistory=yes ;dumphistory=yes ;allowsubscribe=no ;subscribecontext = προεπιλογή ;notifyring ;notifyring = όχι; notifycid = ναι callcounter=yes ;Ενεργοποίηση του μετρητή κλήσεων t38pt_udptl=yes ;Ενεργοποίηση υποστήριξης για T.38 με διόρθωση σφάλματος FEC faxdetect=yes ;Ενεργοποίηση ανίχνευσης CNG και T.38 nat=auto_force_rport,auto_comedia ;Αυτόματη εύρεση δεδομένων στο Nat η θύρα από την οποία το έλαβε το Asterisk και όχι αυτό που έλαβε στο SDP ;media_address = 172.16.42.1 ;subscribe_network_change_event = yes ;icesupport = yes directmedia=no ;Προωθούμε την κυκλοφορία RTP απευθείας μεταξύ ομότιμων, παρακάμπτοντας τον Asterisk ;directrtpsetup=yes ;direct . =όχι ;encryption_taglen=80 ;avpf=yes ;force_avp=yes ;rtcachefriends=yes ;rtsavesysname=yes ;rtupdate =yes ;rtautoclear=yes ;ignoreregexpire=yes ;domain=customeraexternal=customeraextternal.com. τομείς =no ;fromdomain=mydomain.tld ;snom_aoc_enabled = ναι jbenable=yes ;Ενεργοποίηση της χρήσης του buffer RTP για αντιστάθμιση καθυστερήσεων, jbforce = no jbmaxsize=200 ;Set μέγιστο μέγεθος RTP buffer 200 ms;jbresyncthreshold = 1000 ;jbimpl = fixed ;jbtargetextra = 40 ;jblog = no

3. Χρησιμοποιούμε μη τυπική θύρα IAX.

Για να το κάνετε αυτό στο αρχείο /etc/asterisk/iax.confστο τμήμα αλλάξτε την παράμετρο bindport=4569ανά παράμετρο bindport=9069

4. Το Asterisk πρέπει να εκκινηθεί ως διαφορετικός χρήστης (όχι root). Πώς να το κάνετε αυτό γράφεται στο άρθρο.

5. Ορίστε επιτρεπόμενες διευθύνσεις IP ή δίκτυα για επεκτάσεις SIP.

deny=0.0.0.0/0.0.0.0 ;Deny Everything permit=10.0.0.0/255.0.0.0 ;Να επιτρέπεται η γνωστή άδεια=172.20.0.0/255.255.0.0 ;Να επιτρέπεται η γνωστή άδεια=192.168.0.0/Allow the known

6. Ορίστε ένα όριο για ταυτόχρονες κλήσεις.

call-limit=2 ;Ρυθμίστε την τιμή σε 2 ώστε ο χρήστης να μπορεί να πραγματοποιήσει μεταφορά

7. Ορίστε διαφορετικούς κανόνες εξερχόμενης δρομολόγησης για κάθε χρήστη.

Είναι απαραίτητο να αφαιρέσετε όλες τις προεπιλεγμένες διαδρομές και να εκχωρήσετε τις δικές σας, που διακρίνονται από τα περιβάλλοντα:

  • Τοπικά σετ
  • Τοπικές κλήσεις
  • Κλήσεις ζώνης
  • Υπεραστικές κλήσεις
  • Διεθνείς κλήσεις
Μια πλήρης λίστα κωδικών ABC, DEF μπορεί να ληφθεί από τον επίσημο πόρο Rossvyaz.
Για την προεπιλεγμένη διαδρομή, κάντε exten => _X.,1,Hangup()

8. Χρησιμοποιήστε IPtables

9. Χρησιμοποιήστε το Fail2Ban

10. Συνδέουμε όλες τις τηλεφωνικές συσκευές σε ξεχωριστό Voice VLAN. Εδώ πρέπει να πιέσουμε τους δικτυωτές.

11. Δίνουμε ιδιαίτερη προσοχή στη διεθνή κατεύθυνση 8-10.

Καθορίζουμε μόνο τις οδηγίες που χρησιμοποιούνται στον οργανισμό και τις προσθέτουμε (επεκτείνουμε) ανάλογα με τις ανάγκες. Στέλνουμε επίσης μια ειδοποίηση μέσω email εάν ένας χρήστης ή εισβολέας έχει χρησιμοποιήσει έναν άγνωστο διεθνή προορισμό και θέτουμε ένα όριο σε κάθε σύνδεση και στον ταυτόχρονο αριθμό κλήσεων. Μια έτοιμη λύση για την προστασία των οδηγιών 8-10 περιγράφεται στο άρθρο.

12. Απενεργοποιήστε τα αχρησιμοποίητα κανάλια και υπηρεσίες.

Για παράδειγμα, εάν δεν χρησιμοποιείτε το πρωτόκολλο MGCPή Κοκαλιάρης, απενεργοποιήστε αυτές τις μονάδες στο αρχείο /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_application => res._ari. > 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_asterisk.so_ari => res_ari_asterisk.j_ari = res_ari_asterisk. .so noload => cdr_mysql.so noload => res_phoneprov.so noload => cdr_odbc.so noload => cdr_pgsql.so ;======================= ===== ; PBX -- noload => pbx_ael.so ; Κανάλια -- 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_chani_bestdata.4.modem_> so noload => chan_alsa.so noload => chan_oss.so ; Κωδικοποιητές -- noload => codec_lpc10.so ; Μορφές -- noload => format_au.so noload => format_gsm.so noload => format_h263.so noload => format_ilbc.so noload => format_jpeg.so ; Εφαρμογές -- noload => app_image.so noload => app_zapateller.so noload => app_zapbarge.so noload => app_zapscan.so noload => res_config_ldap.so

13. Περιορίζουμε την απομακρυσμένη πρόσβαση στο IP-PBX χρησιμοποιώντας το Τείχος προστασίας.

Εάν σκοπεύετε να παρέχετε απομακρυσμένη πρόσβασηγια εξουσιοδοτημένους υπαλλήλους, είναι καλύτερο να το οργανώσετε στο Βοήθεια VPNδιακομιστή (για παράδειγμα, Open VPN).

Σήμερα, πολύ συχνά έχουμε να αντιμετωπίσουμε διάφορους τύπους επιθέσεων σε Asterisk και ανάλογα. Η εσφαλμένη διαμόρφωση και η άγνοια απλών κανόνων συνεπάγονται οικονομικές απώλειες για μια επιχείρηση που χρησιμοποιεί PBX Asterisk.

Σε αυτό το άρθρο, θα εξετάσουμε τους αρχικούς μηχανισμούς ασφαλείας του Asterisk 13 μετά την εγκατάσταση και δεν θα καλύπτουμε τους μηχανισμούς ασφαλείας Linux. Παρακάτω θα περιγράψουμε έναν αριθμό κανόνων που θα βοηθήσουν στην ασφάλεια του συστήματός σας:

1. Κωδικοί πρόσβασης και στοιχεία σύνδεσης ανθεκτικά στο hack σε όλες τις συσκευές δικτύου (Asterisk, τηλέφωνα IP, πύλες VoIP).

Οι κωδικοί πρόσβασης για λογαριασμούς SIP, διαχειριστές, διαχειριστές Asterisk και συσκευές δικτύου πρέπει να αποτελούνται από τουλάχιστον 13 χαρακτήρες (γράμματα, αριθμούς, ειδικούς χαρακτήρες, αλλαγή πεζών-κεφαλαίων). Μην χρησιμοποιείτε στοιχεία σύνδεσης στο σύστημα όπως διαχειριστής, διαχειριστής, διαχειριστής κ.λπ.

2. Σωστή διαμόρφωση SIP στο Asterisk – sip.conf.

Για προστασία από σαρωτές, θα πρέπει να αλλάξετε την τυπική θύρα SIP, να απαγορεύσετε τις κλήσεις και τις εγγραφές επισκεπτών, τις επικαλυπτόμενες κλήσεις, τη συνδρομή σε πληροφορίες κατάστασης καναλιού κ.λπ. Μια πλήρης περιγραφή των γενικών παραμέτρων sip.conf περιγράφεται στο άρθρο. Παρακάτω είναι το sip.conf που διαμόρφωσα για τον διακομιστή Asterisk με σχόλια:

Context=default ;Ορίστε ένα αχρησιμοποίητο περιβάλλον για εξερχόμενες κλήσεις από προεπιλογή allowguest=no ;Απαγόρευση συνδέσεων επισκέπτη (χωρίς έλεγχο ταυτότητας) match_auth_username=no ;Απαγόρευση της χρήσης του πεδίου "username" αντί του "from" allowoverlap=no ;Απαγόρευση μονοψήφιων dialing;allowtransfer= no ;Απαγορεύουμε τη χρήση του τομέα προώθησης=CUCM11.5(1)SU3 ;Χρησιμοποιούμε το όνομα τομέα του διακομιστή μας (αποκρύπτουμε αυτόν τον αστερίσκο) ;domainsasrealm=no ;recordonfeature=automixmon bindport=9050 ;Αλλαγή της σηματοδότησης SIP θύρα udpbindaddr=0.0.0.0 ;Διεύθυνση UDP από -προεπιλογή tcpenable=yes ;Ενεργοποιήστε την υποστήριξη TCP (σε περίπτωση που έχετε Avaya) tcpbindaddr=0.0.0.0 ;Προεπιλεγμένη διεύθυνση TCP;tlsenable=no ;tlsbindaddr=0.0thtime =0.0.0.u. tcpauthlimit = 100 ;websocket_enabled = true ; websocket_write_timeout = 100 transport=udp ;Προεπιλεγμένη μεταφορά srvlookup=yes ;Να επιτρέπονται οι κλήσεις σε ονόματα DNS;pedantic=yes ;tos_sip=cs3 ;tos_toafosext1=cs3 ;tos_toafoext1= cos_sip=3 ;cos_audio=5 ;cos_video=4 ;cos_text=3 ;maxexpiry=3600 ;minexpiry=60 ;defaultexpiry=120 ;submaxexpiry=3600 ;subminexpiry=60 ;mwiexpiry=60;mwiexpiry=0x0wards έλεγχος διαθεσιμότητας σε 60 δευτερόλεπτα;qualifygap= 100 ;qualifypeers=1 ;keepalive=60 ;notifymimetype=text/plain ;buggymwi=no ;mwi_from=asterisk ;vmexten=φωνητικό ταχυδρομείο ;preferred_codec_only=ναι επιτρέπεται ο κωδικός να επιτρέπεται=αποτρέπεται allawalc; =ulaw ;Να επιτρέπεται η Ulaw ;autoframing=yes ;mohinterpret=default ;mohsuggest=default ;parkinglot=plaza language=ru ;Κάντε τα ρωσικά την προεπιλεγμένη γλώσσα στο σύστημα tonezone=ru ;Προσδιορίστε την καθολική τονική ζώνη στο Ru relaxdtmf=yes ;Ενεργοποίηση εκ νέου κακώς αναγνωρισμένα σήματα DTMF;trustrpid = όχι ;sendrpid = ναι rpid_update=yes ;Άμεση ειδοποίηση του επερχόμενου διακομιστή σχετικά με αλλαγές στην κατάσταση γραμμής;trust_id_outbound = όχι ;prematuremedia=no ;progressinband=no callerid=CUCM11.5;() Εάν δεν έχουμε εγκατεστημένο κάπου το CallerID, κάντε το το συμβολικό του useragent=Cisco-SIPGateway/IOS-12.x ;Και ως PBX έχουμε το Cisco-SIPGateway ;promiscredir = no ;usereqphone = no dtmfmode=rfc2833 ;Ρυθμίστε τον τόνο για πάτημα κουμπιών στο τηλέφωνο;compactheaders = yes videosupport=yes ; Ενεργοποιούμε την υποστήριξη βιντεοκλήσεων; textsupport=no maxcallbitrate=2048 ;Μέγιστος ρυθμός μετάδοσης bit επικοινωνίας βίντεο authfailureevents=yes ;Ρυθμίστε την κατάσταση Peer εάν δεν μπορεί να συνδεθεί = απορρίφθηκε πάνταauthreject=ye ;Εάν το αίτημα ελέγχου ταυτότητας απορρίφθηκε, τότε η απάντηση ΔΕΝ θα πει ότι ο χρήστης δεν έχει εισαχθεί, προστασία του Auth_OPTIONS_REQUESTS = YES; Απαιτούμε εξουσιοδότηση για την επιλογή Prects και την πρόσκληση; Accept_outofCall_Message_Message_Context =Turtext_Messages Auth_OPTIONS_REQUESTS = YES έλεγχος ταυτότητας των αιτημάτων Μήνυμα; G726NSTANDANDARD = Ναι; OUTBUNDPROXY = Proxy.Provider.Domain: 8080; SupportPath =yes ;rtsavepath=yes ;matchexternaddrlocally = yes ;dynamic_exclude_static = yes.=0; 0.0.0/0.0.0.0 ;contactpermit=172.16.0.0/255.255.0.0 ;contactacl=named_acl_example ;rtp_engine=asterisk ;regcontext=sipregistrations regextenonqualify=yes και kills για την ποιότητα είναι από την επέκταση *ναι endI; το regcontext ; legacy_useroption_parsing=yes ;send_diversion=no ;shrinkcallerid=yes ;use_q850_reason = όχι ;refer_addheaders=yes autocreatepeer=no ;Απενεργοποίηση εγγραφής UAC χωρίς έλεγχο ταυτότητας και αποσύνδεση του μηνύματος για επιστροφή του κεντρικού υπολογιστή t1min=200 για να μεταβιβαστεί ξανά το χρονικό διάστημα t1min=200; ; timerb=32000 rtptimeout= 600 ;Διακοπή της κλήσης εάν δεν υπάρχει δραστηριότητα των ροών μέσων RTP μετά από 600 δευτερόλεπτα rtpholdtimeout=300 ;Ακύρωση της κλήσης εάν δεν υπάρχει δραστηριότητα ροών μέσων RTP σε κατάσταση αναμονής μετά από 300 δευτερόλεπτα;rtpkeepalive= ;συνεδρία- timers=originate ;session-expires=600 ;session-minse=90 ;session-refresher=uac ;sipdebug = yes ;recordhistory=yes ;dumphistory=yes ;allowsubscribe=no ;subscribecontext = προεπιλογή ;notifyring ;notifyring = όχι; notifycid = ναι callcounter=yes ;Ενεργοποίηση του μετρητή κλήσεων t38pt_udptl=yes ;Ενεργοποίηση υποστήριξης για T.38 με διόρθωση σφάλματος FEC faxdetect=yes ;Ενεργοποίηση ανίχνευσης CNG και T.38 nat=auto_force_rport,auto_comedia ;Αυτόματη εύρεση δεδομένων στο Nat η θύρα από την οποία το έλαβε το Asterisk και όχι αυτό που έλαβε στο SDP ;media_address = 172.16.42.1 ;subscribe_network_change_event = yes ;icesupport = yes directmedia=no ;Προωθούμε την κυκλοφορία RTP απευθείας μεταξύ ομότιμων, παρακάμπτοντας τον Asterisk ;directrtpsetup=yes ;direct . =όχι ;encryption_taglen=80 ;avpf=yes ;force_avp=yes ;rtcachefriends=yes ;rtsavesysname=yes ;rtupdate =yes ;rtautoclear=yes ;ignoreregexpire=yes ;domain=customeraexternal=customeraextternal.com. τομείς =no ;fromdomain=mydomain.tld ;snom_aoc_enabled = ναι jbenable=yes ;Ενεργοποιήστε τη χρήση της προσωρινής μνήμης RTP για αντιστάθμιση καθυστερήσεων; jbforce = no jbmaxsize=200 ;Ρυθμίστε το μέγιστο μέγεθος προσωρινής μνήμης RTP σε 200j100thm = σταθερό ;jbtargetextra = 40 ;jblog = όχι

3. Χρησιμοποιούμε μη τυπική θύρα IAX.

Για να το κάνετε αυτό στο αρχείο /etc/asterisk/iax.confστο τμήμα αλλάξτε την παράμετρο bindport=4569ανά παράμετρο bindport=9069

4. Το Asterisk πρέπει να εκκινηθεί ως διαφορετικός χρήστης (όχι root). Πώς να το κάνετε αυτό είναι γραμμένο στο.

5. Ορίστε επιτρεπόμενες διευθύνσεις IP ή δίκτυα για επεκτάσεις SIP.

deny=0.0.0.0/0.0.0.0 ;Deny Everything permit=10.0.0.0/255.0.0.0 ;Να επιτρέπεται η γνωστή άδεια=172.20.0.0/255.255.0.0 ;Να επιτρέπεται η γνωστή άδεια=192.168.0.0/Allow the known

6. Ορίστε ένα όριο για ταυτόχρονες κλήσεις.

call-limit=2 ;Ρυθμίστε την τιμή σε 2 ώστε ο χρήστης να μπορεί να πραγματοποιήσει μεταφορά

7. Ορίστε διαφορετικούς κανόνες εξερχόμενης δρομολόγησης για κάθε χρήστη.

Είναι απαραίτητο να αφαιρέσετε όλες τις προεπιλεγμένες διαδρομές και να εκχωρήσετε τις δικές σας, που διακρίνονται από τα περιβάλλοντα:

  • Τοπικά σετ
  • Τοπικές κλήσεις
  • Κλήσεις ζώνης
  • Υπεραστικές κλήσεις
  • Διεθνείς κλήσεις

Μια πλήρης λίστα κωδικών ABC, DEF μπορεί να ληφθεί από τον επίσημο πόρο Rossvyaz.
Για την προεπιλεγμένη διαδρομή, κάντε

Επέκταση => _X.,1,Hangup()

8.

9.

10. Συνδέουμε όλες τις τηλεφωνικές συσκευές σε ξεχωριστό Voice VLAN. Εδώ πρέπει να πιέσουμε τους δικτυωτές.

11. Δίνουμε ιδιαίτερη προσοχή στη διεθνή κατεύθυνση 8-10.

Καθορίζουμε μόνο τις οδηγίες που χρησιμοποιούνται στον οργανισμό και τις προσθέτουμε (επεκτείνουμε) ανάλογα με τις ανάγκες. Στέλνουμε επίσης μια ειδοποίηση μέσω email εάν ένας χρήστης ή εισβολέας έχει χρησιμοποιήσει έναν άγνωστο διεθνή προορισμό και θέτουμε ένα όριο σε κάθε σύνδεση και στον ταυτόχρονο αριθμό κλήσεων. Μια έτοιμη λύση για την προστασία των οδηγιών 8-10 περιγράφεται στο άρθρο.

12. Απενεργοποιήστε τα αχρησιμοποίητα κανάλια και υπηρεσίες.

Για παράδειγμα, εάν δεν χρησιμοποιείτε MGCP ή Skinny, απενεργοποιήστε αυτές τις λειτουργικές μονάδες στο αρχείο /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_application => res._ari. > 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_asterisk.so_ari => res_ari_asterisk.j_ari = res_ari_asterisk. .so noload => cdr_mysql.so noload => res_phoneprov.so noload => cdr_odbc.so noload => cdr_pgsql.so ;======================= ===== ; PBX -- noload => pbx_ael.so ; Κανάλια -- 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_chani_bestdata.4.modem_> so noload => chan_alsa.so noload => chan_oss.so ; Κωδικοποιητές -- noload => codec_lpc10.so ; Μορφές -- noload => format_au.so noload => format_gsm.so noload => format_h263.so noload => format_ilbc.so noload => format_jpeg.so ; Εφαρμογές -- noload => app_image.so noload => app_zapateller.so noload => app_zapbarge.so noload => app_zapscan.so noload => res_config_ldap.so

13. Περιορίζουμε την απομακρυσμένη πρόσβαση στο IP-PBX χρησιμοποιώντας το Τείχος προστασίας.

Εάν σκοπεύετε να παρέχετε απομακρυσμένη πρόσβαση σε εξουσιοδοτημένους υπαλλήλους, είναι καλύτερο να το οργανώσετε χρησιμοποιώντας Διακομιστές VPN(για παράδειγμα, Open VPN).

14. Ορίστε περιορισμένα δικαιώματα σε καταλόγους.

Οποιαδήποτε χρήση του υλικού του ιστότοπου είναι δυνατή μόνο με την άδεια του συγγραφέα και με την υποχρεωτική αναγραφή της πηγής.

Στο σημερινό άρθρο θα μιλήσουμε για το πώς να προστατεύσετε ένα IP PBX από μη εξουσιοδοτημένη πρόσβαση και θα δώσουμε μερικές απλές συμβουλές, ακολουθώντας τις οποίες μπορείτε να αυξήσετε σημαντικά την ασφάλεια του τηλεφωνικού σας κέντρου. Τα παραδείγματα που θα δοθούν σε αυτό το άρθρο σχετίζονται με IP-PBX που βασίζονται σε Asterisk, αλλά πολλά από αυτά ισχύουν για όλα τα VoIP-PBX χωρίς εξαίρεση.

Αρχικά, ας καταλάβουμε ποιες τρύπες ασφαλείας απειλούν και ποιες συνέπειες αντιμετωπίζει μια επιχείρηση εάν ένας εισβολέας αποκτήσει πρόσβαση σε ένα IP PBX.

Απειλή hacking

Σε αντίθεση με το hacking προσωπικός υπολογιστήςή ταχυδρομείο, η παραβίαση ενός PBX σημαίνει δωρεάν κλήσεις για τον χάκερ, για τις οποίες θα πρέπει να πληρώσει ο ιδιοκτήτης του PBX. Υπάρχουν πολλές περιπτώσεις όπου οι χάκερ ξόδεψαν τεράστια χρηματικά ποσά αφού πέρασαν μόνο λίγες ώρες σε ένα παραβιασμένο PBX.

Κατά κανόνα, οι στόχοι των εισβολέων είναι IP-PBX που είναι προσβάσιμα από δημόσιο δίκτυο. Χρησιμοποιώντας διάφορους σαρωτές SIP και εξετάζοντας τα τρωτά σημεία του συστήματος, επιλέγουν μέρη για να επιτεθούν. Προεπιλεγμένοι κωδικοί πρόσβασης, ανοιχτές θύρες SIP, τείχος προστασίας με ακατάλληλη διαχείριση ή απουσία του - όλα αυτά μπορούν να προκαλέσουν μη εξουσιοδοτημένη πρόσβαση.

Ευτυχώς, όλα αυτά τα τρωτά σημεία μπορούν να διορθωθούν και εντελώς δωρεάν.

Απλά βήματα για τη βελτίωση της ασφάλειας

Όπως μπορείτε να δείτε, η προστασία ενός IP-PBX από εξωτερικές εισβολές δεν είναι τόσο δύσκολη· ακολουθώντας τις προτεινόμενες συμβουλές, μπορείτε να αυξήσετε σημαντικά την ασφάλεια και την αξιοπιστία του συστήματος.

Η τηλεφωνία μπορεί να είναι φθηνή
και λειτουργικό!

Η εταιρεία IT KUB παρέχει ένα ευρύ φάσμα υπηρεσιών για εγκατάσταση, ενσωμάτωση και διαμόρφωση IP τηλεφωνίας

Οι υπηρεσίες πληροφορικής μπορούν να είναι υψηλής ποιότητας!

chmod 755 install_apf_bfd.sh

./install_apf_bfd.sh

Η διαμόρφωση APF βρίσκεται στο /etc/apf/conf.apf

Για να ξεκινήσετε την επεξεργασία του αρχείου, χρησιμοποιήστε την ακόλουθη εντολή:

nano /etc/apf/conf.apφά

Ορίστε τα IFACE_IN και IFACE_OUT για τη διεπαφή δικτύου που βλέπει στο Διαδίκτυο. Για διεπαφή δικτύου που αντιμετωπίζει τοπικό δίκτυο, ορίστε IFACE_TRUSTED.

SET_TRIM="0"

Το APF έχει τη δυνατότητα να υποστηρίζει QoS. Για SIP και IAX πρέπει να εγκαταστήσετε τα εξής:

T.O.S. _8="21,20,80,4569,5060,10000_20000"

Εάν αλλάξατε τη θύρα SSH, θα χρειαστεί να επεξεργαστείτε το αρχείο conf.apf ώστε να ταιριάζει με τη νέα θύρα.

HELPER_SSH_PORT="2222"

Βεβαιωθείτε ότι έχετε αντικαταστήσει το 2222 με τον σωστό αριθμό θύρας στην οποία επιλέγετε να εκτελέσετε το SSH.

Το φιλτράρισμα εισερχομένων χρησιμοποιείται για το άνοιγμα θυρών για πρόσβαση. Το TCP και το UDP έχουν ξεχωριστές ρυθμίσεις. Για το Asterisk (Trixbox), οι ακόλουθες θύρες πρέπει να είναι ανοιχτές. παρατίθενται τόσο το TCP όσο και το UDP. Εάν δεν χρησιμοποιείτε TFTP, μην ανοίξετε τη θύρα 69. Μην ξεχάσετε να αλλάξετε τη θύρα SSH. Διαφορετικά, δεν θα μπορείτε να αποκτήσετε πρόσβαση. Εδώ χρησιμοποιούμε τη θύρα 2222 από το τελευταίο μας παράδειγμα. Δεν συμπεριλάβαμε θύρες IAX σε αυτήν την εγκατάσταση. Τρώω εύκολος τρόποςβεβαιωθείτε ότι μόνο ορισμένοι οικοδεσπότες μπορούν να χρησιμοποιήσουν το IAX, το οποίο θα καλύψουμε αργότερα. Αυτό είναι βολικό εάν χρησιμοποιείτε το IAX για να τοποθετήσετε κορμούς διασταθμών που είναι αόρατοι στον έξω κόσμο.

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

Δεν χρησιμοποιώ φιλτράρισμα εξερχόμενων, επομένως δεν καλύπτεται σε αυτό το άρθρο. Έχει οριστεί σε EGF="0", απενεργοποιημένο από προεπιλογή.

Για να δείτε μια λίστα επιλογών γραμμή εντολών, εκτελέστε το apf χωρίς σημαίες.

#apf
apf(3402): αρχείο καταγραφής κατάστασης (glob). δεν βρέθηκε, δημιουργήθηκε
APF έκδοση 9.6< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Πνευματικά δικαιώματα (C) 1999-2007, R-fx Networks< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Πνευματικά δικαιώματα (C) 2007, Ryan MacDonald< This email address is being protected from spambots. You need JavaScript enabled to view it. >
Αυτό το πρόγραμμα μπορεί να αναδιανεμηθεί ελεύθερα σύμφωνα με τους όρους της GNU GPL
χρήση /usr/local/sbin/apf
-s|--start ........................... φόρτωση όλων των κανόνων του τείχους προστασίας
-r|-- επανεκκίνηση ...................... διακοπή (ξέπλυμα) & επαναφόρτωση κανόνων τείχους προστασίας
-f|--stop...... ................. διακοπή (ξεπλύνετε) όλους τους κανόνες του τείχους προστασίας
-l|--list ........................... λίστα όλων των κανόνων του τείχους προστασίας
-t|--κατάσταση ........................ καταγραφής κατάστασης τείχους προστασίας εξόδου
-e|--refresh ........................... ανανέωση & επίλυση ονομάτων dns σε εμπιστοσύνη
κανόνες
-a HOST CMT|--επιτρέψτε το HOST COMMENT ... προσθήκη κεντρικού υπολογιστή (IP/FQDN) σε
allow_hosts.rules και φορτώστε αμέσως νέο κανόνα στο τείχος προστασίας
-d HOST CMT|--άρνηση HOST COMMENT .... προσθήκη κεντρικού υπολογιστή (IP/FQDN) σε
deny_hosts.rules και φορτώστε αμέσως νέο κανόνα στο τείχος προστασίας
-u|--αφαίρεση HOST ................... κατάργηση κεντρικού υπολογιστή από
*_hosts.rules και αφαιρέστε αμέσως τον κανόνα από το τείχος προστασίας
-o|--ovars ........................ εξάγει όλες τις επιλογές διαμόρφωσης

Για να ξεκινήσουμε το APF χρησιμοποιούμε τις ακόλουθες εντολές:

# apf -s
apf(3445): (glob) που ενεργοποιεί το τείχος προστασίας
apf(3489): (glob) που προσδιορίστηκε (IFACE_IN) eth0 έχει διεύθυνση 192.168.1.31
apf(3489): (glob) που προσδιορίστηκε (IFACE_OUT) eth0 έχει διεύθυνση 192.168.1.31
apf(3489): (glob) φόρτωση 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) ανάλυση drop.lasso στο /etc/apf/sdrop_hosts.rules
apf(3489): (sdrop) φόρτωση sdrop_hosts.rules
apf(3489): (glob) φόρτωση κοινών θυρών πτώσης
..........κομμένο για αυτό το έγγραφο.........
apf(3489): (glob) προεπιλεγμένη (εισόδου) πτώση εισόδου
apf(3445): αρχικοποιήθηκε το τείχος προστασίας (glob).
apf(3445): (glob) !!ΕΝΕΡΓΟΠΟΙΗΜΕΝΗ ΛΕΙΤΟΥΡΓΙΑ ΑΝΑΠΤΥΞΗΣ!! - το τείχος προστασίας θα ξεπλυθεί
κάθε 5 λεπτά.

Μπορούμε να δούμε ότι το APF έχει ξεκινήσει, έχει κατεβάσει αρκετούς κανόνες από το dshield.org και το spamhaus.org. Τώρα ας δοκιμάσουμε τη σύνδεση στον διακομιστή Asterisk (Trixbox) μέσω SSH για να βεβαιωθούμε ότι έχετε ρυθμίσει τα πάντα σωστά. Εάν δεν μπορείτε να συνδεθείτε, πρέπει να περιμένετε 5 λεπτά και στη συνέχεια το APF θα αφαιρέσει το μπλοκ. Μόλις βεβαιωθείτε ότι μπορείτε να συνδεθείτε μέσω SSH, μπορούμε να αλλάξουμε το conf.apf DEVEL_MODE = "1" σε DEVEL_MODE = "0" και να επανεκκινήσουμε το APF. Το APF θα ξεκινήσει και δεν θα εκδώσει προειδοποίηση ότι βρίσκεται σε DEVELOPMETN_MODE.

APF: πρόσθετος συντονισμός

Η εγκατάσταση δεν τελειώνει εκεί, εάν θέλετε να συνδέσετε τους διακομιστές Asterisk (Trixbox) μέσω IAX. Για να το κάνετε αυτό θα χρειαστεί να προσθέσετε θύρες IAX στο conf.apf. Αυτή η επιλογή θα λειτουργήσει με στατικές διευθύνσεις IP ή με DynDNS. Η εντολή apf -a επιτρέπει την πρόσβαση για μια συγκεκριμένη διεύθυνση IP. Αυτό θα επιτρέψει παγκοσμίως στον κεντρικό υπολογιστή να συνδεθεί στο Asterisk (Trixbox) παρακάμπτοντας τους κανόνες του τείχους προστασίας.

apf -a 192.168.1.216

Αυτό θα επιτρέψει στο σύστημα 192.168.1.216 να συνδεθεί σε οποιαδήποτε θύρα του διακομιστή με τείχος προστασίας, παρακάμπτοντας έτσι τους κανόνες του τείχους προστασίας. Εάν εκτελείτε APF και στα δύο Asterisk (Trixbox), φροντίστε να κάνετε το ίδιο πράγμα στον άλλο κεντρικό υπολογιστή χρησιμοποιώντας τη σωστή διεύθυνση IP.

Το APF επιτρέπει επίσης διαχειριστής συστήματοςμπλοκάρει έναν κεντρικό υπολογιστή ή ένα ολόκληρο υποδίκτυο. Αυτό είναι βολικό αν δείτε ότι κάποιος προσπαθεί να συνδεθεί στο μηχάνημά σας μέσω FTP, Telnet, SSH κ.λπ. Για να αποκλείσετε έναν συγκεκριμένο κεντρικό υπολογιστή, χρησιμοποιήστε τα εξής: βεβαιωθείτε ότι χρησιμοποιείτε τη διεύθυνση IP που θέλετε να αποκλείσετε.

apf -d 192.168.1.216

Για να αποκλείσετε ένα πλήρες υποδίκτυο (CIDR):

apf -d 202.86.128.0/24

Το APF δεν υποστηρίζει QoS για πακέτα UDP. Μόνο TCP. Υπάρχει ένας εύκολος τρόπος να το διορθώσετε. Υπάρχει ένα αρχείο functions.apf στο /etc/apf/internals. Πρέπει να επεξεργαστούμε αυτό το αρχείο με μη αυτόματο τρόπο. Υπάρχουν πολλά μέρη όπου πρέπει να προσθέσουμε μία μόνο γραμμή. Αναζητούμε την ενότητα TOS_ στο αρχείο functions.apf. Θα μοιάζει με αυτό:

αν [! "$TOS_0" == "" ]; έπειτα
για i σε `echo $TOS_0 | tr "," " ""; κάνω
i=`ηχώ $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
Έγινε
fi

Αυτή η επιπλέον γραμμή πρέπει να γίνει για όλα τα bit TOS που χρησιμοποιείτε.

B.F.D.

Η ανίχνευση ωμής δύναμης (επίθεση λεξικού) χρησιμοποιείται για τον εντοπισμό μη εξουσιοδοτημένων προσπαθειών σύνδεσης.

Το αρχείο ρυθμίσεων για το BFD βρίσκεται στο /usr/local/bfd και ονομάζεται conf.bfd. Αυτό το αρχείο, όπως και το αρχείο APF, περιέχει πολλά σχόλια. Θα δούμε μόνο μερικές από τις ρυθμίσεις.

Η πρώτη μεταβλητή διαμόρφωσης που θα εξετάσουμε είναι το TRIG. αυτός είναι ο αριθμός των αποτυχημένων προσπαθειών πριν αποκλειστεί ο εισβολέας. Η προεπιλογή είναι 15. Λάβετε υπόψη ότι αυτός είναι ο αριθμός των προσπαθειών όχι από έναν λογαριασμό, αλλά από μία διεύθυνση IP. Έτσι, εάν υπάρχουν 15 ανεπιτυχείς προσπάθειες σύνδεσης από 1 διεύθυνση IP με χρήση διαφορετικών λογαριασμών, θα εξακολουθεί να είναι αποκλεισμένη.

Το BFD έχει ένα καλό χαρακτηριστικό - αποστολή emailόταν ανιχνεύεται ωμή βία. Για να ενεργοποιήσετε αυτήν την επιλογή, ορίστε το EMAIL_ALERTS σε 1. μην ξεχάσετε να υποδείξετε τη διεύθυνση στην οποία θέλετε να λαμβάνετε ειδοποιήσεις - EMAIL_ADRESS.

Το BFD εκκινείται από το cron κάθε 3 λεπτά και βρίσκεται στο /etc/cron.d.

Μπορείτε να λάβετε μια λίστα με απαγορευμένες διευθύνσεις IP χρησιμοποιώντας την εντολή:

Για να ξεκινήσετε το BFD χρησιμοποιήστε την ακόλουθη εντολή:

bfd -s

Περίληψη

Αυτό ολοκληρώνει την επισκόπηση της ασφάλειας Asterisk (Trixbox).

Αυτό το άρθρο εξετάζει μόνο τις βασικές αρχές της προστασίας Asterisk (Trixbox). Φυσικά, η δημιουργία ασφαλών συστημάτων VoIP δεν περιορίζεται σε αυτό.

Μπορείτε να διαβάσετε το αρχικό άρθρο στον σύνδεσμο



Φόρτωση...
Μπλουζα