martes, 23 de agosto de 2011

Asterisk

Introducción.

Fuente : http://www.alcancelibre.org/staticpages/index.php/como-ekiga-asterisk

Acerca de Ekiga.

Ekiga  es una aplicación para VoIP (Voice over IP o Voz sobre IP) y vídeo-conferencia, distribuido bajo los términos de la licencia GNU/GPL. Incluye soporte para los protocolos SIP (Session Initiation Protocol o Protocolo de Inicialización de Sesiones) y H.323.
El proyecto fue iniciado por Damien Sandras con el nombre GnomeMeeting, como parte de los requisitos para graduarse de la Universidad Católica de Louvain, en la ciudad de Bruselas, Bélgica. El nombre del proyecto fue cambiado por Ekiga  el 18 de enero de 2006, con el fin de evitar se le asociara como equivalente de Microsoft NetMeeting. Actualmente es mantenido por una comunidad de desarrolladores, con Sandras como líder.
URL: http://www.ekiga.org/

Acerca de Asterisk.

Asterisk  es una implementación de código abierto para central telefónica (PBX, Private Branch eXchange o Private Business eXchange). Cuenta con un doble licenciamiento, GNU/GPL y licencia propietaria. Esta última es con el objeto de poder incluir soporte para el protocolo G.729, el cual está sujeto a las limitaciones de una patente, aunque el codificador correspondiente funciona indistintamente con una u otra versión.
Asterisk está diseñado para servir como PBX. Como cualquier PBX, se puede conectar un número determinado de teléfonos para hacer llamadas entre sí, e incluso conectar a un proveedor de VoIP o bien a una , tanto básicos como primarios.
La versión libre de Asterisk incluye todas las funcionalidades de las más costosas alternativas de código cerrado, como son correo de voz, llamada en conferencia, respuesta interactiva de voz (a través de menús del teléfono) y distribución automática de llamadas.
URL: http://www.asterisk.org/

Acerca de Linphone.

Linphone es un cliente SIP para VoIP creado por Simon Morlat. Está hecho en GTK2, es pequeño, ligero y muy estable e incluye además linphonec, una poderosa versión para terminales en modo texto. La versión de AL Desktop incluye soporte para voz y mensajes instantáneos, pero el código incluye también soporte para vídeo.
Características:

•  Cumple con los estándares SIP (Session Initiation Protocol o Protocolo de Inicialización de Sesiones).
•  Puede registrarse en servidores Asterisk.
•  Soporte para subscripción de VoIP hacia RTC (Red Telefónica Conmutada, también conocida como PSTN o Public Switched Telephone network). Es decir, telefonía red telefónica básica.
•  Es equipamiento lógico libre.
•  Es muy estable en GNU/Linux, y probablemente también en los diversos sabores de Unix.
•  Hay versión estable para Windows, pero con algunas funciones aún sin portar.
•  Funciona bien con las siguientes implementaciones, probadas por el autor de Linphone: eStara softphone, Teléfonos Pingtel, Hotsip, Vocal (Vivida), Siproxd y Partysip
URL: http://www.linphone.org/

Acerca del protocolo SIP.

SIP (Session Initiation Protocol o Protocolo de Inicialización de Sesiones) es un protocolo propuesto como estándar por la IETF (Internet Engineering Task Force o Fuerza de Trabajo en Ingeniería de Internet), descrito en el RFC 3261, para la iniciación, modificación y finalización de sesiones interactivas de usuario, en las cuales intervienen elementos de medios electrónicos, como pueden ser vídeo, voz y mensajería instantánea. Es uno de los varios protocolos de señalización para la tecnología de Voz sobre IP (VoIP o Voice over IP), y forma parte de la arquitectura IMS (IP Multimedia Subsystem o Subsistema multimedios por IP).
URL: http://tools.ietf.org/html/rfc3261

Equipamiento lógico necesario.

Considerando que se va a instalar el cliente (Ekiga) en un sistema distinto al del servidor que sustentará a Asterisk, las instalaciones de equipamiento lógico correspondientes proceden de la siguiente forma.

Instalación de servidor Asterisk.

