linux-related‎ > ‎

asterisk-elastix-trixbox-linux

0 Desde cero


Este documento te mostrara paso a paso como instalar varios programas para convertir tu maquina de linux en un servidor útil, que puede ser utilizado en casa, si tienes mas de una maquina o en una empresa.
El servidor te proveerá de varios servicios;
Windows File sharing (Servidor de archivos) - Telefonía IP - Servidor de WEB, Servidor de MySQL, Servidor de email , etc.
El poner todos estos servicios juntos en una sola maquina no es recomendado, al menos no en un ambiente comercial, pero esto sirve para demostrar lo fácil que es reemplazar los servidores de NT sin preocuparte tanto de los virus disponibles para Windows. :0)



0.1 PuTTy  

Personalmente me gusta usar el programa PuTTY para conectarme remotamente a las maquinas de Linux – puedes bajarlo desde acá : Bajar Putty

1 Trixbox - ElastiX

Trixbox reemplaza al proyecto Asterisk@home,  la imagen puede ser bajada aqui

Te recomendaria instalar Trixbox directamente del ISO, de esta manera tienes el sistema andando en cuestion de minutos y le agregas los paquetes extras si quieres.
Para instalar el ISO, simplemente pone el CD en tu Servidor, ten cuidado ya que formateara todos los discos duros que encuentre en tu maquina.
Cuando instales el ISO,  te conectas desde otra maquina usando Explorer o Firefox   http://ipdetuservidor  te pedira el usuario y la clave, los cuales por defecto son
Usuario maint y la clave es password Lo primero que tienes que hacer es ir a System Administration --> selecciona FreePBX  ---> Tools ---> Module Admin   (Selecciona todos los modulos que desees tener)  y presiona SUBMIT

ElastiX

Elastix es otro proyecto similar al Trixbox, pero con otros agregados, personalmente me gustan los dos.
Muchas de las cosas en esta página pueden ser usadas en los dos.
Un par de cosas básicas que no están incluidas en Elastix pero, fáciles de agregar son nano para editar, rsync para sincronizar con otras maquinas, y webmin para configurar tu servidor remotamente, smartools  para ver el estado de  los  discos duros, Sendmail  para  enviar  emails.

Para instalar estas herramientas

yum install rsync nano webmin smartmontools sendmail -y

En caso que webmin no se instale, ya que en este momento webmin no está en el repositorio de Elastix , puedes instalarlo directamente de esta forma

mkdir /usr/src/redhat
mkdir /usr/src/redhat/SOURCES
wget http://downloads.sourceforge.net/project/webadmin/webmin/1.530/webmin-1.530-1.noarch.rpm && rpm -Uvh webmin-* && rm webmin-* -f







Esto ya es obsoleto pero lo dejo como referencia  para instalar, descomprimir, etc

Asterisk@home fue creado para simplificar la administracion de Asterisk. hay dos formas de instalarlo, 

1 Bajando el ISO, el mismo es el mas recomendado ya que instala todo sin tener que configurar nada durante la instalacion, el unico problema es que las personas que no tienen experiencia en Linux no van a tener  GUI 

2 La otra forma, si ya tienes instalado Centos 4.2  puedes bajar el paquete de la siguiente manera.

Abre tu terminal y copia/pega lo siguiente;

wget http://easynews.dl.sourceforge.net/sourceforge/asteriskathome/asteriskathome-2.8.tar.gz
mkdir /var/aah_load
cp asteriskathome-2.8.tar.gz /var/aah_load
cd /var/aah_load
tar xvfz asteriskathome-2.8.tar.gz
./install.sh


2 Samba

Si copias el contenido del cuadro, instalaras Samba

yum install samba -y

Tambien Puedes instalar varios paquetes en una linea si lo deseas Ej;
yum install webmin samba -y

Esto compartirá dos directorios  los cuales podrán ser accedidos por otras maquinas de Windows o Linux


Corre esto para crear el directorio que vas a compartir, la segunda linea no te la recomiendo en un servidor de produccion, o al menos no en el mismo directorio de /var/www
en este caso solo esta para mostrar que puedes ver los archivos de tu servidor Appache con control completo del directorio y archivos, practico si quieres editar tus paginas desde una maquina de windows.

