23/03/2019

Configurando portas em um switch

     Primeiramente, para configurarmos uma porta é necessário acessá-la, utilizando para tal a sua identificação [tipo_de_interface] [interface], sendo estas informações variáveis de acordo com o equipamento utilizados. 
     Nos exemplos são utilizados switches gigabit e por isso o tipo de interface é gibabitEthernet. Outros tipos poderiam ser também fastEthernet ou tengigabitEthernet.

Porta em modo access

     Uma porta de acesso pode pertencer somente a uma VLAN por vez, com exceção as porta conectada a um telefone IP, que no entanto necessitam de configurações adicionais.

hostname(config)# interface gigabitEthernet 1/0/7
hostname(config-if)# description descricao da porta
hostname(config-if)# switchport mode access
hostname(config-if)# switchport access vlan 5

     O comando switchport mode access é opcional, mas altamente recomendável como prática de segurança, pois com esse comando a interface é alterada para o modo de acesso permanente e obriga o tráfego tagueado. Para atribuir uma VLAN a várias portas utilize a palavra-chave range seguido das atribuições.
     O comando switchport access vlan define qual VLAN será utilizada na porta em questão e força a criação de uma VLAN se ainda não houver nenhuma no switch. 

Porta em modo tronco

     Um tronco de VLAN é um link de camada 2 OSI entre dois switches que transporta o tráfego de todas as VLANs (a menos que a lista de VLANs permitidas seja restrita manual ou dinamicamente). Para permitir links de tronco, configure as portas em cada extremidade do link físico com os conjuntos de comandos paralelos switchport mode trunk.

     Com esse comando, a interface é alterada para o modo de entroncamento permanente. A porta entra em uma negociação de Dynamic Trunking Protocol (DTP) para converter o link em uma trunk, mesmo que a interface de conexão não concorde com a alteração.
     Sempre configure ambas as extremidades de um link de tronco com as mesmas configurações, a fim de evitar erros ou falhas na comunicação. Ainda, por padrão, todas as VLANs são permitidas em um link de tronco.

hostname(config)# interface gigabitEthernet 1/0/7
hostname(config-if)# description descricao da porta
hostname(config-if)# switchport mode trunk

Limitação de vlans em portas tronco

      Para permitir que somente determinadas vlans trafeguem em uma porta já configurada em modo tronco, basta utilizar o argumento allowed vlan, conforme o exemplo a seguir, onde são permitidas as vlans 10 e 20 e o intervalo de 30 à 40.
hostname(config)# interface gigabitEthernet 1/0/7
hostname(config-if)# switchport trunk allowed vlan 10,20,30-40
     Para adicionar novas vlans as permitida
hostname(config-if)# switchport trunk allowed vlan add 102
     Para remover uma vlan
hostname(config-if)# switchport trunk allowed vlan remove 102 
     Para remover todas as vlans e permitir todoas novamente.
hostname(config-if)# no switchport trunk allowed vlan  .

Link aggregation

     Ethernet bonding ou port channel é uma técnica usada para o acoplamento de dois ou mais canais Ethernet em paralelo para produzir um único canal de maior velocidade e/ou aumentar a disponibilidade e redundância desse canal.
     Para a configuração de um link aggregation, preferencialmente não se deve estar conectado a porta ou portas que se deseja configurar. Inicialmente deve-se criar um port-channel com um id não utilizado, que varia de 1 a metade das portas existentes no switch:
hostname(config-if)# interface port-channel 5
     Em seguida, é necessário aplicar a configuração de channel-group nas portas que se deseja configurar:
hostname(config-if)# interface range gibabitEthernet g1/0/15-16
hostname(config-if)# channel-group 5 mode on
     O modo de utilização do channel-group permite configurações adicionais de alén do on, tais como :
  • active: habilita LACP incondicionalmente. Um exemplo deste uso é em configurações de servidores de virtualização como XenSever;
  • passive:   habilita LACP somente se um dispositivo LACP for detectado;
  • auto:  habilita PAgP somente se um dispositivo com PAgP for detectado;
  • desirable: habilita PAgP incondicionalmente;
  • on: habilita somente etherchannel.
     E por fim, retornar ao port-channel e aplicar as configurações desejadas para o agrupamento de links:
hostname(config)# interface range gibabitEthernet g1/0/15-16 
hostname(config-if)# description descricao do LA
hostname(config-if)# switchport mode trunk 
     A configuração deve ser a mesma em ambos os lados do LA para evitar que ocorram problemas como portas desabilitadas ou em estado de erro. 

Referências



09/03/2019

Gerenciamento de VLANs

     Para criação de uma VLAN, é necessário definir um identificador (ID) e um nome únicos, sendo importante mater a atenção pois dependendo do equipamento, nenhum alerta é exibido, podendo resultar em falhas de funcionamento. Para criação de uma VLAN são necessários os seguintes comandos:
switch# conf t
switch(config)#vlan 600
switch(config-vlan)#name [nome_da_vlan]
switch(config-vlan)#end
switch#
     Além de inserir um único VLAN ID, é possível inserir uma série de IDs da VLAN separados por vírgulas ou um intervalo de IDs de VLAN separados por hífens usando o comando vlan vlan-id. Por exemplo, use o seguinte comando para criar as VLANs 10, 20,31,32,33,34,35:
switch(config)#vlan 10, 20, 31-35
     A definição 31-35, cria as dentro do intervalo definido, sendo criada com o nome padrão VLAN0ID. A inclusão do comando no a frente do comando de criação, remove todas as VLANs criadas.
switch(config)#no vlan 601, 602, 605-610
     O comando show vlan permite que sejam visualizadas as VLANs existentes, bem como quais portas cada uma está atribuída. As portas que não possuem nenhuma atribuição, são mantidas na VLAN Padrão (ID 1), conforme figura abaixo.
Saída com comando show vlan

     O comando show vlan pode também ser complementado com outras palavras chaves tais como:
  • show vlan name [NOME]: exibe informações da vlan [NOME]
  • show vlan id [ID]: exibe informações da vlan [ID]
     A criação de VLANs em todos os equipamentos da rede, também pode ser automatizada, através do protocolo GRVP (Generic Vlan Registration Protocol), ou de protocolos proprietários, os quais devem ser utilizados com uma atenção especial, visto que permite também a exclusão automatizada, resultando em problemas de conectividade.

16/02/2019

Raspberry - configuração básica

     Na última postagem compilei informações sobre algumas das formas de instalar um SO no Raspyberry. Agora descrevo algumas configurações que foram realizadas.

SSH

     Nas instalações do raspbian  que realizei, foi necessário instalar o openssh-server, já na versão pré configurada do ubuntu 16.04, a instalação não foi necessária. Mas de qualquer forma, o processo incluindo a instalação do pacote será:

1. Instalar o openssh-server
apt-get install openssh-server
2. Alterar a porta caso deseje
sed -i 's/#Port 22/Port 4242/' /etc/ssh/sshd_config
3. Habilitar a inicialização com o sistema

update-rd.c ssh enable
4. Reiniciar e testar o acesso.

Transmission Web

      Versão do cliente BitTorrent Transmission que roda em um servidor e pode ser gerenciada por uma interface web ou ou cliente instalado em outro computador.

1. Instalação
apt-get install transmission-daemon
2. Criação do diretório
mkdir /media/dados/torrents
chmod -R 775 /media/dados/torrents
chown -R [user_local]:debian-transmission /media/dados/torrents
usermod -G sudo,debian-transmission [user_local]

3. Configuração básica
service transmission-daemon stop
vim /etc/transmission-daemon/settings.json
...
"download-dir": "/media/dados/torrents",
"incomplete-dir-enabled": false,
"rpc-authentication-required": true,
"rpc-bind-address": “0.0.0.0″,
"rpc-enabled": true,
"rpc-password": "[senha]",
"rcp-port": 9091,
"rpc-username": "[user_local]",
"rpc-whitelist-enabled": false, 
...
service transmission-daemon start
4. Testar acesso em um computador cliente
  • Via navegador: http://192.168.1.2:9091
  • Via cliente remoto: 
    • apt-get install transmission-gtk e,
    • acessar trasmission-gui
    • configurar e conectar

SAMBA

     Compartilhamento de arquivos através do protocolo SMB, permitindo compartilhar os arquivos em rede.

