Archive for category Linux

Sete assuntos para acompanhar em 2013 sobre Linux Embarcado

Li hoje um artigo interessante sobre Linux embarcado publicado na Linux.com. Neste artigo, eram discutidas sete linhas de evolução atual do Linux na área de sistemas embarcados, a saber:

  • Linux Continues Advance on RTOSes (queria ver o patch PREEMPT RT funcionando para qualquer plataforma …)
  • Embedded Linux Opens Up
  • Android Goes Embedded (pra mim, existe vida além de tablet e smartphones, muito espaço pro Android em GPSs, media centers, geladeiras, Smart TVs, in-vehicle infotainment, etc)
  • Linux Cleans Up its ARM Act
  • Intel Aims for Android, 22nm Atoms, and M2M
  • Autos Don a Tux (tá pra existir ramo mais conservador e sensível ao custo do que estas automotivas, tenho meus receios aqui)
  • Linux Mobile Platforms Arise (conversinha antiga, nhein ?)

Independente de concordar com todos os pontos, como eu mesmo não concordo, vale a pena uma lida.

De tudo, gostaria de ter uma SmartTV Linux com preço baixo, comunidade grande e possibilidades de personalização e modificação, loja de aplicativos, que lesse rmvb e gravasse em padrões abertos, rodasse Netflix direito, suportasse teclado e mouse USB sem pegadinhas, um navegador que abrisse tudo, UPnP decente, acesso a DVD externo com opção de rippar, controle sem fio via BLE ou algo que não seja direcional como infrared, serviços de download em background para torrents e podcasts, preferências por perfis de usuário personalizadas com face detection, detecção de presença para ligar automaticamente no canal pré-definido, suporte a emuladores de jogos e controles comerciais, câmera para conferência, reconhecimento de voz para controle e chats, integração com alarmes residenciais, GPS para programas de tempo/mapas/notícias, etc. Não é pedir muito, é ? :)

Original aqui.

PS: ok, deixo entrar a característica de “redes sociais” … inferno moderno :)

3 Comentários

Gerência de Redes com SNMP – Apostila

Hoje tive o prazer de trocar uma mensagem com o André Déo, que tem um material muito profundo sobre o tema gerência de redes usando SNMP. O André é também o criador da comunidade Zabbix Brasil, um software livre bastante usado para este propósito (mais detalhes aqui).

Se ficou curioso, não deixe de ler o post dele e baixe o material da apostila, disponível neste link.

zabbixbr

,

Deixe um comentário

Administração de Redes Linux – Material didático

Uns dois ou três anos atrás eu dei algumas aulas sobre administração de redes Linux mas me esqueci completamente de compartilhar este material. A seguir, o material que eu produzi, dividido em 3 partes e com exercícios. Cada parte foi originalmente planejada para durar um dia. Talvez algumas parte estejam desatualizadas. Caso você queira os originais para melhorar isso, entre em contato.

Também estou colocando alguns exercícios sobre Bash que já usei como material de ensino. Não quero morrer com nada disto. A licença é “CC BY-NC-SA 3.0“.

, , , ,

3 Comentários

Se não te dão, que tal ir buscar ?

Faz tempo que não fazia nenhum tipo de hacking e, coincidentemente, andei com um problema onde precisava entender o que o webserver de um equipamento fazia em determinada situação. Parecia existir um comando oculto não disponibilizado pela API do equipamento e decidi olhar por mim mesmo, já que a empresa se negou a me mandar a senha de root do equipamento. Antes de mais nada, não esperem nomes aqui ou posso ter um problema de contrato.

Munido do bom e velho espírito hacker, fiz o seguinte:

1) Baixei uma imagem do firmware do fabricante. Geralmente existe alguma imagem de atualização no site. Um simples registro no site, em geral, já te dá acesso a isso.

2) Baixei o binwalk, já comentado pelo Alan e para o qual eu gerei um .deb, para faciliar.

3) Rodei o binwalk e pude perceber que era uma composição de um uboot+uboot parameters+kernel linux+imagem do sistema em JFFS2. Nada de inovador, apenas o já esperado. Bom pra mim. Os valores de offset abaixo (número à esquerda) são fictícios, já que não posso dar os detalhes deste firmware:

DECIMAL         HEX             DESCRIPTION
----------------------------------------------------------------------------
 4660          0x1234        LZMA compressed data ....
 9029          0x2345        uImage header, header siz ....
 13398         0x3456        gzip compressed ....
 17767         0x4567        JFFS2 filesystem ....
....

4) Nenhum mistério. E o que eu precisava,o root file system, estava em JFFS2, esperando minha extração, à partir do offset imaginário 17767:

dd ibs=1 skip=17767 if=firmware.bin of=rootfs.jffs2

5) Montei o JFFS2 em loop, usando uma dica do OpenMoko:

export loop=$(losetup -f)
losetup $loop rootfs.jffs2
modprobe block2mtd block2mtd=$loop,131072
modprobe jffs2
modprobe mtdblock
mkdir rootfs
mount -t jffs2 -o ro /dev/mtdblock0 rootfs