cd /etc/samba
cp smb.conf smb.viejo
rm smb.conf -f
wget http://pezoa.com/Asterisk/smb.conf

Esto le dara acceso al usuario ROOT o a cualquier usuario del sistema linux

smbpasswd -a root

Para correr samba
/etc/rc.d/init.d/smb start
Para parar samba
/etc/rc.d/init.d/smb stop


2.1 Conectar desde windows o Linux

Primero tendras que saber como obtener tu IP
En windows ipconfig
En Linux ifconfig


En Windows Explorer copia y pega esto \\192.168.100.10
En linux usa Konqueror o Firefox smb://192.168.100.10

Si todo esta bien podrás ver dos directorios, ServerRoot (lo configure para leer solamente, ya que es un riesgo dar acceso a esto)

y el otro directorio es WEB, (con acceso completo a todo el contenido del área de web)



map

Desde windows podras configurar una letra, en este caso   X


NET USE X: \\192.168.100.10\web /persistent:yes
  • Esta es una configuracion basica, la idea es dar  funcionalidad sin ir demasiado en detalles, como en seguridad, o como comenzar el servidor de Samba automaticamente ...
  • Si quieres modificar el servidor de samba tienes que cambiar los parametros de smb.conf localizado en   /etc/samba/smb.conf 


3  Webmin

Webmin es una herramienta para configurar tu sistema Linux, el mismo tiene una interfaz Web que te permite configurar la mayor parte del sistema operativo.

Muy útil para configurar  Samba, Apache, y para controlar los programas que quieres que comiencen automáticamente,  tambien para crear usuarios.


.

3.1 Instalar Webmin

 

yum install webmin -y

Tambien Puedes instalar varios paquetes en una linea si lo deseas Ej;
yum install webmin samba -y

Para acceder el mismo
http://TUSERVIDOR:10000/
O
https://TUSERVIDOR:10000/
  • Esto que esta en rojo es obsoleto, pero puedes usarlo como referencia para versiones anteriores.
  • Puedes instalar webmin directamente usando  yum install webmin  el problema con esto es que el paquete original no esta configurado para Centos 4.2 te instalara 
correctamente, pero tendras que modicar cosas como, la ubicacion de  los archivos instalados por defecto de apache y otros programas, para evitar todo esto simplemente
modifica el archivo  que le indica a yum donde buscar programas

Encuentra esto y abrelo con un editor /etc/yum.repos.d/CentOS-Base.repo


Al final del documento copia y pega esto  (linea por linea, no entero porque te va a deformar todo si usas Internet Explorer)