Para poder llevar al cabo los procedimientos descritos en este y otros documentos relacionados, usted necesitará tener instalado al menos lo siguiente, lo cual no está incluido en la instalación estándar de CentOS 4, Red Hat™ Enterprise Linux 4 o White Box Enterprise Linux 4 (disponible a través de los depósitos de equipamiento lógico de Alcance libre).

•  asterisk-1.4.1
•  asterisk-addons-1.4.0
•  asterisk-sounds-es
•  gsm-1.0.12
•  libidn-0.6.9
•  libpri-1.4.0
•  spandsp-0.0.3-7_pre28
•  speex-1.2
•  zaptel-1.4.0

Instalación a través de yum.

Si dispone de un servidor con CentOS 4, Red Hat™ Enterprise Linux 4 o White Box Enterprise Linux 4, puede utilizar el el depósito yum de Alcance Libre para servidores en producción:

[alcance-libre]
name=Alcance Libre para Enterprise Linux 4
baseurl=http://www.alcancelibre.org/al/el/4/
gpgkey=http://www.alcancelibre.org/al/AL-RPM-KEY
La instalación solo requiere utilizar lo siguiente:

yum -y install asterisk asterisk-addons asterisk-sounds-es zaptel kernel-module-zaptel
Al terminar, solo bastará iniciar el servicio asterisk, puesto que de forma predeterminada arrancará solo la siguiente vez que reinicie el sistema.

service asterisk start

Instalación de cliente Ekiga.

Instalación a través de yum.

Si dispone de un escritorio con AL Desktop en CentOS 4 Red Hat™ Enterprise Linux 4 o White Box Enterprise Linux 4, puede utilizar el depósito yum de AL Desktop:

[AL-Desktop]
name=Enterprise Linux $releasever - $basearch - AL Desktop
mirrorlist=http://www.alcancelibre.org/al/el4/al-desktop
gpgkey=http://www.alcancelibre.org/al/AL-RPM-KEY
La instalación requiere utilizar lo siguiente:

yum -y install ekiga

Instalación de clientes Linphone y Linphonec.

Instalación a través de yum.

Si dispone de un escritorio con AL Desktop en CentOS 4 Red Hat™ Enterprise Linux 4 o White Box Enterprise Linux 4, puede utilizar el depósito yum de AL Desktop:

[AL-Desktop]
name=Enterprise Linux $releasever - $basearch - AL Desktop
mirrorlist=http://www.alcancelibre.org/al/el4/al-desktop
gpgkey=http://www.alcancelibre.org/al/AL-RPM-KEY
La instalación requiere utilizar lo siguiente:

yum -y install linphone

Procedimientos.

Configuración de servidor Asterisk.

Fichero /etc/asterisk/manager.conf.

Si se considera necesario, se puede configurar el acceso remoto hacia el gestor de Asterisk. Se requiere definir un usuario, las correspondiente clave de acceso y los privilegios necesarios, a fin de poder permitir utilizar diversas herramientas para la administración y/o supervisión remota(s). En el siguiente ejemplo para el contenido del fichero /etc/asterisk/manager.conf, se activa acceso remoto a través del puerto 5038, se define admin como usuario, secreto como clave de acceso y se otorgan todos privilegios.

[general]
displaysystemname = yes
enabled = yes
;webenabled = yes
port = 5038
;httptimeout = 60
; De modo predefinido, el gestor de Asterisk escuchará peticiones 
; por cualquier interfaz activa en el sistema, pero puede 
; definirse, por ejmeplo, que solo se permitan conexiones desde
; la dirección IP de red privada (RFC 1918).
bindaddr = 0.0.0.0
;displayconnects = yes
;timestampevents = yes

[admin]
secret = secreto
deny=0.0.0.0/0.0.0.0
permit=192.168.12.0/255.255.255.128
writetimeout = 100
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config

Fichero /etc/asterisk/sip.conf.

El siguiente ejemplo corresponde a la configuración de tres cuentas SIP (101, 102 y 103). El contenido se agrega, o bien modifica opciones, al fichero /etc/asterisk/sip.conf.

