quinta-feira, 11 de agosto de 2016

Device Online

DLNA / Anycast / UPnP / Player DLNA - Device Online

Após comprar um aparelho Anycast, me deparei com a situação de não encontrar nenhum player para Linux onde consegue-se transmitir por DLNA para meu Anycast.

Depois de dias perdidos vasculhando a internet, acabei entrando na loja Web Store do Chrome e, após algumas horas testando alguns programas, encontrei o Device Online, o mesmo funcionou de primeira.

Fica a dica para quem precisar de um Player DLNA para Linux, ou outro Sistema que aceite o Google Chrome.

Link para o programa:

Configurando hostname, rotas, gateway e IP em Red Hat 6

Configurações

Configurando Hostaname e Gateway

Acesse o diretório abaixo para configurar o hostname e gateway da nossa rede:

# vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=server
GATEWAY=192.168.0.254

Configurando IP

Vamos acessar o diretório que contém os arquivos de rede:

# cd /etc/sysconfig/network-scripts/

Liste, para verificar os arquivos existentes:

# ls
ifcfg-eth0
ifcfg-lo
ifdown-ippp
ifdown-ppp
ifup
ifup-ippp
ifup-plusb
ifup-sit
net.hotplug
ifcfg-eth1
ifdown
ifdown-ipv6
ifdown-routes
ifup-aliases
ifup-ipv6
ifup-post
ifup-tunnel
network-functions
ifcfg-eth2
ifdown-bnep
ifdown-isdn
ifdown-sit
ifup-bnep
ifup-isdn
ifup-ppp
ifup-wireless
network-functions-ipv6
ifcfg-eth3
ifdown-eth
ifdown-post
ifdown-tunnel
ifup-eth
ifup-plip
ifup-routes
init.ipv6-global
route-eth1


No meu caso, já existe o arquivo da eth0/eth1/eth2/eth3, então vamos editar o arquivo ifcfg-eth0. Caso não exista esses arquivos, com o comando vi iremos criar um novo, com as seguintes configurações:

# vi ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.0.18
NETMASK=255.255.255.0
ONBOOT=yes
GATEWAY=192.168.0.254
TYPE=Ethernet
#HWADDR=A9:1G:67:H9:75:BP

Dependendo, para que você está usando a sua placa de rede, é opcional setar ou não o Mac Address nas configurações da placa, pois nessa versão da Red Hat, o mesmo é gerenciado pelo arquivo 70-persistent-cd.rules, que está no seguinte diretório:

cat /etc/udev/rules.d/70-persistent-net.rules


# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x10bc (e1000e)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="a9:1g:67:h9:75:bp", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x14e4:0x1639 (bnx2)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="a7:3g:26:1g:b3:48", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x14e4:0x1639 (bnx2)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="e4:1f:13:1e:3a:86", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

# PCI device 0x8086:0x10bc (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:17:dc:a5:d6", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

Em casos de máquinas virtuais clonadas com o HWADDR, setado no arquivo de redes, sempre dá problema. Para solucionar, ou você arruma manualmente o arquivo acima, ou zera o arquivo e dá um restart.

Configurando Rota

Caso já tenha algum IP configurado e deseja alterar o Gateway Default, dê os seguintes comandos.

Liste as rotas:

# ip route show
Ou:
# netstat -rn

Vamos adicionar a rota manualmente com:

route add default gw <IP_DO_GATEWAY_DEFAULT>

Exemplo:

# route add default gw 192.168.10.254

Para deletar o antigo, dê o comando:

route dell default gw <IP_DO_GATEWAY_DEFAULT_QUE_DESEJA_DELETAR>

Exemplo:

# route dell default gw 192.168.0.254

Caso deseje adicionar rota para uma rede, dê o comando:

route add -net <IP_DA_REDE/<MASCARA_DE_REDE> gw <GATEWAY_DE_SAIDA> dev <INTERFACE_DO_GATEWAY_DE_SAIDA>

Exemplo:

# route add -net 192.168.10.0/24 gw 192.168.0.254 dev eth0

Caso deseje adicionar uma rota ponto a ponto:

route add <IP_DESEJADO> netmask <IP_DA_MASCARA_DE_REDE> gw <GATEWAY_DE_SAIDA> dev <INTERFACE_DO_GATEWAY_DE_SAIDA>

Exemplo:

# route add 192.168.10.32 netmask 255.255.255.0 gw 192.168.0.254 dev eth0

Lembrando que, ao adicionar a rota manualmente, caso o servidor reinicie, as rotas não ficarão salvas, é necessário adicionar no arquivo de persistência:

# vi /etc/sysconfig/network-scripts/route-eth0

192.168.10.0/24 via 192.168.0.254 dev eth0
192.168.10.32 via 192.168.0.254 dev eth0

squid.conf "Arquivo simples do Squid"

http_port 3128
visible_hostname gnu


cache_mem 456 MB
maximum_object_size_in_memory 10 MB
maximum_object_size 700 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir aufs /dev/shm 300 20 512 
cache_access_log /var/log/squid3/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

#acl manager proto cache_object
#acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT


http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

# Palavras Liberadas:
acl permitidas url_regex -i "/etc/squid3/liberadas"
http_access allow permitidas

acl bloqueados url_regex -i "/etc/squid3/bloqueados"
http_access deny bloqueados


acl redelocal src 192.168.0.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all

Acessar, ler e escrever em partições Linux no Windows

Introdução

Este artigo não se aplica ao particionamento para a instalação do Windows, só se aplica para partições onde serão guardados e/ou salvos arquivos pessoais.

Uma das maiores dúvidas de usuários quanto ao GNU/Linux, é sobre qual o melhor sistema de arquivos para usar em dual boot com o Windows.

Até bem pouco tempo atrás, era comum usuários mais experientes no Linux sugerirem a estes novos usuários que fizessem partição Windows no sistema FAT32. Um dos motivos, era que o Linux não se dava bem com NTFS. Hoje em dia, o Linux já se dá melhor com NTFS, mesmo assim, ainda esbarra na principal questão... as permissões.

É sabido que mesmo em Fat32, o Windows não tem as mesmas permissões que tem em partições Linux. Para contornar essa questão, foi criado o projeto Ext2fsd, que é um programa que permite ao Windows não só enxergar partições Ext, como também ler e escrever nelas.

Com esse artigo, passo a afirmar, categoricamente, a resposta para a pergunta.

PERGUNTA: em qual formato faço a partição com meus arquivos, para usar tanto no Linux quanto no Windows?

RESPOSTA: Ext4

Bom, vamos ao que interessa realmente, o tal programinha mágico.

Download, instalação e configuração

Homepage do projeto Ext2fsd:
Para baixar o programa Ext2fsd:
Clique em "Download Ext2Fsd-0.68 (2.7 MB)" para baixar (a versão pode ser outra, no momento em que você estiver lendo este artigo).
A instalação do programa é muito simples, praticamente, é toda feita na base do "next ... next", só atenção para não desmarcar "nenhuma" caixa de seleção até o final da instalação.
Se tudo correu bem, seu programa abrirá ao fim da instalação, já mostrando suas partições.

Essa é a janela mostrando minhas partições:
Agora, basta clicar duplo em uma partição Linux, que abrirá a caixa de configuração igual à mostrada abaixo.
  • Selecione a caixa: Mountpoint for fixed disk, need reboot
  • E escolha uma letra para a partição. Clique em: Apply

Agora é só repetir estes passos para outras partições Linux, caso a(s) tenha.

Considerações finais

Então, é isso pessoal. Ao fim do processo, suas partições Linux já estarão disponíveis em "Meu computador" como uma partição qualquer como as imagens mostradas abaixo.
Obs.: É altamente desejável que você reinicie o computador antes de usar as partições.

Agora todas as suas partições estarão disponíveis, tanto no Linux, quanto no Windows e com a vantagem de ter permissões de "root" em ambos os sistemas.

NOTA: cuidado ao alterar pastas ocultas e/ou do sistema com o Windows, isso poderá quebrar teu Linux.

Fonte:
https://www.vivaolinux.com.br/artigo/Acessar-ler-e-escrever-em-particoes-Linux-no-Windows