[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=0
enabled=1

Corre esto usando el Terminal  rpm --import http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt


4 Conferencias no andan

Te recomendaria que luego del rebote hagas lo siguiente para resolver problemas con las conferencias.

rebuild_zaptel
genzaptelconf

5 Como cambiar el IP en Asterisk / Centos / Linux

Para cambiar el IP en centos, desde el commando tienes que tipear netconfig

Le pones los valores correspondientes a tu red y aprietas OK, y rebota







6 Varios comandos utiles para Asterisk@home o Trixbox

yum install kernel-utils.i386       (Esto instalara utilitarios para revisar tus discos rigidos)

Algunos de estos ya son obsoletos.

Luego de instalar kernel-utils  puedes usar    smartctl -a /dev/hda   o para simplificar las cosas puedes usarlo desde el Webmin (con esto podras ver el stado de tu disco)
config set        (Cambia la hora zona etc)
netconfig         (Configura la placa de network)
genzaptelconf        (autoconfigura la placa Zaptel )
bundle-crm     (backup CRM para correr en otra maquina)
restore-aah     (rechttp://www.voip-info.org/obrar de un  backup)
install-ZAPHFC     (instala soporte para las placas  HFC ISDN )
install-AVMB1ISDN  (instala soporte para las placas  AVB B1 ISDN )
install-EiconDiva     (instala soporte para las placas  Eicon Diva ISDN )
install-pdf     (instala soporte para enviar PDFs o faxes)
passwd-maint   (esto es para cambiar la clave del usuario maint)
passwd-amp  (esto es para cambiar la clave de AMP)
passwd-meetme  (esto es para cambiar la clave MeetMe )
passwd  (esto es para cambiar la clave de ROOT) - se usa de esta manera   passwd root       
passwd admin  (esto es para cambiar la clave de admin , esta cuenta es usada para revisar email)

setup-dhcp    ( para configurar el servidor DHCP cuidado, que si ya tienes DHCP activado en otra maquina no necesitas de esto)

asterisk -r Asterisk CLI
yum -y update  (para poner al dia tu Centos, no te lo recomendaria si ya tienes Asterisk instalado, ya que tendras que reconfigurar tu placa Zaptel )

dmesg para obtener info de tu maquina (bastante util)

6.1  Clientes

Los mejores clientes son Hardware no Software, yo uso los Sipuras de Linksys , hay varias otras alternativas, en mi oficina tengo un Polycom (foto abajo) y en casa uso ATAs de Linksys, los que no me gustan mucho son los USB, ya que usan software desde tu PC,
y la calidad en las llamadas al usar Software no es muy buena.

Clientes SIP : uno de los mejores es el X-ten, no se si seguirá siendo gratis o no, por el momento se puede bajar desde aqui

Clientes IAX2 - He usado el programa  (Kiax)  puedes bajarlo desde aqui  para Windows o Linux


7 Para Copiar o sincronizar directorios/archivos entre diferentes servidores usando RSYNC

Hay varias formas de copiar directorios de una maquia a otra, scp, unison, rsync, etc, en este caso te mostrare como usar rsync



Esto sincroniza desde la maquina que tiene el directorio Vol1 y lo pone en otra maquina  linux en la red local , en este caso 192.168.1.102

rsync  -rtvaz --delete   /var/www/Vol1 192.168.1.102:/var/www  > /var/rsync.txt

Mas en detalle RSYNC


Si no tienes instalado el RSYNC lo puedes instalar poniendo
 

yum install rsync.i386 -y
 
O para ver que tipo de RSYNC es apropiado para tu maquina

yum search rsync
 

Placas FXO 

Si consigues una placa de las que venden en  Ebay por unos $15  Dollares, puedes hacer que tu servidor de Asterisk pueda hacer o recibir llamadas en tu línea telefónica.

Puedes usar esto en caso que tengas una de estas placas


cd /etc/sysconfig
cp zaptel zaptel.viejo
rm zaptel -r
wget http://pezoa.com/Asterisk/zaptel


Lo único que hace esto, es activar la placa FXO, seria mejor que la edites tu mismo removiendo el # del modulo que quieras usar, lo anterior seria practico si tienes que configurar varios servidores al mismo tiempo

Este es el lugar donde encontraras esto /etc/sysconfig/zaptel   y si usas windows para editar \\IP_DEL_SERVIDOR\ServerRoot\etc\sysconfig\zaptel 

Panico Kernel (kernel panic)  

Para resolver este problema, usa esto
anda a  
cd /etc/rc6.d
Edita el archivo
K92zaptel En la linea 115 a la 123 simplemente ponele # en frente y listo.






Si no tienes ganas de editar copia y pega esto en tu terminal

cd /etc/rc6.d
cp K92zaptel K92zaptel.old
rm K92zaptel -r
wget http://pezoa.com/Asterisk/K92zaptel

10 Configurar SIP en un NAT  

Editar sip_nat.conf

nat=yes
externhost=ElNombreDeTuDominio.com
localnet=192.168.1.0/255.255.255.0
externrefresh=10

Esta parte no hace falta pero puede ser util como test solamente

Editar sip_additional.conf

[6409]
;type=friend
secret=****
record_out=Adhoc
record_in=Adhoc
qualify=yes
port=5060
nat=yes
host=dynamic
dtmfmode=rfc2833
dial=SIP/6409
context=from-internal
canreinvite=no
callerid=device <6409>
externip=xxx.xxx.xxx.xxx (el IP publico del cliente)
disallow=all
allow=ulaw
allow=gsm
type=peer
insecure=very

11 Puertos del firewall / Firewall ports  

RTP, MGCP, IAX, IAX2, SIP, FLASH_OP,  Estos puertos son los básicos para Asterisk, pero también tienes que agregar el puerto 80 para el servidor de Web, 22 si quieres conectarte a la Terminal, etc. 

 

FLASHOP      4445 TCP/UDP  --> Int IP server
RTP                10000-20000   UDP   --> Int IP server
SIP                 5030 5092 UDP   --> Int IP server
IAX                 4550 4570 UDP   --> Int IP server
Para Broadvoice 68-69 UDP   --> Int IP server


12 Cambiar IP de Centos/Elastix/Trixbox desde la consola

Hay varias formas de hacer esto, la mas fácil es usar Webmin, pero es bueno conocer las otras formas;
Si deseas asignarle un valor por tu cuenta puedes editar un par de archivos,



ifconfig -a
Para ver el IP que esta configurado
ifconfig eth0 
Ver la configuracion  de eth0 o eth1 si tienes mas de una placa de red


Editar ifcfg-eth0 o  ifcfg-eth1 si tienes mas de una placa

cat /etc/sysconfig/network-scripts/ifcfg-eth0
Para ver la configuracion
nano /etc/sysconfig/network-scripts/ifcfg-eth0
Editar la configuracion
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
HWADDR=00:1e:37:3c:d7:7e
IPADDR=192.168.1.10
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
TYPE=Ethernet
Pone algo similar a esto, si quieres que el servidor tenga el IP 192.168.1.10
Lo que marque en rojo no lo copies, deja lo que ya esta en tu configuracion.


Editar lo siguiente para gateway y nombre de la maquina

cat /etc/sysconfig/network
Para ver el archivo
nano /etc/sysconfig/network
Editar y guardar la configuracion
NETWORKING=yes
HOSTNAME=elastix1.pezoa.com
GATEWAY=192.168.1.1
Le pones el nombre del servidor, y el ip del gateway, el IP del ejemplo es uno de los mas comunes en redes pequeñas

Editar DNS o tu maquina solo tendra acceso a la red local


cat /etc/resolv.conf
Para ver  resolv.conf
nano /etc/resolv.conf
Editar  resolv.conf
search pezoa.com
nameserver 192.168.1.1
nameserver 67.11.20.32
La primera linea no es necesaria, dependiendo de tu red.
Luego el name server es el valor de tu DNS, en redes pequeñas casi siempre es igual al gateway.
Puedes poner mas si conoces los valores de DNS que te asigna tu proveedor de internet.






service network restart  
- reiniciara la red

La forma mas fácil de hacer esto es usando el comando sytem-config-network , si no lo tienes lo puedes instalar asi  yum install sytem-config-network -y
Luego de configurar, reinicia la red con este comando
/etc/init.d/network restart



Otra forma de cambiar el IP es asi (no es permanente);
ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up




13 KDE en Trixbox Interfaz grafica en Trixbox (Linux Centos)

Esto no te lo recomiendo en un ambiente de producción, pero hace la vida más fácil, o simplemente úsalo para configurar y cuando estés listo lo cierras
El proceso es bastante sencillo, baja los paquetes básicos y algunos otros que son útiles para editar, controlar, quemar  etc.

Antes de correr los comandos tendras que modificar el repositorio de Centos

Encuentra esto y abrelo con un editor /etc/yum.repos.d/CentOS-Base.repo


Al final del documento copia y pega lo siguiente tal y como esta abajo:


[dag]

name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=0
enabled=1

Luego corre lo siguiente en tu terminal

yum install kdebase kdeutils firefox system-config* nedit vim-X11 vim-enhanced yum-utils yum-plugin-fastestmirror yum-plugin-protectbase yumex partimage* -y

Con el siguiente comando lo configuras a una resolución basica de 1024 X 768 para ver si anda bien

system-config-display

Reinicia la maquina y pones lo siguiente cuando quieras usar la interfaz grafica 

startx

También puedes usar XFCE el cual no usa tantos recursos como el KDE pero también es interesante y fácil de usar


yum install xf* -y
system-config-display
startxfce4

* Si Quieres agregar otras cosas utiles como para ver y/o copiar DVDs, quemar CD / DVD o simplemente para tocar tu musica en MP3 o formato preferido

yum install -y vobcopy libdvdplay-devel libdvdplay ogle transcode xvidcore mplayer vlc k3b mencoder



whos.AmUnG.uS Gadget

The gadget spec URL could not be found
Comments