[general]
context=default
srvlookup=yes
videosupport=yes ; Asterisk puede también gestionar las conferencias de vídeo
disallow=all   ; Desactivar todos los codificadores
allow=alaw     ; Permitir codificadores en orden de preferencia 
allow=ilbc
allow=gsm
allow=h261
; El paquete asterisk-sounds-es de alcance libre instala los ficheros de audio
; al español. Por tanto, se puede definir éste como idioma pata los mensajes.
language=es 
; Realizar registro en ekiga.net con un usuario y clave de acceso válidos y 
; encaminar las llamadas hacia la extensión 101
register => usuario:clave-de-acceso@ekiga.net/101

; Hacer acceder a Asterisk hacia una cuenta en ekiga.net para permitir
; realizar llamadas
[ekiga]
type=friend
username=usuario
secret=clave-de-acceso
host=ekiga.net
canreinvite=no
qualify=300
; Si se utiliza asterisk 1.4.x:
insecure=port,invite
; Si se utiliza asterisk 1.2.x:
; insecure=very

; Extensión 101
[101]
type=friend
secret=secreto1
qualify=yes    ; El par correspondiente está no más allá de 2000 mS.
nat=no         ; No hay NAT.
host=dynamic   ; Dispositivo se registrará con servidor.
canreinvite=no ; Asterisk tratará de redireccionar de forma predeterminada.
context=home   ; Contexto predefinido (ver → extensions.conf)
;port=5061     ; Descomentar si Ekiga o Linphone y Asterisk están en el mismo sistema.
               
; Extensión 102
[102]
type=friend
secret=secreto2
qualify=yes
nat=no 
host=dynamic
canreinvite=no
context=home
;port=5061 

; Extensión 103            
[103]
type=friend
secret=secreto3
qualify=yes
nat=no
host=dynamic
canreinvite=no
context=home
;port=5061

Fichero /etc/asterisk/voicemail.conf.

A fin de habilitar el acceso al correo de voz para cada extensión, y al mismo tiempo especificar una cuenta de correo electrónico hacia la cual se enviará un mensaje de correo electrónico con el mensaje de voz como adjunto, solo es necesario verificar que las siguientes opciones estén habilitadas. En el ejemplo, se configuran las cuentas para las extensiones 101, 102 y 103.

[general]
; Escoger el formato del correo de voz. Recomendado usar WAV, por razones de 
; compatibilidad.
format=wav
;
; Si se dispone de espacio suficiente en la cuenta de correo, la siguiente
; opción especifica que se adjunte el mensaje de voz a un mensaje de correo
; electrónico, de modo que se pueda escuchar al dar clic desde el cliente.
;
attach=yes
;
[default]
; Cada buzón de voz se lista en el siguiente formato:
; buzón => clave de acceso,Nombre de persona,correo electrónico,correo 
; electrónico de servicio de localizador. Ejemplos:
101 => secreto1,Nombre,alguien@algo.algo,numero@mi-celular.algo
102 => secreto2,Nombre,otro@algo.algo
103 => secreto3,Nombre,alguien-mas@algo.algo

Fichero /etc/asterisk/extensions.conf.

El siguiente ejemplo corresponde a la configuración de tres extensiones (101, 102 y 103). El contenido se agrega al fichero /etc/asterisk/extensions.conf.

; Macro que habilita el uso de correo de voz, de modo que no hará falta
; repetir complejas configuraciones en cada cuenta.
[macro-correovoz]
exten => s,1,Dial($,20)
exten => s,2,Goto(s-$DIALSTATUS},1)
exten => s-NOANSWER,1,Voicemail(u$)
exten => s-NOANSWER,2,Hangup()
exten => s-BUSY,1,Voicemail(b$)
exten => s-BUSY,2,Hangup()
exten => _s-.,1,Goto(s-NOANSWER,1)

[home]
; Extensión 101
exten => 101,1,Macro(correovoz,SIP/101)

; Extensión 102
exten => 102,1,Macro(correovoz,SIP/102)

; Extensión 103
exten => 103,1,Macro(correovoz,SIP/103)

; Lo siguiente permite acceder al correo de voz desde Ekiga, simplemente
; marcando el número 8
exten => 8,1,VoiceMailMain(s$)
exten => 8,2,Hangup

; Prueba de Eco
exten => 600,1,Answer()
exten => 600,2,Playback(demo-echotest)
exten => 600,3,Echo()
exten => 600,4,Playback(demo-echodone)
exten => 600,5,Hangup()