segunda-feira, 18 de julho de 2016

Mais de 4 placas de rede em uma VM no VirtualBOX

Imagine a situação de, em seu ambiente de TI, possuir um servidor de arquivos ou web para vários domínios, cada um com uma subnet (faixa de IP) diferente, e necessitar de oferecer serviços com um único servidor.

Nesta situação, ao invés de configurar diversos "alias" de IP para uma única interface, uma solução interessante seria definir uma interface própria para cada domínio (subnet) que seu servidor atendesse!

Muitos não sabem, mas é possível ter em uma máquina virtual com mais de 4 interfaces de rede no VirtualBOX!

Pelo modo gráfico, a interface de gerenciamento do VirtualBOX só exibe 4 abas de configuração de adaptadores de rede. Mas, dependendo do chipset que for utilizado na VM, será possível configurar até 36 interfaces!

Isso mesmo: 36!

Só há um problema: Não será possível visualizar todas as interfaces pela janela do modo gráfico do VirtualBOX. Apenas 4 adaptadores de rede ficarão disponíveis para configuração (e 8 visíveis). As outras 32 interfaces, você terá que gerenciá-las pela linha de comando! Veja foto abaixo.



O chipset PIIX3 permite o uso de até 8 interfaces. Enquanto que, o chipset ICH9, permite até 36 interfaces!

Primeiramente, devemos alterar o chipset que é definido por padrão na criação da VM, que é oPIIX3, para o ICH9. Para isto, você deverá executar o comando vboxmanage, para modificar este parâmetro de sua VM. 

No exemplo, minha VM é identificada pelo nome "Debian8-FileServer-1".  Portanto, o comando seria:

marciocbravim@desktop01:~$ vboxmanage modifyvm Debian8-FileServer-1 --chipset ich9

Para realizar esta tarefa na linha de comandos do Windows (cmd) execute o "Prompt de Comando" (Menu Iniciar > Todos os Programas > Acessórios >  Prompt de Comando) e digite:

C:\Users\Marcio Bravim> cd "C:\Program Files\Oracle\VirtualBox" 
C:\Program Files\Oracle\VirtualBox> .\VBoxManage.exe modifyvm Debian8-FileServer-1 --chipset ich9

Caso queira modificar esta opção pelo modo gráfico, na janela de configuração da máquina virtual, vá no item Sistema e, na aba Placa-Mãe, altere o chipset da VM (veja foto abaixo). 

E, para criar uma única interface pela linha de comando, execute o comando abaixo:

marciocbravim@desktop01:~$ vboxmanage modifyvm Debian8-FileServer-1 --nic1 bridged --bridgeadapter1 eth0 --nictype1 82540EM --cableconnected1 on --nicspeed1 1000000

Para criar com um único comando as 36 interfaces possíveis com o chipset ICH9, podemos utilizar uma instrução de laço de repetição, o for. Para tanto, digite:

marciocbravim@desktop01:~$ for VAR in `seq 1 36` ; do vboxmanage modifyvm Debian8-FileServer-1 --nic${VAR} bridged --bridgeadapter${VAR} eth0 --nictype${VAR} 82540EM --cableconnected${VAR} on --nicspeed${VAR} 1000000 ; done

Para realizar esta tarefa na linha de comandos do Windows, digite:

C:\Users\Marcio Bravim> for /l %x in (1, 1, 36) do "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyvm Debian8-FileServer-1 --nic%x bridged --nictype%x 82540EM --cableconnected%x on --nicspeed%x 1000000

NOTA: Depois do "for", o caracter é "barra-éle"


#=------
Leu? Deixe um comentário! E Indique! Obrigado!!!
#=------


AUTOR:
Marcio C. Bravim (RJ) – Certificado LPI 3 e RHCE
Consultor Linux / Instrutor
marcio.cbravim@yahoo.com.br / @marciocbravim 
Whatsapp (21) 96488-6449 
http://marciocbravim.blogspot.com.br/2016/07/mais-de-4-placas-de-rede-em-uma-vm-no.html

terça-feira, 24 de maio de 2016