Neste momento, pude inspecionar e olhar o que eu precisava dentro do rootfs.Para minha sorte, o script web dele era implementado em shell script.

6) Como o fabricante me negou o acesso de root, me dando apenas um shell personalizado e bem restrito, resolvi também ver qual eram as credenciais de acesso. Para isto, copiei o rootfs/etc/shadow chamei o meu amigo John:

sudo apt-get install john
john -incremental -users:root

Ainda estou esperando terminar (~21 horas e contando), mas em breve terei a senha de root também. Na última fez que fiz isso, com o mesmo fabricante mas uma imagem mais antiga, demorou 3 dias. Só que, naquela época, ele não usava shadow, apenas o /etc/passwd com direito de leitura para todos. Daí, apenas quebrei a senha, não precisei fazer nada do que descrevi aqui.

Happy hacking !

9 Comentários

O guia definitivo para os iniciantes em Net-SNMP (7)

Introdução

No post anterior usamos o aplicativo mib2c para gerar o esqueleto de código da nossa MIB. Neste post discutiremos como “rechear” o esqueleto de código gerado. No fundo, a quantidade de código necessária é bem pequena quando se usa o modelo escalar de geração, facilitando bastante uma primeira implementação do agente. Recomendo que leiam depois o tutorial disponível no site do Net-SNMP para maiores esclarecimento e dicas. Também recomendo que olhem a implementação de outras módulos para aprenderem um pouco mais através de exemplos (os fontes do Net-SNMP podem ajudar). Leia o resto deste post »

, ,

11 Comentários

O guia definitivo para os iniciantes em Net-SNMP (6)

Introdução

No post anterior entendemos como criar a nossa MIB. Hoje iremos validar a MIB criada e prepará-la para uso como o Net-SNMP. Todos os testes foram realizados no Ubuntu 10.10 e também no Linux Mint 12, usando os pacotes originais de cada distribuição. Ambas usavam versões do Net-SNMP derivadas da versão original 5.4.3. Leia o resto deste post »

, ,

1 Comentário

O guia definitivo para os iniciantes em Net-SNMP (5)

Introdução

Este é o nosso último post teórico e vamos aprender nele como escrever a nossa MIB de exemplo na notação ASN.1. Antes de mais nada, já aviso que não sairão letrados nesta notação, apenas aprenderemos o necessário para o exemplo. Afinal, é uma série para iniciantes, não ? Aumente seu nível de concentração pois teremos um post bem mais extenso aqui. Mãos à obra ! (Links para os posts anteriores: I, II, III, e IV)

Leia o resto deste post »

, ,

1 Comentário

O guia definitivo para os iniciantes em Net-SNMP (4)

Planejando uma MIB

Não leu os posts anteriores ? Por favor, então faça isso agora, antes de continuar nesse post, para não perder a linha de raciocínio e conceitos básicos (veja os links para os posts I, II e III).

Neste post, o assunto é como planejar a sua MIB personalizada. Como já comentamos, a parte personalizada da sua MIB deve estar abaixo do nodo “enterprises”. Será necessário requisitar um ponto de entrada na hierarquia da MIB para a sua empresa, caso ela ainda não tenha. Se quiser apenas testar, use um número ainda não alocado. Vale lembrar que o IANA registra, gratuitamente, estes pontos de entrada (veja a lista completa aqui).

Leia o resto deste post »

, ,

1 Comentário

O guia definitivo para os iniciantes em Net-SNMP (3)

Tipos de dados no SNMP

Continuando a série (veja também os posts anteriores, I e II), se você pretende criar um equipamento que tenha suporte a SNMP, vai ter que descrever “a sua parte da árvore”. Isto significa ter que aprender a linguagem que descreve uma MIB, chamada de ASN.1, ou Abstract Syntax Notation One, em inglês. O primeiro passo, neste caso, é entender os tipos de dados que podem ser usados. Felizmente, a lista não é grande, sendo resumida logo a seguir (ver RFC 1155 para detalhes):

Leia o resto deste post »

, ,

2 Comentários

O guia definitivo para os iniciantes em Net-SNMP (2)

MIBs e OIDs

De volta ao assunto Net-SNMP, vamos hoje discutir sobre como a informação é organizada no SNMP. Se você está começando deste post é melhor ler o post anterior antes. Lembrando também que esta série conta com a revisão do Alan Carvalho.

Toda informação gerenciada pelo agente é descrita através de uma MIB (Management Information Base). A MIB pode ser entendida como a descrição da base de dados hierárquica que um agente está disponibilizando. A figura a seguir ilustra uma parte desta MIB, geralmente representada em forma de árvore. Cada novo nodo tem um nome e um número relacionado, como pode ser visto abaixo. A especificação do SNMP deixa claro como a organização da árvore é feita, assim como o nome dos nodos padronizados.

Leia o resto deste post »

, ,

3 Comentários

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 499 outros seguidores