; Lo siguiente permite realizar llamadas hacia cuentas de Ekiga.net
; solo antecediendo un número 9 antes de la cuenta. Es decir:
; Si antes se tenía que marcar sip:alguien@ekika.net, ahora se hará
; como sip:9alguien@ekiga.net
exten => _9.,1,Dial(SIP/ekiga/$,20,r))

Al terminar, solo bastará reiniciar el servicio asterisk para que surtan efecto los cambios.

service asterisk restart
También puede ingresar a la interfaz de línea de mandatos (CLI o Command Line Interface), desde el servidor que sustenta a Asterisk, utilizando el mandato asterisk -r, y ejecutando desde ésta el mandato reload. Al terminar, ingrese el mandato exit para salir de la interfaz de línea de mandatos.

Configuración de cliente Ekiga.

Ekiga, además de ajustar los niveles de audio del sistema para permitir el funcionamiento del micrófono (captura), requiere y desactivar cualquier método de NAT que esté especificado (por lo general, STUN).
n la versión 2.0.7, si activa la casilla de cancelación de eco, Ekiga no enviará el DTMF y no será posible autenticar en el buzón de voz. Deje la casilla sin activar.


Al terminar y aplicar los cambios, se debe acceder al menú de la aplicación Editar → Cuentas y añadir una nueva cuenta tipo SIP, especificando un nombre para identificar la cuenta, la IP del servidor Asterisk, el usuario a utilizar y la correspondiente clave de acceso.


Al terminar, solo se necesitará hacer clic en la casilla para activar la cuenta y registrarse en el servidor.



Configuración de cliente Linphone y Linphonec.

Solo es necesario añadir la cuenta desde la pestaña SIP de la ventana de preferencias. Un pequeño error en el despliegue de texto en la versión 1.6.0 hace que no se muestren las cuentas que se dan de alta, pero de hecho deberán estar ahí.


Pestaña SIP de la ventana de preferencias.
Se hace clic en el botón Add proxy/registar, acción que abrirá una ventana para ingresar los datos necesarios.


Ventana de registro de cuenta.
Si se prefiere, a fin de verificar datos y hacer otros ajustes, puede editarse el fichero ~/linphonerc y modificar, con cualquier editor de texto, la configuración de las cuentas, ejemplificada a continuación:

[sip]
sip_port=5060
guess_hostname=0
contact=sip:101@192.168.1.253
inc_timeout=15
use_info=0
use_ipv6=0
default_proxy=0

[proxy_0]
reg_proxy=SIP:192.168.1.253
reg_expires=900
reg_sendregister=1
publish=1

[auth_info_0]
username=101
userid=101
passwd=secreto1
realm="asterisk"
La configuración hecha es utilizada tanto por el cliente gráfico, linphone, como el cliente para terminal de texto, linphonec.
Particularmente es muy interesante las aplicaciones prácticas linphonec, el cual se puede utilizar en sistemas sin entorno gráfico. Puede dejarse iniciando automáticamente en algún guión con la opción -a para contestar llamadas automáticamente y utilizarlo como la imaginación lo determine. Es ideal para ser utilizado en terminal telefónica en clientes ligeros o equipos obsoletos.

Comprobaciones.

Para si uno marca 600, deberá contestar el servidor Asterisk con un mensaje de prueba de eco. Si se conectan los clientes al servidor Asterisk, podrán comunicarse entre si marcando solo el número de extensión, o bien como sip:extension@servidor. Ejemplo: sip:103@192.168.10.1. Marcando el número 8 desde Ekiga, se podrá acceder al correo de voz.
Si necesita depurar la configuración, puede hacerlo ingresando a la interfaz de línea de mandatos utilizando el mandato asterisk -r, añadiendo de una a cinco letras v para indicar el nivel de depuración. Ejemplo:

asterisk -vvvr
Lo anterior mostrará mensajes de depuración de nivel 3. Al terminar, ingrese el mandato exit para salir de la interfaz de línea de mandatos.

Modificaciones necesarias en el muro cortafuegos en el servidor Asterisk.

