sexta-feira, 29 de maio de 2015

Novas Carreiras no Programa de Certificações da Cisco

Olá Pessoal.

Há dois dias (27/05) a Cisco anunciou uma readequação no seu tradicional programa de certificações no sentido de expansão, agora com duas novas carreiras (ou tracks). A nova carreira Cloud terá como foco conceitos relacionados à flexibilidade da computação em nuvem e as soluções da empresa para nuvens públicas, privadas e híbridas. A nova carreira Industrial terá como foco as diferenças entre as redes de computadores tradicionais e as redes industriais com destaque para a tecnologia ProfiNET (compatível com Ethernet IEEE 802.3), além de contemplar tópicos sobre a Internet das coisas (IoT)


Vale lembrar que atualmente as tracks válidas são:

  • Cloud
  • Collaboration (Voice + Video)
  • Data Center
  • Design
  • Industrial
  • Routing & Switching
  • Security
  • Service Provider
  • Wireless

Até setembro/2015 ainda existem as carreiras Voice e Video, no entanto elas serão descontinuadas porque o conteúdo delas já foi direcionado para a recente carreira Collaboration. Por enquanto a track Industrial contempla apenas o nível CCNA e tem como pré-requisito o CCENT. Já a track Cloud contempla os níveis CCNA e CCNP e não possui pré-requisitos. Maiores detalhes sobre essas duas novas carreiras estão previstos para serem lançados em agosto de 2015. Por hora, os interessados em outros detalhes podem acessar a página de certificações da Cisco:


Samuel.

quarta-feira, 27 de maio de 2015

Lançamento do Cisco Packet Tracer Mobile 2.0 (Android)

Olá Pessoal.

Recentemente (22/05) a Cisco comunicou oficialmente o lançamento da nova versão do Packet Tracer Mobile 2.0 para Android. Da mesma forma que as versões anteriores, o aplicativo é suportado em diversos modelos de tablets com processadores ARMv7 e que possuem o sistema Android a partir da versão 4.2.


A nova versão contempla os seguintes recursos, além da correção de vários bugs:

  • Se ajusta melhor em dispositivos com telas menores;
  • Suporte ao Android nas versões de 4.2 a 5.0 em tablets com processadores ARM;
  • Permite a criação de arquivos .pkt a partir "do zero";
  • Baseado na tradicional versão Packet Tracer 6.2;
  • Consegue abrir arquivos das aulas do ambiente Cisco NetSpace;
  • Permite o compartilhamento da topologia via e-mail;
  • Permite o compartilhamento da topologia no Facebook;

O Packet Tracer Mobile v2.0 pode ser baixado de graça a partir do repositório Google Play, basta visualizar o link abaixo ou fazer uma busca por "Cisco Packet Tracer" na aba "Apps" e seguir os procedimentos de instalação.


Abraço.

Samuel.

domingo, 17 de maio de 2015

Configuração do Servidor Web Apache no Linux

Olá Pessoal

Este é mais um daqueles artigos com foco na instalação de serviços em ambientes Linux, já que a temática teve boa aceitação pelos leitores do blog. O objetivo é listar os passos necessários para instalar o Apache, nada menos que o serviço web mais popular do mundo que é responsável pela hospedagem de mais da metade de todas as páginas web publicadas na Internet. Além de suportar requisições HTTP, o Apache também provê segurança e criptografia (via protocolo HTTPS) através do módulo mod_ssl.


Assim como nos artigos anteriores, estou considerando que o servidor está instalado com a distribuição Debian GNU/Linux (ou seus derivados, como o Ubuntu). A primeira etapa consiste na instalação do pacote apache2 para que o Linux possa ser posteriormente configurado como servidor web na LAN (intranet) ou mesmo na Internet. Essa tarefa é simples e rápida através do APT:

root@webserver:/# apt-get install apache2

Uma característica interessante do Apache é que sua estrutura é modular e sua configuração envolve diferentes arquivos que ficam armazenados no diretório "/etc/apache2". Em "/etc/apache2/apache2.conf" são realizadas as configurações básicas do servidor web, inclusive o vínculo com outros arquivos. De maneira geral, o arquivo de configuração está todo comentado e fica fácil entender o que cada linha representa. Na configuração abaixo estão destacados em amarelo os pontos em que fazemos o vínculo com outros arquivos de configuração que estaremos manipulando na sequência. É crucial manter o bloco de diretórios que nega todo acesso ao sistema de arquivos do servidor na sua raíz /.

###--- em /etc/apache2/apache2.conf
(...)
Include ports.conf
(...)
<Directory />
    Options FollowSymLinks
    AllowOverride None
    Require all denied
</Directory>

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
    </Directory>
