• Instalace Asterisk: pokyny krok za krokem. Instalace FreePBX13 Asterisk13 na Centos7.

    Telefonní platforma

    Hvězdička je nejvíc populární systém telefonování po celém světě. Je oblíbený díky nepřebernému množství funkcí. Zájem o tuto telefonní platformu zvyšuje její svobodný charakter.

    Nebudu vypisovat všechny lahůdky Asterisk. Víš všechno dokonale i beze mě. Pojďme se bavit o nevýhodách.

    Pokud čtete tento článek, pak již znáte hlavní nevýhodu Asterisku. Mám na mysli skutečnost, že Asterisk není navržen tak, aby běžel na Windows. No, rozhodně ne. Asterisk funguje pouze na Linuxu a podobných operačních systémech jako FreeBSD.

    platforma IT infrastruktury

    Situace v drtivé většině firem v naší domovině je následující: Všude Windows. Na Počítače se systémem Windows. Na Windows servery. Notebooky se prodávají s předinstalovaným systémem Windows. Moderní levné tablety a ty jsou ve Windows. Vše užitečné a potřebné programy for business jsou napsány tak, aby fungovaly na Windows.

    Je to dobré nebo špatné? O tom teď nemluvíme.

    Potřeba pracovat. Dokončete zadané úkoly. Podnikání se musí rozvíjet a vydělávat peníze. A dnes se nevydáme na křížovou výpravu proti Microsoftu.

    Dnes vám řeknu, co musíte udělat pro nasazení telefonování ve firmě, aniž byste se ponořili do světa Linuxu a černých obrazovek s mnoha nesrozumitelnými příkazy.

    Pojďme si nastínit plán:

    1. Potřebujeme systém Hvězdicová telefonie,
    2. Chceme nakonfigurovat Asterisk pomocí GUI pomocí myši,
    3. Potřebujeme distribuovat uživatelům (ředitel, tajemník, vedoucí oddělení) program pro práci se statistikou. Musí obsahovat všechny nápisy v ruštině. A tam by měli snadno vyhledávat hovory podle čísla, zaměstnance a vytvářet grafy podle úrovně telefonních služeb.

    Body jedna a dva. Nainstalujte Asterisk s grafickým konfiguračním rozhraním na Windows:

    Co to děláme:

    1. Stažení volný program VirtualBox na tomto odkazu,
    2. Stáhněte si hotový obrázek Asterisk pro VirtualBox z tohoto odkazu.

    Po stažení:

    1. Nainstalujte VirtualBox. Po celou dobu tiskneme další;
    1. V okně Programy VirtualBox Klikněte na „Soubor“ > „Importovat konfigurace“. Označíme cestu k obrázku hvězdičky, který jste právě stáhli;
    2. Po importu byste měli spustit virtuální stroj a začněte nastavovat telefonování v kanceláři.

    Výsledek instalace:

    Obdrželi jste telefonní systém Asterisk s WEB rozhraním FreePBX (Elastix). Tento obrázek Asterisk funguje pod jakýmkoliv Verze Windows.

    Přihlašovací jména a hesla pro hotový obrázek Elastix:

    Web: admin/helloasterisk

    SSH: root/helloasterisk

    MySQL: root/helloasterisk

    Instalační video:

    Bod tři. Instalujeme software pro uživatele telefonie.

    Jak víte, FreePBX je určen pro správu telefonního systému. Používá Správce systému pro nastavení. Ředitel a sekretářka, ale i další vedoucí pracovníci každý den pracují se statistikou hovorů a nahrávkami hovorů. FreePBX jim pro tyto účely nebude vyhovovat. Uživatel nerozumí IT. Často se jedná o nezabezpečeného uživatele PC. Proto potřebuje rusifikovaný, intuitivní program.

    Podle mého názoru nejlépe splňuje tato kritéria program HelloAsterisk. Program má bezplatnou verzi. V tomhle bezplatná verze velké množství požadované funkce. Existují také placené funkce. Popis najdete na oficiálních stránkách programu.

    Dám video recenzi jednoho z nich bezplatné funkce Ahoj hvězdičko:

    Co potřebujete k instalaci programu:

    1. Navštivte stránky: odkaz
    2. Registrovat,
    3. Stáhněte si program na stránce ke stažení.
    4. Postupujte podle pokynů pro instalaci a konfiguraci programu. Pokyny jsou uvedeny na oficiálním odkazu na web HelloAsterisk.

    Souhrn:

    Samozřejmě je na vás, abyste si udělali vlastní závěry. Mohu jen vyjádřit svůj názor.

    Za sebe osobně jsem ještě jednou poznamenal, že dnes Asterisk žije v těsné blízkosti Windows. Tato čtvrť se za 10 let mého pozorování nezměnila. Pojďme tedy ze všeho softwaru, který nás obklopuje, vytěžit maximum!

    Pokud z nějakého důvodu nemáte dostatek času na vyřešení všech těchto věcí, tým MORE THAN ATS je vždy připraven vám s tím pomoci.

    Asterisk je řešením pro počítačová telefonie s otevřeným zdrojový kód, který podporuje protokoly VoIP, SIP a PJSIP pro operační systém Linux. Pokud k počítači připojíte příslušné zařízení, můžete pomocí Asterisk vytvářet plnohodnotná stanice ATC. Mezi hlavní funkce programu patří hlasová pošta, konference, interaktivní hlasové menu a distribuce hovorů.

    V tomto článku se podíváme na to, jak nainstalovat Asterisk 13 na Ubuntu 16.04. Většina nová verze Program není v oficiálních repozitářích, protože jej běžní uživatelé tak často nepoužívají, takže jej budeme muset zkompilovat ze zdroje.

    Instalace Asterisk na Ubuntu 16.04

    Chcete-li stavět ze zdrojů, budeme muset provést většinu akcí jménem superuživatele, takže se okamžitě dostaneme plná práva v systému:

    Vezměte prosím na vědomí, že pokud se přihlásíte na svůj server přes ssh jako root, budete se muset stále připojit jako běžný uživatel a teprve poté se přepněte do kořenové konzole. Dále musíte nainstalovat závislosti, aby program fungoval:

    apt-get install build-essential wget libssl-dev libncurses5-dev libnewt-dev libxml2-dev linux-headers-$(uname -r) libsqlite3-dev uuid-dev git subversion

    cd /usr/src
    $ wget downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz

    Chcete-li rozbalit zdroje, zadejte:

    tar zxvf asterisk-13-current.tar.gz


    Před kompilací programu musíme sestavit a nainstalovat pjproject. Nejprve si stáhněte zdroje:

    git klon git://github.com/asterisk/pjproject pjproject
    $ cd pjprojekt
    $ ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr CFLAGS="-O2 -DNDEBUG"
    $ make dep make && make install
    $ldconfig
    $ ldconfig -p|grep pj

    Konečně jsme nyní připraveni sestavit a nainstalovat Asterisk na Ubuntu 16.04:

    cd .. contrib/scripts/get_mp3_source.sh
    $ contrib/scripts/install_prereq install

    Tyto příkazy vám umožní nainstalovat některé závislosti pro přehrávání mp3. Dokončení může nějakou dobu trvat a budete také muset zadat kód země. Dále začneme s montáží:

    ./configure && make menuselect && make && make install

    Po dokončení instalace spusťte následující příkaz, abyste se vyhnuli ručnímu vytváření stovek konfiguračních souborů:

    Chcete-li nainstalovat init skripty, které umožní automatické spouštění hvězdičky, spusťte:

    udělat konfiguraci ldconfig

    Nyní můžete spustit server s hvězdičkou a ujistit se, že vše opravdu funguje:

    spuštění služby hvězdičkou

    A podívejte se na informace o nástroji prostřednictvím terminálu:


    Pokud bylo vše provedeno správně a instalace Asterisk na Ubuntu 16.04 byla úspěšná, pak bude vše fungovat.

    Nastavení Asterisk na Ubuntu 16.04

    Program běží jako superuživatel. Ale potřebujeme, aby to bylo možné spustit jako uživatel s hvězdičkou, takže musíme provést několik dalších nastavení. Tímto způsobem bude váš systém bezpečnější. Nejprve musíte zastavit běžící službu:

    přidat hvězdičku do skupiny
    $ useradd -d /var/lib/asterisk -g hvězdička hvězdička

    Dále musíme změnit inicializační skript tak, aby se program spouštěl jako požadovaný uživatel. Soubor /etc/default/asterisk můžeme upravit ručně, ale je jednodušší použít následující příkazy:

    sed -i "s/#AST_USER="hvězdička"/AST_USER="hvězdička"/g" /etc/default/hvězdička
    $ sed -i "s/#AST_GROUP="hvězdička"/AST_GROUP="hvězdička"/g" /etc/default/hvězdička

    Aby vše fungovalo správně, musí mít uživatel hvězdičky přístup ke všem adresářům programu:

    chown -R hvězdička:hvězdička /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/(lib,log,spool)/hvězdička /usr/lib/asterisk

    Také naznačíme správné nastavení uživatel pro pole runuser a rungroup v souboru asterisk.conf:

    sed -i "s/;runuser = hvězdička/runuser = hvězdička/g" /etc/asterisk/asterisk.conf

    $ sed -i "s/;rungroup = hvězdička/rungroup = hvězdička/g" /etc/asterisk/asterisk.conf

    Když je vše připraveno, spusťte dříve zastavenou službu nebo restartujte, pokud jste ji nezastavili:

    sudo služba hvězdička start

    Poté zkontrolujeme:

    Pokud jsou uživatel a skupina hvězdička, udělali jsme vše správně.

    závěry

    To je vše. Instalace Asterisk 13 na Ubuntu 16.04 je dokončena. Nyní můžete přejít k dalšímu nastavení sítě a volat mezi svými účastníky přímo přes internet. Jako klientský software můžete použít jakýkoli program, který podporuje potřebné protokoly, jako je Jitsi nebo Linphone.

    Linuxový program Asterisk je nutný pro tvorbu telefonních a PBX serverů. Má toho hodně užitečné funkce, který se bude hodit do každé kanceláře. Konference, záznamníky, distribuce hovorů, textové zprávy, video, hlasové menu a hlasová pošta. Nástroj podporuje oblíbené komunikační protokoly. Lze je přepínat. Instalace Asterisk na Ubuntu ale není nejjednodušší. Aplikace se stahuje a konfiguruje přes terminál. Proto se musíte naučit příkazy konzoly.

    1. Přejděte do složky "contrib/scripts/" pomocí příkazu "cd".
    2. Otevřete skript "get_mp3_source.sh".
    3. Zadejte "provést instalaci".
    4. Počkejte, než se archivy stáhnou.

    Nainstalovaný Asterisk musí být konfigurován jak přes menu, tak přes terminál. Otevřete tedy konzoli.

    1. Vytvořte konfigurační soubory. Lze použít jako test. Příkaz je „vyrobte vzorky“.
    2. Aktivujte funkci automatického spuštění - „make config ldconfig“.
    3. Nyní můžete spustit službu - „spuštění hvězdičky služby“.
    4. Nebo jej rovnou otevřete jako démona – „/etc/init.d/asterisk start“. Chcete-li povolit jeho konzoli, zadejte příkaz „sudo asterisk -rvvvcd“.

    Pro práci s Asterisk prozatím potřebujete práva superuživatele. Je ale lepší vytvořit samostatného uživatele a dát mu přístup k funkcím programu. Pro tohle:

    1. Dočasně deaktivujte obslužný program - „zastavení hvězdičky služby“.
    2. Přidat nového uživatele – „adduser [Jméno]“. Můžete vytvořit skupinu, které budete poskytovat potřebná práva. Bude se hodit, pokud se rozhodnete vytvořit několik uživatelů pro práci s různými službami Asterisk.
    3. Nyní potřebujeme adresář ke spuštění. Přidejte jej pomocí příkazu "mkdir". Za něj napište parametr „-p“ a cestu ke složce „/var/run/asterisk“.
    4. Chcete-li, aby se aplikace otevřela okamžitě pod požadovaným uživatelem, upravte soubor „/etc/default/asterisk“. Zde nastavte následující parametry: „AST_GROUP="dialout"" a "AST_USER="hvězdička"".
    5. Můžete to udělat jednodušeji – zadejte skript “sed -i ‘s/#AST_USER=”hvězdička”/AST_USER=”hvězdička”/g’ /etc/default/asterisk”.
    6. Poskytněte uživateli přístup ke všem složkám programu – „chown -R [Uživatelské-jméno] [Cesta k adresáři]“.
    7. Otevřete soubor „asterisk.conf“, najděte v něm parametr „runuser“ a určete v něm nově vytvořeného uživatele. Pokud jste vytvořili skupinu, přepište také řádek „rungroup“.
    8. Restartujte systém - "reboot".
    9. Přihlaste se jako uživatel Asterisk – „su [Jméno]“.
    10. A spusťte program.
    11. Chcete-li zobrazit informace o něm, zadejte „hvězdička -rvvvv“.

    Nástroj je připraven k použití. Další akce závisí na podmínkách, za kterých bude stanice používána. Existuje několik souborů, které obsahují konfiguraci:

    • conf - Obecné nastavení server. V něm můžete uvést, kolik odběratelů je připojeno. Stanovují pravidla vytáčení.
    • conf - také konfiguruje pravidla vytáčení a nastavuje parametry hovoru.
    • conf - konfigurace předplatitelských účtů.

    S Asterisk můžete vytvořit PBX libovolné složitosti. Má mnoho užitečných funkcí a modulů. Po instalaci a konfiguraci budete moci komunikovat se stanicí pomocí klientského softwaru. Například Linphone.

    V tomto článku naleznete plně funkční návod na instalaci a spuštění vlastní ústředny založené na moderní server IP telefonie Asterisk 13, stejně jako řídicí systémy přes webové rozhraní FreePBX 13.

    Proč FreePBX?

    Mnoho lidí nemá rádo FreePBX, jako důvod uvádí jeho netěsnost, pokřivenou rusifikaci a někdy nesrozumitelné rozhraní. Chci hned říct, že v Nejnovější verze Produkt byl opraven, mnoho chyb bylo opraveno, vizuální design a snadná navigace byly vylepšeny, dokonce i překlad rozhraní byl proveden na výrazně nové úrovni kvality. Nezapomeňte, že FreePBX umožní téměř každému specialistovi, včetně těch s počáteční úrovní znalostí, nastavit telefonní server během několika hodin. Ve výchozí konfiguraci získáte nejširší možné možnosti, tyto možnosti po vybalení stačí k řešení problémů i pro velké společnosti. Samozřejmě, pokud vám z nějakého důvodu chybí možnosti webového rozhraní a potřebujete implementovat nějakou unikátní (nestandardní) funkci, s největší pravděpodobností narazíte na řadu problémů spojených s používáním FreePBX, jedná se o různé berličky a obtížnosti v ladění. V tomto případě byste měli okamžitě začít rozumět čistému Asterisk, nebojte se konzole! Získáte obrovské množství znalostí a hlavně hluboké pochopení principů fungování serveru.

    Jak se tento článek liší od oficiálního manuálu nebo mnoha dalších článků na internetu:

    • V tomto článku najdete popis (kdo a proč) nainstalovaných balíčků a knihoven;
    • Zvažuje se mnoho aspektů zabezpečení a ochrany vašeho telefonního serveru;
    • Instalace FreePBX se provádí v souladu s vysokou úrovní zabezpečení;
    • Moje snaha o to, aby byl materiál dostupný a zajímavý i pro začátečníka;
    • Plně funkční pokyny pro instalaci FreePBX 13.

    Pokud jste spokojeni s funkcemi nabízenými v nejnovější verzi FreePBX 13, začněme s instalací a konfigurací serveru IP telefonie. Instalace vazy Hvězdička 13 + FreePBX 13 se stane připraven a naladěn server na základně CentOS Linux 7. Pro usnadnění vnímání a vizuální strukturování bude článek rozdělen do několika částí.

    Všechny příkazy v tomto článku jsou spuštěny jako root!

    Měli byste zakázat selinux, může to způsobit problémy během instalace.

    Nastavení hostitelského počítače Příprava prostředí

    Vypnutí SELinuxu

    Sed -i "s/\(^SELINUX=\).*/\SELINUX=disabled/" /etc/sysconfig/selinux sed -i "s/\(^SELINUX=\).*/\SELINUX=disabled/" /etc/selinux/config

    Závislosti

    Yum install -y kernel-devel kernel-headers yum install -y e2fsprogs-devel keyutils-libs-devel krb5-devel libogg \ libselinux-devel libsepol-devel libxml2-devel libtiff-devel gmp php-pear \ php-php-gd mysql php-pdo php-mbstring ncurses-devel \ mysql-connector-odbc unixODBC unixODBC-devel \ audiofile-devel libogg-devel openssl-devel zlib-devel \ perl-DateManip sox git gcc net-tools install psmisc gccyum -c++ make gnutls-devel \ libxml2-devel ncurses-devel subversion doxygen \ texinfo curl-devel net-snmp-devel neon-devel \ uuid-devel libuuid-devel sqlite-devel sqlite \ speex-devel gsm-devel- libtool libtool-ltdl-devel

    Proveďte úplnou aktualizaci systému:

    Yum -y aktualizace

    Restartovat váš počítač:

    Po restartu zkontrolujte stav SELinux pomocí příkazu "sostatus". Měli byste vidět následující výstup:

    Stav SELinux: zakázán

    Nainstalujte a nakonfigurujte MariaDB

    Běh:

    Yum -y nainstalovat mariadb-server mariadb mariadb-devel

    Pojďme spustit a povolit automatické načítání při startu systému:

    Systemctl spustit mariadb.service systemctl povolit mariadb.service

    Začněme konfigurovat MariaDB, pokyny na oficiálních stránkách doporučují nenastavovat heslo pro připojení uživatele root, je to způsobeno spuštěním instalačního skriptu FreePBX příkazem „./install –n“, zatímco připojení k databázi probíhá jako uživatel root bez hesla. Začínající uživatel může během procesu nastavení vynechat několik velmi důležitých kroků. důležité parametry(pro připojení uživatele root nebude nastaveno heslo, zůstane povoleno vzdálené připojení pro uživatele root), což vytvoří vážnou zranitelnost! Ustoupíme od oficiální pokyny a proveďte instalaci a konfiguraci pomocí vysoká úroveň bezpečnostní.
    Spusťte interaktivní konfigurátor:

    Mysql_secure_installation

    Podívejme se blíže na nastavení:

    Vložte stávající heslo pro root(zadejte žádné) ponechte pole prázdné stiskněte Enter Nastavit heslo uživatele root Y Nové heslo: Nastavte heslo Znovu zadejte nové heslo: Potvrdit Odebrat anonymní uživatele Y Vzdáleně zakázat přihlášení uživatele root Y Odebrat testovací databázi a přístup k ní Y Znovu načíst tabulky oprávnění? Y Hotovo! Pokud jste provedli všechny výše uvedené kroky, vaše instalace MariaDB by nyní měla být zabezpečená. Děkujeme, že používáte MariaDB!

    Kompilace potřebných balíčků a knihoven pro Asterisk

    PearDB
    (otevřená knihovna tříd PHP)

    Pear uninstall db pear install db-1.7.14

    SRTP
    (Secure Real Time Transport Protocol (nebo SRTP) definuje RTP profil ( transportní protokol v reálném čase) a je určen pro šifrování, autentizaci zpráv, integritu, ochranu proti nahrazení dat RTP v jednosměrných a multicastových přenosech médií a aplikacích)

    Cd /usr/src && wget http://srtp.sourceforge.net/historical/srtp-1.4.2.tgz tar zxvf srtp-1.4.2.tgz && cd srtp && autoconf && ./configure CFLAGS=-fPIC -- prefix=/usr && make && make runtest && make install

    Pjprojekt
    (open source knihovna pro vývoj VoIP aplikací na různých platformách)

    Cd /usr/src && git klon git://github.com/asterisk/pjproject pjproject cd pjproject/ && ./configure --libdir=/usr/lib64 --prefix=/usr --enable-shared --disable- zvuk --disable-resample && make dep && make && make install && ldconfig

    libjansson
    (Knihovna C pro kódování a dekódování dat JSON)

    Cd /usr/src && wget http://www.digip.org/jansson/releases/jansson-2.5.tar.gz tar zvxf jansson-2.5.tar.gz && cd jansson-2.5 && ./configure --prefix= /usr/ && make clean && make && make install && ldconfig

    Chromý
    (bezplatná aplikace pro kódování zvuku do formátu MP3)

    Cd /usr/src && wget http://sourceforge.net/projects/lame/files/lame/3.98.4/lame-3.98.4.tar.gz tar zxvf lame-3.98.4.tar.gz && cd lame -3.98.4 && ./configure && make && make install

    DAHDI
    (DAHDI - ovladače pro desky vyráběné Digium)

    Cd /usr/src && wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz tar xvfz dahdi-linux-complete-current.tar. gz && cd dahdi-linux-complete-* && provést vše && provést instalaci && provést konfiguraci

    LibPRI
    (libpri - knihovna pro práci s ISDN streamovacími TDM rozhraními: PRI (Primary Rate Interface) a BRI (Basic Rate Interface))

    Cd /usr/src && wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.6.0.tar.gz tar xvfz libpri-1.6.0.tar.gz && cd /usr/src/ libpri-1.6.0 && provést && provést instalaci

    SpanDSP
    (otevřená knihovna a sada programů pro implementaci funkce odesílání a přijímání faxů)

    Cd /usr/src && wget http://soft-switch.org/downloads/spandsp/spandsp-0.0.6.tar.gz tar zxvf spandsp-0.0.6.tar.gz && cd spandsp-0.0.6 && . /configure && make && make install && ln -s /usr/local/lib/libspandsp.so.2 /usr/lib64/libspandsp.so.2

    Instalace Asterisk 13

    CHYBA
    Některé verze Asterisk mohou selhat, pokud chybí ari.conf
    https://issues.asterisk.org/jira/browse/ASTERISK-27026
    Po kompilaci Asterisk spusťte "mkdir -p /etc/asterisk && touch /etc/asterisk/ari.conf" v terminálu

    Běh:

    Cd /usr/src && wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz tar xvfz asterisk-13-current.tar.gz && cd asterisk-13.* && contrib/scripts/install_prereq install && ./configure --libdir=/usr/lib64 && contrib/scripts/get_mp3_source.sh make menuselect

    Po zadání příkazu make menuselect budete vyzváni k výběru modulů k instalaci. Většina požadovaných modulů je vybrána automaticky. Pro podporu mp3 povolte modul "format_mp3". Z osobních požadavků návštěvníků vyplynulo, že ne každý může využívat modul confbridge (nezbytný pro pořádání konferencí), meetme je jeho funkčnější obdobou. Doporučuji vám ji také povolit.

    ---> Doplňky (Viz README-addons.txt) --- rozšířené --- XXX chan_mobile [*] chan_ooh323 [*] format_mp3 [*] res_config_mysql --- zastaralé --- [*] app_mysql [*] app_saycountpl [*] cdr_mysql ---> Aplikace --- Rozšířené --- [*] app_meetme ---> Balíčky základních zvuků [*] CORE-SOUNDS-RU-WAV [*] CORE-SOUNDS-RU-ULAW [* ] CORE-SOUNDS-RU-ALAW [*] CORE-SOUNDS-RU-GSM [*] CORE-SOUNDS-RU-G729 [*] CORE-SOUNDS-RU-G722 [*] CORE-SOUNDS-RU-SLN16 [* ] CORE-SOUNDS-RU-SIREN7 [*] CORE-SOUNDS-RU-SIREN14 ---> Extra zvukové balíčky [*] EXTRA-SOUNDS-EN-WAV [*] EXTRA-SOUNDS-EN-ULAW [*] EXTRA- SOUNDS-EN-ALAW [*] EXTRA-SOUNDS-EN-GSM Stiskněte X pro uložení a ukončení

    Pozornost! Některé verze Asterisk mohou selhat, pokud chybí ari.conf

    Spustit v terminálu:

    Mkdir -p /etc/asterisk && touch /etc/asterisk/ari.conf

    Nainstalujte Asterisk:

    Make && make install && make config && ldconfig asterisk off sed -i "s/ASTARGS=""/ASTARGS="-U asterisk"/g" /usr/sbin/safe_asterisk

    Příprava na instalaci FreePBX

    Vytvořte uživatele Asterisk a nastavte uživatelská práva.

    Adduser hvězdička -M -c "Uživatel s hvězdičkou"

    Nastavíme práva k adresáři:

    Chown hvězdička. /var/run/asterisk && chown -R hvězdička. /etc/asterisk && chown -R hvězdička. /var/(lib,log,spool)/hvězdička && chown -R hvězdička. /usr/lib64/asterisk && chown -R hvězdička. /var/www/

    Pojďme vygenerovat komplexní heslo pro uživatele Asterisk. Toto heslo si zapište nebo zkopírujte, budete ho potřebovat později během procesu instalace:

    Dd if=/dev/urandom bs=1 počet=32 2>/dev/null | základ64 - | řez -c2-18

    Pojďme nastavit PHP

    Cp /etc/php.ini /etc/php.ini_orig && sed -ie "s/\;date\.timezone\ \=/date\.timezone\ \=\ "Evropa\/Moskva"/g" /etc/ php.ini

    Pojďme nakonfigurovat Apache

    Sed -i "s/\(^upload_max_filesize = \).*/\120M/" /etc/php.ini && cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf_orig && sed -i "s/^\(Uživatel\|Skupina\).*/\1 hvězdička/" /etc/httpd/conf/httpd.conf && sed -i "s/AllowOverride None/AllowOverride All/" /etc/httpd /conf/httpd.conf && systemctl restart httpd && systemctl povolit httpd

    Příprava databáze Asterisk v MaryaDB.

    Mysql -u root -p CREATE DATABASE `hvězdička` ZNAKOVÁ SADA utf8 COLLATE utf8_general_ci; CREATE DATABASE `asteriskcdrdb` CHARACTER SET utf8 COLLATE utf8_general_ci; UDĚLEJTE VŠECHNA PRIVILEGIA NA asterisk.* TOMU asterisk@localhost IDENTIFIKOVANÉ PODLE "PASS"; UDĚLEJTE VŠECHNA PRIVILEGIUM NA asteriskcdrdb.* NA asterisk@localhost IDENTIFIKOVANÉ PODLE „PASS“; flush oprávnění;

    * Kde PASS je vygenerované složité heslo.

    Instalace FreePBX 13

    Běh:

    Hruška install Console_Getopt cd /usr/src && wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz && tar zxvf freepbx-13.0-latest.tgz && cd freepbx

    Spustíme Asterisk a nainstalujeme FreePBX.

    ./start_asterisk start && ./install

    Během provádění skriptu budete požádáni o zadání řady dat. Musíte zadat uživatele pro připojení asterisk a jeho heslo (vygenerované složité heslo), zbytek ponechte jako výchozí.

    Znovu načíst fwconsole && fwconsole ma refreshsignatures && fwconsole chown ln -s /var/lib/asterisk/moh /var/lib/asterisk/mohmp3 restart fwconsole

    Firewall a IP tabulky

    Firewall

    Centos7 používá Firewalld místo IPTables.

    Spustit instalaci:

    Yum -y nainstalujte firewall

    Běh:

    Systemctl spusťte firewalld

    Povolit automatické načítání:

    Systemctl povolit firewall

    Pojďme zkontrolovat:

    Stav Systemctl firewalld

    Podívejme se, co je ve výchozím nastavení povoleno:

    Výstup příkazu:

    Veřejný cíl: výchozí icmp-block-inversion: žádná rozhraní: zdroje: služby: dhcpv6-client ssh porty: protokoly: maškaráda: žádné dopředné porty: zdrojové porty: icmp-bloky: bohatá pravidla:

    Ssh je trvale povoleno, stejně jako klient dhcp v6. Na serveru nepoužívám ip v6, takže odstraním odpovídající pravidlo:

    Firewall-cmd --permanent --zone=public --remove-service=dhcpv6-client

    Doplňme nezbytná pravidla pro provoz našeho PBX serveru:

    Firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-port=4569/udp firewall-cmd --permanent --zone=public - -add-port=5038/tcp firewall-cmd --permanent --zone=public --add-port=5060-5061/tcp firewall-cmd --permanent --zone=public --add-port=5060-5061 /udp firewall-cmd --permanent --zone=public --add-port=10000-20000/udp

    Pojďme znovu načíst pravidla:

    Firewall-cmd --reload

    Pojďme zkontrolovat:

    Firewall-cmd --permanent --list-all

    Výstup příkazu:

    Veřejný cíl: výchozí icmp-block-inversion: žádná rozhraní: zdroje: služby: http ssh porty: 5060-5061/udp 4569/udp 10000-20000/udp 5060-5061/tcp 5038/tcp protokoly: žádné forward-portports : sourceports: icmp-blocks: bohatá pravidla:

    Všechna potřebná nastavení byla dokončena.

    IPTtables

    Chcete-li na svém serveru používat IPTables, postupujte takto.

    Pojďme vypnout službu Firewalld:

    Systemctl maska ​​firewalld

    Zastavme službu Firewall:

    Systemctl stop firewalld

    Pojďme nainstalovat iptables.

    Yum -y nainstalovat iptables-services

    Povolme IPtables při startu systému:

    Systemctl enable iptables iptables -P INPUT ACCEPT && iptables -F && service iptables save && iptables -A INPUT -i lo -j ACCEPT && iptables -A INPUT -m stát --stát ESTABLISHED,RELATED -j ACCEPT && iptables -A INPUT -p tcp --dport 22 -j ACCEPT && iptables -A INPUT -p tcp --dport 80 -j ACCEPT && iptables -P INPUT DROP && iptables -P &PP FORWARD -P OUTPUT ACCEPT && iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT && iptables -A INPUT -p udp -m udp --dport 5061 -j ACCEPT && iptables -A INPUT -p tcp -m tcp --dport 5060 -j ACCEPT && iptables -A INPUT -p tcp -m tcp --dport 5061 -j ACCEPT && iptables -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT -A& ip INPUT -p udp -m udp --dport 4569 -j ACCEPT && iptables -A INPUT -p tcp -m tcp --dport 5038 -j ACCEPT && service iptables uložit

    Pojďme zkontrolovat:

    Iptables -L

    Měli byste získat následující výstup:

    Iptables: Ukládání pravidel brány firewall do /etc/sysconfig/iptables:[ OK ] iptables: Ukládání pravidel brány firewall do /etc/sysconfig/iptables:[ OK ] Řetězový INPUT (PUPKA zásad) cíl prot opt ​​​​zdroj cíl PŘIJÍMAT vše -- kdekoli kdekoli PŘIJÍMAT vše -- kdekoli kdekoli stav SOUVISEJÍCÍ, ZAVEDEN PŘIJÍMAT tcp -- kdekoli kdekoli tcp dpt:ssh PŘIJÍMAT tcp -- kdekoli kdekoli tcp dpt:http PŘIJÍMAT udp -- kdekoli udp dpt:sip PŘIJÍMAT udp -- kdekoli udp dpt: sip-tls PŘIJÍMAT tcp -- kdekoli kdekoli tcp dpt:sip PŘIJÍMAT tcp -- kdekoli kdekoli tcp dpt:sip-tls PŘIJÍMAT udp -- kdekoli udp dpts:ndmp:dnp PŘIJET udp -- kdekoli udp dpt:iax PŘIJÍMAT tcp - kdekoli kdekoli tcp dpt:5038 Řetěz VPŘED (pokles zásad) cíl prot opt ​​​​zdroj cíl Řetězec VÝSTUP (přijetí zásad) cíl prot opt ​​​​zdroj cíl

    Rychlý start

    Pojďme se připojit k FreePBX

    Http://IP-adresa/admin

    Nejprve budete požádáni o nastavení uživatelského jména a hesla FreePBX.

    Zadejte požadované informace a klikněte na „Vytvořit účet“:


    Přihlásit se. Chcete-li to provést, klikněte na „Správa FreePBX“, zadejte své přihlašovací jméno/heslo a klikněte na „Pokračovat“:


    Vezměte prosím na vědomí chybu: "Žádná aplikace pro konferenční místnost". Moje instalace vždy probíhá hladce a nikdy jsem se s tímto problémem nesetkal (jeden z návštěvníků webu laskavě sdílel snímek obrazovky). Chcete-li tento problém vyřešit, musíte změnit aplikaci Konferenční místnost z app_confbridge na app_meetme. Možná tento problém souvisí se specifiky použitého hardwaru.

    Přejděte na „Nastavení“ -> „Pokročilá nastavení“


    Ve výchozím nastavení nastavte ruský jazyk pro rozhraní FreePBX, k tomu zadejte ru_RU


    Pro pohodlí ostatních uživatelů povolte možnost měnit jazyk rozhraní za běhu:


    Zkontrolujte, zda je parametr „Timezone“ pro PHP správný:


    Přepněte aplikaci pro „Konferenční místnost“ na app_meetm, klikněte na „Odeslat“


    Klikněte na tlačítko "Použít změny".


    Při přechodu na „Dashboard“ vidíme absenci kritických problémů, rozhraní je v našem rodném jazyce a tlačítko pro výběr jazyka:


    Na toto základní instalace FreePBX byla úspěšně dokončena. Podrobné nastavení systémům bude pojednáno v samostatném článku.

    Zlepšení zabezpečení serveru

    Když přistupujete k otázce bezpečnosti, měli byste si uvědomit, že většina pokynů na internetu poskytuje základní (minimální) sadu pokynů a příkazů pro spuštění služby. Zabezpečení serveru obvykle zahrnuje ochranu proti vniknutí do sítě, ale velkou roli v zabezpečení systému hrají také provozní podmínky. Telefonní zařízení musí být „uzamčeno“, přístup k němu je povolen pouze servisnímu personálu. Správce musí pochopit, že kromě spuštění služby potřebuje podniknout určité kroky k její ochraně. Je třeba udržovat aktuální a pravidelně aktualizovat software. Nastavte správně firewall Z výpočtu je otevřeno jen to, co je nutné. Změna standardní hesla a porty (pokud je to možné), ochrana proti uhodnutí hesla atd. Pouze integrovaný přístup k organizaci informační bezpečnost poskytne správný výsledek.

    SSH(relevantní pro cloudy, VPS/VDS hosting. SSH port vystavený internetu)

    • Shift standardní port;

    • Zákaz autorizace root přes SSH;

    • Autorizace klíčem;

    • Zákaz autorizace heslem;

    • Povolit přístup SSH pouze určitým uživatelům.

    Firewall a přesměrování portů

    Pokud potřebujete připojit uživatele z externí sítě, můžete tuto situaci vyřešit několika způsoby:

    1. Vzdálená pobočka. Nejsprávnějším řešením by bylo zorganizovat IPSec (VPN) tunel mezi kancelářemi a vytvořit potřebná pravidla a trasy. V tomto případě nevystavíte svůj server průnikům z vnější sítě a komunikace mezi kancelářemi bude spolehlivě chráněna;

    2. Vzdálený zaměstnanec. Jediným správným řešením je podle mě použití VPN. Všechny ostatní možnosti jsou nespolehlivé a vyžadují přesměrování portů z externí sítě (internetu) na váš telefonní server;

    3. Žádná VPN. Z osobních, náboženských nebo jiných, mně neznámých důvodů Důvody VPN se nepoužívá a nebude používán. Zvažme možnosti: „Podmínky A“. Zaměstnanec má statickou IP, vše je trochu růžovější. Přesměrování portů můžete organizovat pouze pro určité adresy (klienty). Tato metoda stále vyžaduje dodatečná ochrana a není spolehlivý. Jednoduše omezíte zdroj hrozby na určitý rozsah (povolené IP adresy). "Podmínky B". V mé praxi jsou „stavy A“ vzácné (téměř nikdy). Externí uživatelé jsou obvykle celá „zoo“ zařízení a poskytovatelů. V tomto případě (bez použití VPN) budete muset vystavit telefonní server s porty mimo (na internet).

    Takže přesměrování portů:

    1. Rozhodněte se o sadě požadovaných portů. Pokud například nepoužíváte protokol IAX/IAX2 (protokol Asterisk), nemusíte port předávat. Volitelně můžete omezit rozsah RTP portů (výchozí 10000-20000) na základě 4 portů na relaci. Začněte s požadovaným minimem.

    3. Věnujte pozornost nastavení FreePBX: použijte SSL/TLS pro SIP, stejně jako SRTP pro šifrování hlasu, zakažte příchozí anonymní SIP hovory, zakažte SIP hovory bez autentizace, změňte výchozí hesla, používejte složitá hesla na všech úrovních systému;

    4. Pomocí Fail2Ban zablokujte podezřelá připojení. Například Fail2ban zablokuje připojení podle IP adresy, pokud je heslo zadáno nesprávně více než 4krát (všechny parametry a podmínky lze bez problémů nakonfigurovat).
    Doporučuji, abyste postupovali podle těchto kroků, i když je přesměrování portů prováděno pro určité klienty pomocí statických bílých IP adres (podmínka A).

    Tento materiál bude relevantní nejen pro ochranu vašeho serveru pomocí Asterisk, rád bych vám zprostředkoval koncept zajištění bezpečnosti informací obecně. Pokud dojde k napadení telefonního serveru, nejenže ztratíte data nebo ohrozíte určité uživatele, ale v důsledku akcí útočníků můžete utrpět skutečné finanční ztráty. Tento materiál není konečným návodem, jde pouze o snahu včas upozornit na bezpečnostní problémy a také navrhnout několik relevantních oblastí pro předcházení narušení.

    Nainstalujeme Asterisk 12 na Ubuntu 14.04 "Trusty Tahr" LTS OS nainstalovaný na Oracle VM VirtualBox.

    1) Přejděte na terminál Ubuntu a aktualizujte systémové balíčky.

    aktualizace sudo apt-get
    upgrade sudo apt-get

    2) Restartujte systém

    sudo restart

    3) Synchronizujte čas, k tomu nainstalujeme NTP server

    sudo apt-get install ntp

    4) Nainstalujte závislosti, které budou nutné pro správné fungování Hvězdička

    instalace sudo apt-get build-essential linux-headers-` nejmenovat -r` openssh-server mysql-server mysql-client libgnutls28 bison flex curl sox libncurses5-dev libssl-dev libmysqld-dev libmysqlclient-dev mpg123 libxml2-dev libqvlite-dev s git g++ subversion uuid- dev vim-nox php5 php5-curl php5-cli php5-mysql php-pear php-db php5-gd

    Během procesu instalace budete požádáni o zadání hesla pro vykořenit uživatel MYSQL

    5) Restartujte systém

    sudo restart

    6) Vytvořte složku, do které budeme stahovat distribuce Asterisk, DAHDI a LibPRI

    sudo mkdir -p /usr/src/asterisk-12
    cd /usr/src/asterisk-12

    7) Stáhněte si zdroje Asterisk 12.5 (v době psaní návodu nejnovější současná verze), DAHDI (balíček dříve nazývaný zaptel, který zpracovává analogové a digitální rozhraní), libPRI (knihovna navržená pro práci s ISDN streamovacími TDM rozhraními: PRI (Primary Rate Interface) a BRI (Basic Rate Interface))8) Rozbalte stažené zdroje

    sudo tar xvfz dahdi-linux-complete-2.10.0+2.10.0. tar.gz
    sudo tar xvfz libpri-1.4.15. tar.gz
    sudo tar xvfz asterisk-12.5.0. tar.gz

    9) Nejprve zkompilujte DAHDI

    CD /usr/src/asterisk-12/dahdi-linux-complete-2.10.0+2.10.0
    sudo vytvořit vše
    sudo make install
    sudo make config
    CD /usr/src/asterisk-12/libpri-1.4.15
    udělat sudo
    sudo make install

    11) Začněme s instalací Asterisk 12. Nainstalujte potřebné moduly příkazem make menuselect.

    CD
    ./configure

    Během instalace může dojít k chybě

    konfigurace: chyba: *** Podpora JSON nenalezeno(to obvykle znamená, že chybí vývojový balíček libjansson)

    Za tímto účelem provedeme následující

    cd /usr/src/
    sudo wget http://www.digip.org/jansson/releases/jansson-2.6. tar.gz
    sudo tar xvfz jansson-2.6. tar.gz
    cd jansson*
    sudo ./configure --prefix=/usr/
    sudo vyčistit
    udělat sudo
    provést instalaci
    ldconfig
    CD /usr/src/asterisk-12/asterisk-12.5.0
    sudo ./configure
    sudo make menuselect



    Z velké části jsou již všechny potřebné moduly zahrnuty. Můžete něco přidat nebo odebrat. Když vyberete modul, bude mít krátký popis toho, za co je zodpovědný.

    V části Doplňky vyberte modulyformat_mp3 (potřebné k vytvoření hlasového menu ne ve formátu gsm, ale v mp3)a všechny související možnostiMySQL. Pokud jsou připojeny, budou potřebaFreePBX.

    Nezapomeňte si modul stáhnout seznamte se.

    V záložce Základní zvukové balíčky– vyberte požadované formáty audio balíčků.



    V Music On Hold File Balení obsahuje všechny moduly.

    V Extra zvukové balíčky zahrnují první 4 moduly obsahující EN

    Po nastavení klikněte F12 pro uložení dat a návrat do okna konzoly. Dále zadejte příkaz:

    udělat sudo

    Během provádění funkce udělat Zobrazila se mi chyba.



    Chcete-li jej odstranit, zadejte požadovaný příkaz.

    sudo contrib/scripts/get_mp3_source.sh

    Spusťte příkaz znovu udělat

    udělat sudo
    sudo make install
    sudo udělat vzorky
    sudo make config

    12) Pokud je potřeba zabezpečit systém, můžeme nastavit uživatele pro správu Asteriska. Vytvoříme uživatele, jeho adresář a heslo. Dále mu dáváme práva pracovat s Asterisk.

    sudo adduser hvězdička
    sudo mkdir /home/username
    uživatelské jméno sudo passwd
    sudo chown -R hvězdička. /var/run/asterisk
    sudo chown -R hvězdička. /etc/asterisk
    sudo chown -R hvězdička. /var/(lib,log,spool)/hvězdička
    sudo chown -R hvězdička. /usr/lib/asterisk

    13) Restartujte server

    sudo restart

    14) Přihlaste se jako uživatel s hvězdičkou

    s hvězdičkou

    15) Zkontrolujte funkčnost Asterisk. Zadejte příkaz

    rastr

    A dostáváme se do konzole pro správu Asterisk.16) Udělejme nějakou konfiguraci pro MySQL. Pojďme k MySQL.

    mysql -uusername -ppassword -hlocalhost

    Zde jsou zkratky: -h host-u user-p password Není za nimi mezera Nebo mysql –u username -p16.1) Po zadání hesla se ocitneme v konzoli mysql. Vytvořme uživatele s hvězdičkou s localhost a heslem "password".

    vytvořit uživatele "hvězdička" @ "localhost" identifikovaný "heslem" ;

    Uživatel byl vytvořen. Pro kontrolu se podívejme na seznam uživatelů:

    vybrat uživatel,hostitel,heslo z mysql.user;

    16.2) Vytvořte databázi asteriskcdrdb, hvězdička.

    vytvořit hvězdičku databáze;
    vytvořit databázi asteriskcdrdb;
    UDĚLEJTE VŠECHNA PRIVILEGIA NA asterisk.* NA asterisk@localhost IDENTIFIKÁTOR"Heslo" ;
    UDĚLEJTE VŠECHNA OPRÁVNĚNÍ NA asteriskcdrdb.* NA asterisk@localhost IDENTIFIKÁTOR"Heslo" ;
    flush oprávnění;

    Tím je instalace Asterisk 12.05 dokončena. V následujících článcích se podíváme na to, jak tvořit interní čísla, kmeny, skupiny Pokud v článku najdete chyby nebo nesrovnalosti, budeme vděční, když nám o nich napíšete do komentářů.