Si se utiliza un cortafuegos con políticas estrictas, como por ejemplo Shorewall, es necesario abrir el puerto 5060 por UDP para comunicaciones a través de protocolo SIP, y opcionalmente los puertos 4569,5036, 10000:20000 y 2727 por UDP, de forma correspondiente para los protocolos IAX2, IAX, RTP y MGCP, en el caso dado que se quiera acceder hacia éstos con clientes que incluyan dicho soporte. Si se va a utilizar herramientas para administración y/o supervisión remota(s), el puerto del gestor de Asterisk corresponde al 5038 por TCP.
Las reglas para el fichero /etc/shorewall/rules de Shorewall, como cortafuegos de una sola zona (net), correspondería a algo similar a lo siguiente:

#ACTION	SOURCE	DEST	PROTO 	DEST		SOURCE
#				PORT		PORT(S)1
ACCEPT	net	fw	udp	5060
ACCEPT	net	fw	tcp	5038
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Las reglas para el fichero /etc/shorewall/rules de Shorewall, como cortafuegos de dos zonas (net y loc), considerando que se desea permitir acceso tanto desde redes públicas como privadas, pero el acceso al gestor de Asterisk solo desde la red local, correspondería a algo similar a lo siguiente:
#ACTION	SOURCE	DEST	PROTO 	DEST		SOURCE
#				PORT		PORT(S)1
ACCEPT	net	fw	udp	5060
ACCEPT	loc	fw	udp	5060
ACCEPT	loc	fw	tcp	5038
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

martes, 16 de agosto de 2011

Apache en Ubuntu

Instalación de PHP5 , servidor Apache2, y Mysql.
(Repositorio --> deb http://people.debian.org/~dexter php5 hoary)
$ apt-get install apache2
$ apt-get install mysql-server
$ apt-get install php5
$ apt-get install libapache2-mod-php5
$ apt-get install php5-gd
$ apt-get install php5-dom
$ apt-get install php5-pgsql
$ apt-get install php5-mysql

* Mysql con PHP5
Cuando instalé PHP5 del repositorio, tenia soporte para Mysql pero no queda activado por defecto. El problema viene por conflictos entre licencias, la nueva versión de PHP está desarrollada bajo BSD mientras que MySQL continúa con GPL (http://www.programo.com/modules.php?name=News&file=article&sid=245).

Para activarlo tienes dos opciones:
1) Si te has bajado los fuentes de PHP debes compilarlo con la opción mysql (--with-mysql).
2) Si lo has instalado con la herramienta apt, edita el archivo /etc/php5/apache2/php.ini y quita el comentario de la línea ;extension=mysql.so
* Tablas de tipo InnoDB.

Si deseamos crear tablas de tipo InnoDB en mysql, debemos editar el archivo
/etc/mysql/my.cnf y comentar la línea : skip-innodb.
Las tablas de tipo InnoDB en MySQL, nos permiten crear claves foráneas con las que podemos relacionar tablas y actualizar y eliminar registros en cascada.

* Register Globals
Si quieres utilizar las variables de sesion y de formulario directamente con $nombre_variable
edita el archivo /etc/php5/apache2/php.ini ---> register_globals = on

Pero como bien dicen abajo, es mucho menos seguro, ya que podrian alterar el valor de las variables desde la url, por lo que es mejor utilizar $_SESSION para las variables de session y $_GET y $_POST para los formularios.

Ya puedes ponerte manos a la obra, edita tus páginas en /var/www/ y accede a ellas a través de http://localhost.

Puedes realizar una configuración más completa, de acuerdo a tus necesidades consultando cualquier manual completo de Apache, Mysql o PHP.

Espero que nos sirva de ayuda.




viernes, 12 de agosto de 2011

Instalar Asterisk en Centos - VOIP

 Dado que me encanta el tema del software libre y mucho mas aun las telecomunicaciones...quize hoy mostrarles la mejor forma de montar tu propia central de telefonia IP. La idea que pretendo mostrarles es una central base, sin muchas cuestiones funcionando dentro de ella pues esto lo unico que hace es bajar la calidad a las funcionalidades del servidor....pero primero que todo y segun la wiki que es voip?

