domingo, 21 de julho de 2013

Servidor Asterisk Com TrixBox para Iniciantes

O que é Trixbox?
É uma versão que já contém o Linux e o Asterisk com as bibliotecas necessárias.
O distribuidor do Trixbox é a empresa Fonality.
Após a instalação você terá uma solução PABX pronta para ser moldada de acordo com as suas necessidades.
Pré-requisitos
§     Um servidor com o Trixbox instalado;
§     Os ramais (em nosso caso softfones);
§     Uma conta VoIP para ligar para qualquer telefone fixo ou celular (opcional);
§     Um acesso a Internet de boa qualidade (banda larga ou link dedicado) para as ligações VoIP.







Requisitos de hardware
A velocidade do processador e a quantidade de memória necessária para fazer a montagem, são variáveis, pois é preciso analisar os serviços a serem utilizados (configurados), tipos de codecs assim como a quantidade de ligações simultâneas que será executado, entre outros.
Para o nosso tutorial usaremos uma máquina, com 8 GB de HD, e também 1.5 GB de memória RAM. Mas para o uso em um ambiente corporativo empresa, o ideal é colocar um processador core2Duo 2.0 ou equivalente, uns 100GB de HD e uns 3 GB de memória RAM, não esquecendo de após a instalação (ambiente corporativo) monitorar constantemente o consumo (uso) tanto da memória quanto do processador.

  Configurações e instalações

 

·         Fazer o download da última versão do arquivo .ISO do endereço: 
·         Colocar o cd/dvd no computador.
IMPORTANTE: Tentamos colocar para rodar na máquina virtual e não funcionou devido problemas com o dispositivo de vídeo;
·                    -       Escolher a opção de inicialização cd/dvd pode ser com as teclas de função para facilitar sem precisar entrar na BIOS, no meu caso foi o F8;

Ao aparecer à tela abaixo pressione o enter para apagar todo o HD e começar a instalar.

Figura 1: Tela inicial da instalação do Trixbox.

Após o procedimento acima, escolha o idioma que é o BR-ABNT2;
Na tela seguinte, escolha o fuso horário no formato AMERICA/SÃO_PAULO de pressione a tecla seta para o lado, após em SYSTEM CLOCK USER UTC de um SPACE e após OK.
Agora é só aguardar a conclusão da instalação, não se esquecendo de assim que for reiniciado o servidor, retire o cd/dvd para não começar a instalar tudo novamente.

Os seguintes produtos são instalados:
§     CentOS - o Sistema Operacional Linux;
§     Asterisk - o PABX IP de código livre;
§     freePBX - interface Web para configurar o Asterisk;
§     SugarCRM - para gerenciamento de contatos e clientes;
§     A2Billing - sistema de tarifação;
§     Flash Operator Panel (FOP) - painel de gerenciamento das ligações;
§     Web Meet Me Control - para gerenciar as conferências;
§     Asterisk-Stat - que gera os relatórios das ligações efetuadas (CDR);
§     mySQL, Apache, PHP e outras bibliotecas;
§     diversas ferramentas de administração do servidor.

Configurando o endereço IP do Trixbox
O ideal é dispensar o DHC no servidor e colocar um IP estático, de preferência um IP público (válido na Internet) caso precise fazer uma conexão através do protocolo SIP de fora (internet).
Para fazer a alteração do ip DHC para estático segue abaixo:
Como o root entrar no arquivo
    vi /etc/sysconfig/network-scripts/ifcfg-eth0

Troque o BOOTPROTO PARA static e coloque o ip e a mascara
    BOOTPROTO=static
    IPADDR=192.168.1.100 (pode ser qualquer outro)
    NETMASK=255.255.255.0

Agora edite o arquivo abaixo para adicionar o gateway:
    vi /etc/sysconfig/network
    GATEWAY=192.168.1.1

E para um dns entrar no arquivo abaixo e realizar as alterações:
    vi /etc/resolv.conf
Recomendo utilizar os dns´s abaixo que são do google dns public:
    nameserver 8.8.8.8
    nameserver 8.8.4.4