(...)
IncludeOptional sites-enabled/*.conf

Obs.: Particularmente, não tenho o hábito de liberar acesso ao diretório "var/www" no arquivo de configuração global porque prefiro fazer a liberação do(s) diretório(s) específico(s) do(s) site(s) em um arquivo mais específico, conforme veremos adiante. 

No arquivo "/etc/apache2/ports.conf" são configuradas as interfaces (através do IP) e as portas que irão responder requisições HTTP. O Apache, por padrão, responde requisições vindas na porta 80 de todas as interfaces, mas pode ser personalizado para aceitar requisições IPv4 ou IPv6 em outras portas. Nas linhas comentadas e com destaque amarelo há outras opções para permitir a escuta apenas em interfaces específicas. Outro detalhe é que somente haverá escuta na porta 443 (HTTPS) se seus módulos de segurança estiverem ativos.

###--- em /etc/apache2/ports.conf

Listen 80

#Listen 192.168.0.1:80
#Listen 203.0.113.1:80
#Listen [2001:db8:cafe::1]:80

<IfModule mod_ssl.c>
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

Depois de realizadas as configurações gerais, as configurações específicas dos sites ficam armazenadas em "etc/apache2/sites-available". Para ambientes que irão hospedar múltiplos sites, é recomendada a criação de um arquivo (.conf) com o nome do domínio pelo qual cada site irá responder. Posteriormente criaremos o diretório "/var/www/nome.com.br", além de outros dois sub-diretórios "/var/www/nome.com.br/public_html" e "/var/www/nome.com.br/logs" para armazenar os arquivos do site e os arquivos de log, respectivamente.

Na configuração abaixo trago alguns dos parâmetros mais importantes, embora haja outros. De maneira breve, as linhas abaixo são repsonsáveis por definir, na sequência: o e-mail do responsável pelo site (ServerAdmin); o nome do domínio do site (ServerName); outros nomes/apelidos para o site (ServerAlias); o diretório raíz que será a base para hospedagem dos arquivos do site (DocumentRoot); definir o caminho onde vão ficar os logs de erro do serviço (ErrorLog); o caminho onde vão ficar os logs de acesso ao site (CustomLog); e o caminho para uma página de erro personalizada (ErrorDocument). Vários desses parâmetros são opcionais...

Na sequência o bloco <Directory> define características do diretório onde estarão armazenados os arquivos que compõem o site hospedado. Em síntese, estamos permitindo que o usuário possa navegar/visualizar os diretórios (options indexes), negando que outras regras mais específicas conflitem com essas configurações (allowoverride none) e permitindo acesso aos arquivos (granted).

###--- em /etc/apache2/sites-available/nome.com.br.conf
<VirtualHost *:80>
    ServerAdmin webmaster@nome.com.br
    ServerName nome.com.br
    ServerAlias www.nome.com.br
    DocumentRoot /var/www/nome.com.br/public_html
    ErrorLog /var/www/nome.com.br/logs/error.log
    CustomLog /var/www/nome.com.br/logs/access.log combined
    ErrorDocument 404 /error.htm

    <Directory /var/www/nome.com.br/public_html>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>

Os arquivos dos sites que ficam armazenados em "/etc/apache2/sites-available" não estão publicados, por isso é necessário utilizar a ferramenta a2ensite para ativá-los e publicá-los através da criação de um link simbólico no diretório "/etc/apache2/sites-enabled".

root@webserver:/# a2ensite nome.com.br.config

root@webserver:/# ls -l /etc/apache2/sites-enabled
lrwxrwxrwx 1 root root 38 Mai 14 23:49 nome.com.br.conf -> ../sites-available/nome.com.br.conf

Obs.: Assim como a ferramenta a2ensite é utilizada para ativar e publicar um site, a ferramenta a2dissite pode ser utilizada para remover o link simbólico. 

Respeitando os caminhos informados na configuração anterior, devem ser criados os diretórios para armazenamento da página web. O diretório-raíz da hospedagem deve conter o arquivo padrão index.htm para efetivamente exibir algo aos clientes.

root@webserver:/# mkdir /var/www/nome.com.br
root@webserver:/# mkdir /var/www/nome.com.br/public_html
root@webserver:/# mkdir /var/www/nome.com.br/logs
root@webserver:/# chmod 755 –R /var/www/nome.com.br

Por fim, depois de configurado o servidor, basta iniciar o serviço para validar todas as configurações realizadas anteriormente. A partir de agora o site hospedado no servidor pode ser acessado pelos clientes através de navegadores.

root@webserver:/# service apache2 start
* Starting web server apache2
*

Obs.: Quando um novo serviço é instalado no Debian, ele passa a ser automaticamente inicializado em caso de boot do servidor. A ferramenta update-rc.d pode ser utilizada para remover/adicionar serviços no processo de inicialização automática.

Nesse ponto o servidor web já está devidamente configurado e operando como deveria. Um recurso adicional que pode ser útil é a solicitação de autenticação dos usuários que tentem acessar o conteúdo de um determinado diretório protegido. Vamos imaginar que temos um diretório privado localizado em "/var/www/nome.com.br/public_html/private". Para protegê-lo é necessário editar novamente o arquivo "/etc/apache2/sites-available/nome.com.br.conf" e adicionar as seguintes linhas:

<VirtualHost *:80>
(...) Conteúdo Omitido
<Directory /var/www/nome.com.br/public_html/private>
    AuthName "ACESSO RESTRITO"
    AuthType Basic
    AuthUserFile /etc/apache2/passwd.apache
    require valid-user
</Directory> 

Pronto, agora basta criar o arquivo destacado em amarelo que irá conter a relação de usuários e senhas que podem ter acesso ao diretório protegido. Por fim, iremos recarregar as novas configurações do Apache!

root@webserver:/# mkdir /var/www/nome.com.br/public_html/private
root@webserver:/# touch /etc/apache2/passwd.apache

root@webserver:/# htpasswd /etc/apache2/passwd.apache nome_usuario
<informar senha>

root@webserver:/# service apache2 reload

Samuel.