"VoIP: Voz sobre Protocolo de Internet, también llamado Voz IP, VozIP, VoIP (por sus siglas en inglés), es un grupo de recursos que hacen posible que la señal de voz viaje a través de Internet empleando un protocolo IP (Internet Protocol). Esto significa que se envía la señal de voz en forma digital en paquetes en lugar de enviarla (en forma digital o analógica) a través de circuitos utilizables sólo para telefonía como una compañía telefónica convencional o PSTN.


Asterisk: Asterisk es una aplicación de software libre (bajo licencia GPL) que proporciona funcionalidades de una central telefónica (PBX). Como cualquier PBX, se puede conectar un número determinado de teléfonos para hacer llamadas entre sí e incluso conectar a un proveedor de VoIP o bien a una RDSI tanto básicos como primarios"

Ahora llegamos al hecho que exiten multiples versiones de sistemas operativos con embebidos de asterisk, los cuales gozan de mucho renombre, por que no usar uno de esos, bueno basicamete por que delimitan las funcionalidades de nuestra plataforma asterisk a lo que ellos implementan en sus interfaces y hacen mucho mas complicado la modificacion manual de archivos que ellos han renombrado o modificado a su antojo.

El precente post se ha realizado y probado en un Sistema Operativo Centos 5.4 final...se parte del hecho que ya conocen un poco como moverse dentro de la estructura de archivos en entornos linux

Iniciemos la instalacion


1- Para empesar debemos seleccionar los archivos y dependencias de asterisk que vamos a instalar...en este momento ya fue liberada la version 1.6.2 de asterisk pero para esta instalacion he seleccionado la 1.6.1 pues ya la conozco y la he testeado y se que cuenta con la suficiente solidez para un entorno de trabajo empresarial - Los paquetes que necesitamos para esto son: Asterisk(la version que uds deseen), dahdii-linux-complete, el libpri y los addons de asterisk, yo me hubicare en el surco de la carpeta /usr/src/ si ud desean descargar en home son libres de acerlo

# cd /usr/src/

Con el comando wget descargamos en modo consola

Astrerisk

# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.1.9.tar.gz

El paquete dahdi-linux provee a nuestro servidor de drivers para las tarjetas de conexion a las lineas de telefonia tradicional ya sean las E1, T1.

# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.2.0.2+2.2.0.tar.gz

El empaquetado de libpri da a nuestra central telefonica la posibilidad de realizar conexiones a lineas primarias de telefonia como las que existen en las pstn

# wget http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.10.2.tar.gz

Y por ultimo los paquetes del addons asterisk proveen drivers para conexion a serividores de mysql y manejo de bases de datos ademas de proveer de drivers para manejo de archivos en mp3, su instalacion es opcional.

# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-addons-1.6.1-current.tar.gz


2 - Para la debida instalacion de nuestro asterisk es necesario instalar los paquetes de kernel-devel que corresponden a la version del kernel de nuestro sistema para ver que version del kernel tenemos ingresamos en la consola el comando:

# uname -a

Esto nos devolvera una linea como la siguiente

linux asterisk 2.6.18-164.6.1.el5

3 - Para ver si tenemos los paquetes de desarrollo que provee el kernel-devel en nuestro sistemas revisamos si tenemos instalado las fuentes de kernel-devel, ingresando el comando rpm -q + "el paquete que vamos a averiguar"

# rpm -q kernel-devel

kernel-devel-2.6.18-164.6.1.el5

Esto si lo tenemos instalado, sino lo tenemos instalado bastara con ingresar el comando:

yum -y install kernel-devel-2.6.18-164.6.1.el5


4 - Existen una serie de paquetes que debemos revisar si estan instalados y si no proceder con la instalacion de ellos, la verificacion e instalacion es igual que como se vio arriba y los paquetes son estos:


bison
bison-devel
ncurses
ncurses-devel
zlib
zlib-devel
openssl
openssl-devel
gnutls-devel
gcc
gcc-c++
make



5 - Con esto tenemos nuestro sistema listo para llevar a cabo la instalacion de los paquetes que bajamos anteriormente en /usr/src/

Para realizar la descompresion de los archivos con el comando tar -xzvf + "nombre del paquete"
# tar -xzvf asterisk-1.6.1.9.tar.gz
# tar -xzvf dahdi-linux-complete-2.2.0.2+2.2.0.tar.gz
# tar -xzvf libpri-1.4.10.2.tar.gz
# tar -xzvf asterisk-addons-1.6.1-current.tar.gz