Para finalizar de um restart na placa de rede conforme abaixo:
    /etc/init.d/network restart

Modificando as senhas padrões do Trixbox
Como é normal, trocamos as senhas no Trixbox.
Digite help-trixbox no prompt do Linux que será mostrado todos os comandos necessários para modificar todas as senhas do Trixbox.

Criando uma conta SIP
Entrar no diretório conforme caminho abaixo:

# vi /etc/asterisk/sip.conf
Ao entrar no diretório pode apagar todas as linhas que já estão no documento e criar um “ramal”, conforme figura demonstrativa, realizado em nosso servidor a seguir:


Em relação ao contexto, segue uma explicação simples abaixo:

[general]
Esta seção define os valores default (padrão) para as demais seções e/ou protocolo.
bindport
Porta utilizada pelo protocolo. O SIP utiliza as portas 5060 TCP e UDP, e 5061 TCP para TSL (Transporte Layer Security).
bindaddr
Endereço IP onde o Asterisk aceitará conexões. Se configurado como 0.0.0.0, aceitará conexões em qualquer IP.
disallow
Desabilita codecs, a opção all desabilita todos codecs.
allow
Habilita o (s) codec (s) especificado (s).
language
Configuração padrão de idioma para users/peers. É possível configurar individualmente em cada peer.
[XXXX]
Identificação do ramal.
type
Define se o ramal pode receber chamadas (peer), efetuar chamadas (user), ou receber e efetuar chamadas (friend).
context
Define o contexto ao qual o ramal pertence. Este contexto será criado posteriormente no plano de discagem.
secret
Senha para registrar o ramal no servidor.
host
Informa onde o ramal está registrado. Aceita endereço dinâmico, quando configurado como dynamic.



Criando um plano de discagem

Entrar no diretório conforme caminho abaixo:

# vi /etc/asterisk/extensions.conf
Ao entrar no arquivo de configuração, deletar tudo e colocar somente como indica figura abaixo:


Ativando as configurações feitas
Primeiramente entre na console do asterisk conforme comando abaixo:
#asterisk -r

Para colocar em vigor o que foi feito dar os comandos abaixo:
#sip reload
#dialplan reload

E por fim sair da console do asterisk
#exit

Configurando o Softfone Zoiper
Seguir os passos abaixo:

1º Entrar no programa Zoiper já instalado anteriormente na máquina do cliente
    Após clicar em next na tela que aparecerá;


2º Testar o fone e microfone e dando tudo certo apertar “OK”;


3º Nessa tela acima clique no “X” no canto superior direito; 


4º Escolher a opção “I’m sure” e de “OK”;


5º Seguindo adiante, vamos alterar o idioma para melhor configurar o Zoiper, conforme a imagem acima;



 Para configurar o ramal no Zoiper, entrar na aba configurações e após Prefeências;


 Na primeira opção “Contas SIP, após criar uma nova conta SIP”, após em segundo lugar colocar o nome do contexto no nosso caso “teste” e colocar “OK”;


 Por fim, já dentro da conta “teste”,  colocar conforme exemplifica a imagem acima.

Agora é só começar a utilizar o Trixbox, sendo que também temos o ambiente web que pode ser implementado, sendo assim é preciso fazer mais pesquisas para utilizar os serviços que não será o caso nesse passo-a-passo, sendo assim será somente para explicar e ver algumas funções da web.
Utilizaremos o #help-trixbox para ver a opção de mudar a senha de admim do ambiente web da seguinte forma:
Com o comando #passwd-maint mudaremos a senha do usuário administrador que é o maint,
Agora é só entrar no seu navegador com o seguinte endereço http://IP_DO_SERVIDOR e vai aparecer a tela abaixo:



E onde está a parte marcada como “User mode” click em “switch”, na tela seguinte, coloque o login:maint e a senha e pronto pode ser visto tudo.

A partir de agora vamos trabalhar e conhecer ao mesmo tempo a interface web no TRIXBOX, sigamos.

Abaixo temos o painel de configuracao do TRIXBOX




Configuração Genérica


Painel de configuração do ramal.
Display Name: Nome Identificatório.
Secret: Senha de cadastro para o softfone.






Qualquer dúvida que tenha ficado favor sinta-se a vontade para postar no nosso blog que dentro do possível estarei tirando essas dúvidas.





O material aqui presente, teve a participação de:

Diego, Murilo, e Eduardo
Alunos de Redes de computadores, SENAI/CTAI-Florianópolis

Muito obrigado pela atenção de todos e esperamos ter ajudado com essa introdução ao trixbox.

quarta-feira, 17 de julho de 2013

Montando um Servidor NFS passo - a - passo

=============================
||SERVIDOR NFS||
=============================
Primeiramente dar um apt-get install nos seguintes pacotes que segue abaixo:
# apt-get install nfs-common
# apt-get install portmap
Em seguida instalar o servidor # apt-get install nfs-kernel-server após fazer seguir fazendo o compartilhamento desejado conforme exemplo abaixo:

Entrar no arquivo #vim /etc/exports entrando nesse arquivo, fornecer qual o diretório será compartilhado (lembrando que é preciso criar as pastas ou já ter criado) no servidor conforme abaixo:

/export/nfs *(ro,sync) 192.168.0.0/255.255.255.0(rw,sync,no_subtree_chek)
/home *principal.com(rw,sync,no_root_squash,no_subtree_chek)

As linhas acima adicionadas ao NFS SERVER são para:
1ª Linha ==> Liberar leitura e sincronia do diretório /expert/nfs e leitura e gravação para a rede 192.168.0.0/255.255.255.0

2ª Linha ==> Permite a liberação do diretório /home para o domínio .principal.com leitura gravação e ainda o usuário root remoto (o domínio .principal.com) use o diretório como root local.

Após todo esse processo for realizado dar um #exportfs -a para exportar o diretório compartilhado.

===========================
-=CONFIGURAR O CLIENTE NFS=-
===========================
Baixar (se precisar) o # apt-get install nfs-common e o # apt-get install portmap

Agora partir para a configuração e montar a partição criada no server como segue abaixo:

Com o comando abaixo é possível montar o compartilhamento:
mount -t nfs 192.168.0.0:/export/nfs /mnt/compartilhamento
mount -t nfs .principal.com:/home /mnt/compartilhamento2

Para mapear via fstab adicionar as linhas abaixo dentro do arquivo #vim /etc/fstab:
192.168.0.0:/export/nfs /mnt/compartilhamento nfs rw,sync,auto 0 0
.principal.com:/home /mnt/compartilhamento2 nfs rw,sync,auto 0 0


 Agora reiniciar a máquina e fazer os testes.

segunda-feira, 15 de julho de 2013

Distribuição de Imagens linux via PXE

==============================
||CONFIGURAR O SERVIDOR TFTP||
==============================
Instalar o #apt-get install tftpd-hpa

Entrar no arquivo #vim /etc/default/tftpd-hpa para saber o diretório padrão do TFTP onde é armazenado os arquivos de configuração que no caso é #/srv/tftp. E a linha onde se encontra para quais IP's será liberado no caso "o.o.o.o:69".

Criar dentro do caminho indicado lá no default (# /srv/tftp) o arquivo diretório #mkdir pxelinux.cfg e dentro criar o arquivo default e dentro dele conter:

                DISPLAY boot.txt

                DEFAULT squeeze_i386_install

                LABEL squeeze_i386_install
                               kernel debian/squeeze/i386/linux
                               append vga=normal initrd=debian/squeeze/i386/initrd.gz --
               
                PROMPT 1
                TIMEOUT 0

Após, ainda dento do diretório #/srv/tftp/pxelinux.cfg digitar a linha que segue:

url=http://ftp.br.debian.org/debian/dists/squeeze/main/installer-i386/current/images/netboot/debian-installer/i386

Ao digitar a linha acima, voltar ao diretório #/srv/tftp e rodar o comando #wget $url/pxelinux.0

Criar os diretórios #mkdir /debian/squeeze/i386 e dentro rodar os comandos:
#wget $url/linux
#wget $url/initrd.gz

Entar no #/srv/tftp/ e criar o arquivo #vim boot.txt e colocar o texto que segue:

                --- PXE NETBOOT INSTALL ---

                Escolha a imagem que voce quer bootar

                Opcoes

                squeeze_i386_install

Após, adicionar dentro do arquivo de configuração do DHCP SERVER #vim /etc/dhcp/dhcpd.conf logo abaixo a linha de range do DHCP colocar as duas linhas que seguem:

                filename "pxelinux.0";
                next-server 192.168.4.1;


Realize o restart do DHCP (/etc/init.d/isc-dhcp-server restart), TFTP (/etc/init.d/tftpd-hpa restart) e teste a instalação em um cliente.


Vamos a uma apresentação prática, levando em conta que tudo começa no servidor DHCP, lembra, pode ser o que utilizamos anteriormente com o detalhe de ter as nossas chaves comentadas. E na segunda parte do vídeo por volta de 7min e 54sec é a demonstração de como utilizar no cliente, segue o vídeo:



Lembrando que é possível realizar as instalações de aplicativos e após colocar para realizar a instalação, basta ter imaginação e ler um pouco, boa sorte!!!

sexta-feira, 12 de julho de 2013

Configuração de um servidor DHCP em debian 6

============================================
||MONTANDO UM SERVIDOR DHCP PASSO-A-PASSO||
============================================
    Antes de começar lembro a todos, que em tudo que postamos, o que está em vermelho é o que pode/deve ser alterado para o que se adequá a sua realidade, e o que está em azul, é comentário para melhor entendimento, qualquer dúvida fique a vontade para posta-las, e dentro do possível estarei respondendo,.


1º) Fazer a instalação do DHCP # apt-get install dhcp3-server

2º)  Lembrando que o dispositivo de rede do server DHCP é obrigado ter sua interface com o IP fixo. E apontar o IP do servidor DNS dnetro do arquivo # vi /etc/dhcp/dhclient.conf na linha vinte (20).

3º) Entrar no arquivo de configurações do servidor #vim /etc/dhcp/dhcpd.conf e vai mostrar na tela um arquivo de texto enorme, sendo assim alterar o arquivo deixando da forma que segue abaixo:
                                        authoritative;                      ##Define dentro desse servidor DHCP, o que será colocado como defalt para todos os domínios (pois podemos ter vários DHCP em um mesmo servidor), com as suas respectivas reservas de IP, para  serem distribuídas (são os pool's de rede com os RANGE's), sendo o que se encontra até "MAX-LEASE-TIME" o autoritário sobre todos os hosts;
log-facility local7;                      ##Utilize esta opção para enviar mensagens de log do DHCP para  um arquivo de log diferente.
# Default Options for all Subnets                           
default-lease-time -1;                   ##Tempo limite de concessão do endereço IP para padrão para todas as sub-redes;
max-lease-time -1;                      ##Tempo máximo de concessão do endereço IP (limitador) padrão para todas as sub-redes;

ddns-update-style interim;           ##Essa é a parte que foi criada no DNS, copie e cole conforme se encontra aqui nesse arquivo, lembrando de trocar a chave (aqui destacada em vermelho) pela sua.
update-static-leases on;
key ddns-key {
algorithm hmac-md5;
secret esGY3OU/pwYFDsPexvAHnQ==;
}
zone 4.168.192.in-addr.arpa {                                      
primary ns.cstrc.br;
key ddns-key;
}
zone principal.com {
primary ns.cstrc.br;
key ddn-key;
}

 ##Agora sim, dar continuidade ao arquivo do DHCP.