1. Instalar os pacotes necessários
sudo apt-get install samba samba-common-bin
2. Adicionar o usuário ao samba
smbpasswv -a [user_local]
3. Configuração básica que necessitam ser alteradas
vim /etc/samba/smb.conf
....
workgroup=[grupo_dominio]
netbios name=[hostname]
....
; o ponto e virgula comenta a linha
[privado]
    comment = compartilhamento privado
    browseable = no
    path = /media/dados/privado
    guest ok = no
    writeable = yes
    public = no
    create mask = 775
    valid user=[usuario_valido]

   valid group=[grupo_usuario_valido]
 
[publico]
   comment = compartilhamento público

   browseable = yes
   path = /media/dados/publico
   guest ok = yes
   read only = yes
   writeable = no
   public = yes   

....
service smbd restart
     O que faz cada uma das opções nos compartilhamentos:
  • [nome]: nome do compartilhamento
  • comment: comentário
  • browseable : permite ou impede a descoberta de rede
  • path: caminho do diretório compartilhado. Se estiver incorreto, o compartilhamento será exibido mas não acessível.
  • guest ok: permite acesso com usuário anonimo
  • read only: se o mesmo é somente para leitura
  • writeable: permite que seja editável e tem prioridade sobre a configração read only
  • public: define se todos podem acessar o compartilhamento 
  • create mask: mascara com a qual o compartilhamentos será criado
  • valid user: usuário válidos para acessar
  • valid group: grupo válidos para acessa
    • em ambas as configuraçoes valid* o usuário deve ser adicionado com smbpasswd -a [login]
4. Testando o acesso
  • smb://192.162.1.2/publico
  • smb://192.162.1.2/privado

Referências

09/02/2019

Raspberry - Instalação de SO

     O Raspiberry Pi suporta uma gama de sistemas operacionais, estando dentre as oficiais, o Windows 10 IOT Core, Ubuntu e Raspbian (distribuição dedicada à Raspberry Pi, baseada no Debian). 
     As formas de instalação também são variadas, podendo ser realizado através
do:
  • NOOBS (New Out Of the Box Software): pacote que contem várias versões do SO com uma interface para instalação.
  • GNOME Disks:  é um front-end gráfico do udisks incluido no pacote gnome-disk-utility
  • Linha de comando 
     A instalação será realizada a partir de um computador com SO Linux e será utilizado o SO Ubuntu Server 16.04, podendo ser utilizados outros SOs Linux compatíveis. Para instalção do Windows ou a partir de ou SO, existem links nas referências.
     Após a instalação, documentei algumas configurações adicionais em um outro post.

Requisitos    

Instalação via linha de comando

1. Descobrir o ponto de montagem do cartao SD e desmontar
    df -h
    umont /dev/mmcblk0p1
    umont /dev/mmcblk0p2
2. Formatar o cartao de memoria em FAT
    mkfs.vfat -I -F 32 /dev/mmcblk0
3. Descompactar a iso em um diretorio qualquer e gravar no cartão
    unxz ubuntu-16.04-preinstalled-server-armhf+raspi3.img.xz
    dd bs=4M if=ubuntu....raspi3.img of=/dev/mmcblk0 status=progress conv=fsync

Instalação via Gnome Disk

     Possibilidade de instalação gráfica que já vem por default no ubuntu ou mint, mas caso necessário, a instalação pode ser realizada como descrito a seguir:
sudo apt-get install gnome-disk-utility

 Instalação
  1. Com o  Gnome Disks aberto, selecione o disco que será formatado e no canto superior esquerdo, abra o menu e escolha restaurar imagem no disco
  2. Na janela aberta, clique para buscar a imagens a ser instalada
  3. Na janela aberta, escola a ISO desejada
  4. Inicie o processo de  gravação
  5. Apenas confirme que a imagem será restaurada
  6. Aguarda alguns minutos para finalizar
  7. Remova o dispositivo no  mesmo menu onde iniciou o processo de restauração.


Usuário e senha

Após a instalação, o acesso poder ser realizado com os dados a seguirm de acordo com o SO instalado.
  • Ubuntu 16.04 server : usuário ubuntu e senha ubuntu
  • Raspbian server: usuário pi e senha raspberry

Outras instalações

Referências