Asterisk è un PABX open source. Esatto, è un PABX scalabile completo che supporta VoIP, PSTN, ISDN e posta vocale che può essere utilizzato ovunque, da un ufficio a casa a un'azienda multisito.

E per di più, è open source. Il che significa essenzialmente che puoi scegliere il tuo livello di investimento finanziario. Se sei un piccolo imprenditore, questa può essere una soluzione ideale, in particolare se hai o sei disposto a sviluppare le competenze per gestirla, i tuoi costi possono essere pari a zero oltre il tuo tempo e i costi dell'hardware.

Tuttavia, non si tratta dell'asterisco stesso, quindi maggiori dettagli possono essere trovati qui: http://www.asterisk.org

Questo post riguarda FreePBX (http://www.freepbx.org), che è un front-end basato sul web per gestire l'asterisco. Asterisk è incredibilmente flessibile e le opzioni che hai per definire come si comporta quando riceve una chiamata sono infinite. È anche relativamente facile imparare a sviluppare dial plan per asterisco, ma in definitiva, la creazione e la gestione di una configurazione complessa di asterisco può essere un processo che richiede tempo.

È qui che entra in gioco FreePBX. Semplifica notevolmente la gestione degli asterisco e ha un gran numero di moduli che puoi aggiungere per portare tutte le funzionalità che potresti desiderare, fornendo funzionalità per niente che sarebbero sempre disponibili solo sul più alto -end soluzioni PABX commerciali a scatola chiusa.

Freepbx deve interagire direttamente con Asterisk e modificare i suoi file di configurazione. In termini di compartimentalizzazione dei diritti di accesso, questo può essere problematico, poiché FreePBX deve eseguire il proprio server web come utente asterisco. Ma se stai già eseguendo apache, il tuo server web avrà già un ID utente con cui gira - probabilmente "apache", e non vuoi dare a questo utente l'accesso ai tuoi file di configurazione dell'asterisco e non vuoi nemmeno eseguire i tuoi servizi web come "asterisco" e devi modificare le autorizzazioni di tutto ciò a cui potrebbe essere necessario accedere.

Apache ha alcuni moduli in fase di sviluppo che consentiranno l'esecuzione di un singolo sito Web con un ID utente specifico. Sarà fantastico quando sarà finalmente pronto per l'uso, in particolare nell'arena del web hosting, dove avere un uso comune per tutti i siti web presenta problemi. Tuttavia, non è pronto.

Una soluzione è eseguire un'istanza del server web separata per asterisco. Poiché questo articolo è rivolto a qualcuno che condivide la funzionalità del proprio server tra Asterisk e altre attività, questa può sembrare una soluzione pesante. Tuttavia, considera l'utilizzo di "Lighttpd". Questo è come suggerisce il nome, un server web leggero. Ha un buon set di funzionalità ma non è affamato come Apache. Puoi semplicemente eseguirlo su una porta diversa, ad esempio 81, e farlo funzionare come utente "asterisco".

Puoi anche lasciarlo in esecuzione come gruppo "Lighttpd", che consentirà al daemon di mantenere i permessi sui file a cui deve accedere, come i suoi file di registro.

Ciò significa che tutti i file FreePBX possono essere di proprietà di Asterisk ed essere comunque aggiornabili dal frontend web. Questo è uno dei motivi principali per cui viene visualizzato il messaggio "Avviso: impossibile connettersi a un repository in linea (mirror.freepbx.org). I moduli online non sono disponibili. " viene ricevuto quando si tenta di aggiornare i moduli di FreePBX. È quasi sempre un problema di autorizzazioni.

Dico "quasi sempre". Recentemente c'è stato un drive con installazioni PHP per avere l'opzione "allow_url_fopen" impostata su "off". Ciò significa che qualsiasi funzione correlata a "file", come la lettura di un file da un disco, non può essere utilizzata anche per aprire un URL. Se è necessario aprire un URL, la libreria curl è la soluzione consigliata. La ragione di ciò è che molti exploit recenti hanno sfruttato il codice insicuro insieme a questa impostazione abilitata per assumere completamente il controllo di un sito.

FreePBX al momento della scrittura (2.4beta2) si aspetta di essere in grado di aprire gli URL come file. Per cambiare questa impostazione, modifica il tuo file php.ini e cambia l'opzione "allow_url_fopen" su On. Non farlo se non capisci le implicazioni e i rischi.

Questo file può risiedere in diversi posti a seconda della distribuzione. Spesso è in /etc/php.ini.

Gentoo ha un php.ini diverso a seconda di cosa sta succedendo. Per il server Apache, il php.ini si trova su:

/etc/php/apache2-php5/php.ini

Per Lighttpd, utilizza la versione CGI:

/etc/php/cgi-php5/php.ini

Per inciso, l'opzione della riga di comando è: /etc/php/cli-php5/php.ini



Mercoledì, Mag 21, 2008

« Indietro