Configurando Interface e desabilitando ipv6 no Debian 8 Jessie

Mudar para o endereço IP estático, se você usar o Debian como um servidor.


root@dlp:~#
vi /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
# comment out

#
iface eth0 inet dhcp
# add follows

iface eth0 inet static
address 10.0.0.30
# IP address

network 10.0.0.0
# network address

netmask 255.255.255.0
# subnet mask

broadcast 10.0.0.255
# broadcast address

gateway 10.0.0.1
# default gateway

dns-nameservers 10.0.0.10
# name server
root@dlp:~#
systemctl restart ifup@eth0

Desabilitar IPv6 caso necessário.

root@dlp:~#echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf

root@dlp:~#sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1

root@dlp:~#ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0c:29:9d:56:58
          inet addr:10.0.0.30  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:346 errors:0 dropped:0 overruns:0 frame:0
          TX packets:263 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:33839 (33.0 KiB)  TX bytes:32449 (31.6 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

segunda-feira, 16 de maio de 2016

Montando partições automaticamente

Entendendo o FSTAB

Quem usa Windows e Linux no mesmo computador (dual boot) com certeza já usou o comando mount para poder "enxergar" os arquivos do Windows no Linux. Com o passar do tempo fica muito cansativo ter que ficar digitando o mesmo comando toda vez que o Linux é iniciado. Seria muito bom se o sistema de arquivos fosse montado automaticamente na inicialização e com o arquivo fstab isso é possível.

O arquivo /etc/fstab é responsável pela entrada de partições e/ou dispositivos que possuam os sistemas de arquivos. Abaixo segue um exemplo do arquivo /etc/fstab:

# cat /etc/fstab

/dev/hda3     swap         swap       defauts                  0   0
/dev/hda2     /            reiserfs   defaults                 0   0
/dev/fd0      /mnt/floppy  auto       defaults,user,noauto     0   0
/dev/cdrom    /mnt/cdrom   iso9660    defaults,user,noauto,ro  0   0




Coluna 3 - Curto e grosso, é onde informamos o sistema de arquivo do disco/partição. Temos disponíveis "algumas" opções:

adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs.

Para mais tipos de sistema e detalhes, veja a página de manual do mount:

$ man mount

Uma ressalva a fazer é a opção "auto", que diz para o sistema automaticamente detectar o sistema de arquivo presente na partição.
É possível excluir ou adicionar partições e/ou dispositivos seguindo os seguintes significados das colunas:

1ª Coluna
Especificação do arquivo do dispositivo que será montado.


2ª Coluna

É o local (diretório) onde o dispositivo especificado na 1ª será montado, Ex:

Disco 1: /boot, /, /var e o Swap
Disco 2: /home
Disco 3: /backup
Disco 4: /backup2 


3ª Coluna
É o tipo de sistema sistema de arquivos.

    ext2 - Sistema de arquivos do Linux;
    ext3 - Sistema de arquivos journaling (ext2 + journaling);
    reiserfs - Sistema de arquivos journaling do Linux;
    msdos - Sistema de arquivos MS-DOS;
    vfat - Sistema de arquivos Win9x;
    ntfs - Sistema de arquivos Win2k, XP;
    iso9660 - Sistema de arquivos do CD-ROM;
    auto - Detecta o tipo de sistema automaticamente.

e outros:

adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs.


 
Para mais tipos de sistema e detalhes, veja a página de manual do mount:
$ man mount

4ª ColunaA coluna 4 descreve as opções de montagem da partição/disco associadas ao sistema de ficheiros. Aqui podemos fazer várias configurações afim de personalizarmos nosso sistema.

Uma opção muito utilizada por administradores de sistemas é a opção de bloquear o uso da unidade de disquetes e cdrom (não que eu seja de acordo, sou a favor da liberdade).

Vamos as opções:

  • auto, noauto - Diz para o sistema se deve ou não montar automaticamente. Se colocar a opção "auto", o sistema irá montar no boot, se estiver "noauto", terá que montar o disco/partição manualmente. Default: auto.
  • user, nouser - Aqui é onde permitimos ou não os usuários montarem o disco/partição. Colocando "user", qualquer usuário consegue montar, se colocarmos "nouser", apenas o super usuário conseguirá montar (root). Default: user.
  • exec, noexec - Permite ou não a execução de binários no sistema de arquivos. Default: exec (imagine que, por engano, coloque noexec no /).
  • rw - Monta o sistema de ficheiros com a opção Read-Write, ou seja, leitura e escrita.
  • ro - Monta o sistema de ficheiros com a opção Read-Only, ou seja, somente leitura.
  • sync, async - Diz ao sistema como deve ser a sincronização de dados (Input/output). Explicando melhor, diz como o sistema deve proceder quando tem que escrever no disco, se deve guardar em memória primeiro, aguardar confirmação e então escrever ou se escreve directamente (fisicamente) no disco/partição/disquete.

    Um exemplo, são as "pendrives", quando você escreve um documento de texto na sua pen, se estiver a opção sync, o sistema escreve na hora o documento na pen, se estiver async, o sistema apenas escreve o documento quando você for desmontar a pen. O grande problema coloca-se quando o utilizador esquece de desmontar o drive. Default: async.
  • suid, nosuid - Habilita/desabilita o bit de set-user-identifier ou set-group-identifier.
  • defaults - Diz ao sistema para carregar as opções padrão, que são: rw, suid, dev, exec, auto, nouser e async.

5ª Coluna


Dump para o dispositivo.Esta coluna é a opção de dump do sistema, que nada mais é do que um utilitário de backup do sistema. O dump "lê" aqui o número e decide se o sistema deve ou não ser feito backup. Se estiver 0 (zero), o dump simplesmente ignora o disco/partição. 

    0 - Não faz dump;
    1 - Faz dump.


6ª Coluna
Verificação e reparo do dispositivo.
Esta coluna é utilizada pelo fsck para a verificação dos discos/partições. Partições/discos de sistema normalmente tem esta opção como 1, outras partições do sistema como 2. Sistemas de arquivos no mesmo disco são verificados sequencialmente, enquanto que sistemas de arquivos em discos diferentes são verificados ao mesmo tempo, utilizando a função de paralelismo (se o hardware permitir). Se colocar esta opção como 0 (zero), o fsck conclui não ser necessário a verificação aqui.     

0 - Não faz a verificação e reparo.
1 - Faz a verificação e reparo.
 

Montando os dispositivos

Vamos imaginar o seguinte cenário: você tem o Windows e o Linux instalados no seu HD de 40GB, teoricamente você teria 3 partições: 1 ntfs ou fat para Windows, 1 ext2, ext3 etc e 1 swap, ambas para o Linux. E se quisermos montar a partição Windows no Linux automaticamente toda vez que ele for iniciado?

Primeiro crie um diretório que será usado para montar o dispositivo:

# mkdir /mnt/windows

Agora acrescente a seguinte linha no /etc/fstab:

mount /dev/hda1  /mnt/windows    ntfs   defaults,user,auto    0  0

Essa linha monta o conteúdo do hda1 (c:) dentro do diretório /mnt/windows automaticamente, que pode montado/desmontado por qualquer usuário do sistema. Detalhe: quando o tipo de partição for ntfs, será necessário colocar o rw na 4ª coluna, caso contrário você não poderá criar ou excluir arquivos e/ou pastas. Ex:

mount /dev/hda1    /mnt/windows    ntfs    defaults,user.rw,auto    0    0 
Exemplo do meu fstab:
cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

#Entry for /dev/sda6 :
UUID=7ef92b10-48c6-44c3-b5fd-5056f3774ea0    /    ext4    errors=remount-ro    0    1
 
#Entry for /dev/sda3 :
UUID=2CA42702A426CE60    /media/Dados    ntfs-3g    defaults,locale=pt_BR.UTF-8    0    0
 
#Entry for /dev/sda5 :
UUID=8f22e3df-9de3-4a71-a4a1-99cfea9ee734    none    swap    sw    0    0
Comando para descobrir o UUID do Disco:
ls -lh /dev/disk/by-uuid/*
ou
sudo blkid