subnet 192.168.4.0 netmask 255.255.255.0 {
                range 192.168.4.128 192.168.4.254;       ##Define o “range” de endereços IPs que estão sendo gerenciados;
                default-lease-time 86400;                          ##Tempo limite de concessão do endereço IP para  os hosts;
                max-lease-time 86400;                              ##Tempo máximo de concessão do endereço IP (limitador);
                option broadcast-address 192.168.4.255##Define o endereço de broadcast que será fornecido aos clientes;
                option routers 192.168.4.1;                      ##Define o endereço do gateway que será fornecido aos clientes;
                option domain-name “principal.com”;        ##Define o domínio em que a máquina está inserida;
                ddns-domainname “principal.com”;                 
option domain-name-servers 192.168.4.1, 10.3.63.253;   ##Define os servidores de nomes que serão fornecidos aos     clientes;
}


host dhcp.principal.com{                                              ##Esse é simplismente um identificador de host que está no DHCP;
hardware ethernet 00:0c:99:13:23:01;                           ##Esse é o MAC address do host que será verificado quando o Host fazer a requisição do  IP para o Servidor, após ser OK será liberado um IP ao mesmo;
fixed-address 192.168.4.3;                                          ##Esse parametro e para dar o IP está  reservado ao Host assim que ele pedir um IP ao servevidor, e sempre será esse IP;
option host-name “dhcp.principal.com”;                        ##Essa linha é para que, assim que o host receber o IP, ele venha a ganhar o nome "dhcp.principal.com" sendo assim ele (PC/Host)  vai estar com esse nome quando entrar na  rede;
ddns-hostname “dhcp.principal.com”;                           ##Essa linha é para que, assim que o host receber o IP, ele venha a ganhar o nome "dhcp.principal.com" sendo assim ele (PC/Host) vai estar com esse nome quando entrar na rede;

}


host mail.principal.com {                                             ##Esse é simplismente um identificador de host que está no DHCP;
hardware ethernet 00:0c:29:d3:e5:ef;                           ##Esse é o MAC address do host que será verificado quando o Host fazer a requisição do IP para o Servidor, após ser OK será liberado um IP ao mesmo;
fixed-address 192.168.4.2;                                         ##Esse parametro e para dar o IP está reservado ao Host assim que ele pedir um IP ao  servidor, e sempre será esse IP;
option host-name  "mail.principal.com";                       ##Essa linha é para que, assim que o host receber o IP, ele venha a ganhar o nome   "mail.principal.com" sendo assim ele (PC/Host)  vai estar com esse nome quando entrar na rede;
ddns-hostname “mail.principal.com”;                          ##Essa linha é para que, assim que o host  receber o IP, ele venha a ganhar o nome "mail.principal.com" sendo assim ele (PC/Host) vai estar com esse nome quando entrar na rede;
}


host ns.principal.com{                                               ##Esse é simplismente um identificador de host que está no DHCP;
hardware ethernet 00:0c:99:23:53:23;                        ##Esse é o MAC address do host que será verificado quando o Host fazer a requisição do IP para o Servidor, após ser OK será liberado um IP  ao mesmo;
fixed-address 192.168.4.1;                                       ##Esse parametro e para dar o IP está reservado ao Host assim que ele pedir um IP ao servidor, e sempre será esse IP;
option host-name “ns.principal.com”;                         ##Essa linha é para que, assim que o host  receber o IP, ele venha a ganhar o nome  "ns.principal.com" sendo assim ele (PC/Host) vai estar com esse nome quando entrar na rede;
ddns-hostname “mail.principal.com”;                         ##Essa linha é para que, assim que o host receber o IP, ele venha a ganhar o nome  "ns.principal.com" sendo assim ele (PC/Host) vai estar com esse nome quando entrar na rede;

}


4º) Agora entrar no arquivo #vim /etc/default/isc-dhcp-server e setar qual será a interface a liberar
 o IP como abaixo:
                # Defaults for dhcp initscript
                # sourced by /etc/init.d/dhcp
                # installed at /etc/default/isc-dhcp-server by the maintainer scripts
               
                #
                # This is a POSIX shell fragment
                #

                # On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
                #       Separate multiple interfaces with spaces, e.g. "eth0 eth1".

                INTERFACES="eth1