Empesaremos con la instalacion de el libpri ingresamos a la carpeta con el comando cd

# cd libpri-1.4.0


creamos el ejecutable con los siguentes comandos dentro de la carpeta del libpri

# make clean
# make
# make install

Ahora vamos con el dahdi, estando situados sobre la carpeta de las descargas /usr/src ingresamos a la carpeta cd dahdi-linux-complete-2.2.0.2+2.2.0/tools

# ./configure

Luego de eso subimos un nivel a la carpeta de dahdi con el comando cd .. y empesamos la compilacion de los archivos

# make
# make install
# make config
# make samples ---> esta instalacion lo que hace es crear scrips por defecto para las tarjetas que tradicionamente son instaladas


Estando en /usr/src luego ingresamos a la carpetacd asterisk-1.6.1.9

# ./configure
# make
# make install
# make samples
# make config


6 - Ahora para iniciar la carga de nuestro servidor le indicamos en la conzola el comando:

# asterisk -vvvvvvvvcg

luego en :
*CLI> stop now
nuevamente
# asterisk –vvvvv
luego:
# asterisk –r


Con esto tenemos listo nuestro server VoIP Centos 5.4 y con los comandos service podemos parar y arrancar el servicio de asterisk:

# service asterisk stop
# service asterisk start


Con eso tenes instalada Una centralita base para comunicacion VoIP 
   

martes, 9 de agosto de 2011

Unidad de Cinta en Linuix - DAT 72


En el trabajo tenia que utilizar la unidad de cinta de un servidor, y esta me costo un poquito utilizarla. Pero en fin como todo en linux, queda impecable. 


La famosa cinta Dat72, la utilice en Centos 5.6. Pienso que tiene mucho espacio. 


Para utilizarla (Dat72) debemos tener el comando mt. Si no lo tienen instalado al paquete busquenlo con su gestor de paquetes:  
yum search mt

Para instalarlo en mi centos: 
yum install mt-st.x86_64

Para buscar el dispostivo:
dmesg |grep scsi |grep st

El dispositivo estaba en /dev/st0 y no se precisa montar.

Hay que crear un enlace simbolico desde /dev/st0 hacia /dev/tape
ln -s /dev/st0 /dev/tape


Comando mt (magnetic tape control)
Permite mandar instrucciones al dispositivo de cinta.

Sintaxis:
mt [opciones] [-f <dispositivo>] [comando] [cantidad] [argumentos]

Opciones:
-f /dev/tape
Permite especificar unidad de cinta sobre la cual trabajar.

Comando Descripción:

rewind
Rebobina la cinta hasta el inicio.

fsf
Se mueve hacia adelante cuantos volúmenes se expresen a través
del parámetro <cantidad>. La cinta se posiciona en el primer
bloque del volumen siguiente.

fsfm
Es similar al anterior solo que la cinta se posiciona en el último
bloque del volumen anterior.

bsf
Se mueve hacia atrás cuantos volúmenes se expresen a través del
parámetro <cantidad>. La cinta se posiciona en el primer bloque
del volumen siguiente.

bsfm
Es similar al anterior solo que la cinta se posiciona en el último
bloque del volumen anterior.

asf
Se posiciona la cinta en el comienzo del archivo correspondiente al
parámetro <cantidad> a partir del inicio de la cinta. Es
equivalente a hacer un ``rewind'' y luego un``fsf'' con la misma
cantidad.

eod
Posiciona en el final de los datos válidos.

offline Rebobina la cinta y si es posible la descarga de la torre.

erase
Borra la cinta.

status
Imprime el estado actual de la cinta. Este contiene la posición en
que se encuentra la cinta, el número del bloque actual, el archivo o
volumen, etc.

eof
Escribe en la cinta tantas marcas de tipo EOF (End Of File) se
expresen a través del parámetro <cantidad>.


eject
Expulsa la cinta.



Ejemplo:

Expulsa la cinta
mt -f /dev/st0 eject

Retrocede
mt -f /dev/st0 rewind



La estructura de la cinta: