alexmontoanelli

a little fun!

Configurando VLANS no Gentoo

How-to rápido de como configurar uma placa de rede com vlans no Gentoo:

Instale o pacote vconfig com um ‘emerge vconfig’;

Configure o arquivo /etc/conf.d/net da seguinte maneira:

vlans_eth0="10 20"
config_eth0="null"
config_eth0_10=("10.100.5.1 netmask 255.255.255.0" )
config_eth0_20=("192.168.2.243 netmask 255.255.255.0")

Nas linhas acima configuramos 2 vlans com as tags 10 e 20, na interface eth0, atribuindo a cada vlan um endereço IP.

Para iniciar a vlan, basta chamar o script default, /etc/init.d/net.eth0 start

Abraços

March 18th, 2010 by alexm

Mapeando e usando as teclas múltimidias no linux

Tento instalado os utilitários xev e xmodmap, execute o comando abaixo no console, e aperte as teclas múltimida do seu teclado em sequência.

A saída do comando abaixo será o código da tecla.

xev | sed -n 's/^.*keycode *\([0-9]\+\).*$/keycode \1 = /p'

Após pressionar as teclas, temos seus respectivos códigos e então podemos mapea-las no linux criando um arquivo com a seguinte estrutura:

keycode 144 = F13
keycode 145 = F14

lembre-se de trocar o keycode, no caso 144, pelo resultado obtido ao pressionar as suas teclas múltimidia. Note que o f13, f14 é simbólico.

Após isso salve o arquivo em um local de fácil acesso por exemplo: ~/.xmodmap e execute:

xmodmap ~/.xmodmap

Agora no kde, abra o útilitário ‘keyboard and mouse’ no System Settings, e em Standard e Global Keyboard Shortcuts, você pode definir as ações para suas novas teclas mapeadas.

Abraço

January 16th, 2010 by alexm

Configurando redes WPA no Linux

Abaixo segue roteiro básico para você conseguir autenticar em uma rede usando criptografia WPA/WPA2.
Os passos são baseados na distribuição Gentoo, e espera-se que você já tenha sua placa wifi instalada e operacional.

1: instale o pacote wpa_supplicant:  emerge wpa_supplicant
2: edite/crie o arquivo de configuração /etc/wpa_supplicant/wpa_supplicant.conf, com a seguite configuração:

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
update_config=1

network={
 ssid="SSID_DA_REDE"
 psk="CHAVE_PSK_DA_REDE"
 pairwise=TKIP
}

3: edite o arquivo /etc/conf.d/net e adicione o seguinte:

modules=( "wpa_supplicant" )
wpa_supplicant_wlan0="-Dwext" # For generic wireless
config_wlan0=( "null" )

4: agora crie o script de inicialização: ln -sf /etc/init.d/net.lo /etc/init.d/net.wlan05

5: inicie a rede com /etc/init.d/net.wlan0 start

Existe tambem uma interface gui, que pode ser chamada pelo comando wpa_gui.

Abraços

November 8th, 2009 by alexm
Posted in linux | 1 Comment »

Squid Multiple Remote Denial of Service Vulnerabilities

Bugtraq ID:35812
Class:Unknown
CVE: CVE-2009-2621 – CVE-2009-2622
Remote:Yes
Local:No
Published: Jul 27 2009 12:00AM
Updated: Jul 28 2009 06:15PM

Credit: Alex Montoanelli of www.unetvale.net, Rob Middleton of Centenary Institute, Tuomo Untinen, Ossi Herrala, and Jukka Taimisto from the CROSS project at Codenomicon Ltd.

Vulnerable: Squid Web Proxy Cache 3.1 5,Squid Web Proxy Cache 3.1 4,Squid Webroxy Cache 3.0,Squid Web Proxy Cache 3.1.0.11,Squid Web Proxy Cache 3.1,
Squid Web Proxy Cache 3.0.STABLE7,Squid Web Proxy Cache 3.0.STABLE6,Squid Web Proxy Cache 3.0.STABLE5,Squid Web Proxy Cache 3.0.STABLE4,Squid Web Proxy Cache 3.0.STABLE3,Squid Web Proxy Cache 3.0.STABLE2,Squid Web Proxy Cache 3.0.STABLE16,Squid Web Proxy Cache 3.0.STABLE13,Squid Web Proxy Cache 3.0.STABLE12,Squid Web Proxy Cache 3.0.STABLE1,MandrakeSoft Linux Mandrake 2009.1 x86_64,MandrakeSoft Linux Mandrake 2009.1,MandrakeSoft Linux Mandrake 2009.0 x86_64,MandrakeSoft Linux Mandrake 2009.0,MandrakeSoft Linux Mandrake 2008.1 x86_64,MandrakeSoft Linux Mandrake 2008.1,Debian Linux 5.0 sparc,Debian Linux 5.0 s/390,Debian Linux 5.0 powerpc,Debian Linux 5.0 mipsel,Debian Linux 5.0 mips,Debian Linux 5.0 m68k,Debian Linux 5.0 ia-64,Debian Linux 5.0 ia-32,Debian Linux 5.0 hppa,
Debian Linux 5.0 armel,Debian Linux 5.0 arm,Debian Linux 5.0 amd64,Debian Linux 5.0 alpha,Debian Linux 5.0

Not Vulnerable: Squid Web Proxy Cache 3.1.0.12,Squid Web Proxy Cache 3.0.STABLE17

Reference: SecurityFocus

July 29th, 2009 by alexm
Posted in linux | No Comments »

Upgrade de Kernel Remotamente

Segue dica de como configurar o lilo para caso o novo kernel de Panic, ele reiniciar com o kernel ‘bom/velho’

Faça o seguinte no lilo.conf :

Deixe a entrada ‘boa’/funcionando/atual’ como a primeira na lista, esta será a sua opção que será usada o boot, caso o novo kernel de panic.

Adicione a entrada do novo kernel no final da lista, adicionado o paramentro append =”panic=30″

Vai ficar mais ou menos assim:

boot = /dev/sda
compact
prompt
timeout = 50
vga = normal
 
image = /boot/kernelBOM   
root = /dev/sda5   
label = kernelestavel   
read-only
 
image = /boot/novoKERNELroot = /dev/sda5   
label = novokernel   
read-only   
append ="panic=30"

Após isso, digite lilo para gravar as alterações.

Agora a mágica: digite –>

lilo -R novokernel

 
 

Esse comando fará com que no próximo boot o kernel ‘novokernel’ será usado como padrão ai invés do primeiro da lista.

Agora é só rebootar, e caso de tudo certo, reordenar a lista dos kernel´s e retirar a opção append.

Abraços

November 11th, 2008 by alexm
Posted in linux | No Comments »

Use less ao invés de cat

Uma ótima dica para que vive dando cat |more, é usar o less.

Vantagens:

  • Teclando ‘v’ você irá abrir o arquivo no seu editor definido na variavel $EDITOR
  • Teclando ‘/’ você poderá executar buscar no estilo sed, VI
  • Use as teclas up e down para rolar o texto para cima e baixo

 

Para usar é simples:

Ao invés de
cat /tmp/arquivo |more
use
less /tmp/arquivo

November 4th, 2008 by alexm
Posted in linux | No Comments »

XEN + Snort = Colocando as Interfaces em modo Promisc

Se você tiver alguma maquina virtual que fará usará IDS, como por exemplo o Snort, você precisará colocar a interface na qual você pretende ouvir os pacotes em modo promisc.

Para realizar tal procedimento faça o seguinte no dom0.

brctl setageing xenbr0 0

Onde xenbr0 é a interface a qual você pretende snifar.

Isso pode ser feito ‘a quente’ sem precisar restartar o dom0 nem os domU´s
Abraços

September 2nd, 2008 by alexm
Posted in linux, xen | No Comments »

Acessando Bases Postgresql via ODBC no Debian

Para começar instale os seguintes pacotes:

apt-get install unixodbc odbc-postgresql odbcinst1debian1

Agora crie um arquivo temporário com o seguinte conteudo:

[PostgreSQL]
Description     = PostgreSQL driver for Linux & Win32
Driver          = /usr/lib/odbc/psqlodbca.so
Setup           = /usr/lib/odbc/libodbcpsqlS.so
FileUsage       = 1

Execute:

odbcinst -i -d -f /meu/arquivo/temporario

Crie outro arquivo temporário, com o seguinte conteúdo

[MEUBANCO]
Description = Meu Baco
Driver      = PostgreSQL
SERVER      = HOST_OU_IP_DO_SERVIDOR
USER        = root
PASSWORD    =
PORT        = 5432
DATABASE    = MEUBANCO
Option      = 3

Execute o seguinte comando:

odbcinst -i -d -f /meu/arquivo/temporario/numero/2

Agora é testar:

isql meubanco

Se tudo der certo, você entrará num prompt sql.

Abraços

August 13th, 2008 by alexm

Autenticação centralizada com Ldap, usando Postfix, Dovecot e Samba

Olá.

Vou postar aqui uma série de 5 artigos mostrando como integrar os serviços de email (Postfix, Dovecot), e o servidor de arquivos Samba, para usarem a mesma base de autenticação, no caso com Openldap.

Toda a brincadeira foi realizada em um FreeBSD 6.3 -p3, mais pode ser implantada em qualquer Linux sem problemas.

Parte 1 : Preparando o Openldap.

No FreeBSD, tento o ports instalado, pasta fazer o seguinte:

cd /usr/ports/net/openldap24-server
make
make install

As seguintes opções foram usadas:

SASL
TCP_WRAPPERS
BDB
ACCESSLOG
LASTMOD
SEQMOD
SYNCPROV
DYNAMIC_BACKENDS

Após isso, iremos instalar o nss_ldap, usado para integrar os usuários que serão cadastrados no openldap, ao sistema.

cd /usr/ports/net/nss_ldap/
make
make install

Agora vamos configurar nosso ldap.conf e slapd.conf para colocar o open-ldap no ar.

Vamos editar o arquivo /usr/local/etc/ldap.conf e adicionar a seguinte no arquivo

BASE    dc=empresa,dc=com,dc=br

Feito isso partimos para a configuração do slapd.conf, esse é o arquivo responsável pelo daemon do openldap.

Seguem as alterações necessárias:

include         /usr/local/etc/openldap/schema/core.schema
include         /usr/local/etc/openldap/schema/cosine.schema
include         /usr/local/etc/openldap/schema/inetorgperson.schema
include         /usr/local/etc/openldap/schema/misc.schema
include         /usr/local/etc/openldap/schema/nis.schema

access to dn.exact=""
        by * read

access to attrs=userPassword,sambaLMPassword,sambaNTPassword
        by anonymous auth
        by self write
        by * none

access to attrs=shadowLastChange
        by self write
        by * none

access to *
        by read

loglevel 256

#######################################################################
# BDB database definitions
#######################################################################

database        bdb
suffix          "dc=empresa,dc=com,dc=br"
rootdn          "cn=Manager,dc=empresa,dc=com,dc=br"
rootpw          {SSHA}D9t3cIySlQg2ugQYeSD5bkB+ZqWPaasx
mode    0700
directory       /var/db/openldap-data
# Indices to maintain
index   objectClass     eq
index   cn,uid,sn       eq
index   gidNumber       eq
index   mail,givenName,mailAlternateAddress,displayName eq,pres,sub
index   default eq

A senha no formato SSHA é obtida com o comando

slappasswd  -s mInhaSenh@Secr37A

Feito isso, vamos inserir a base do nosso banco, isso tudo em modo offline ainda.
Crie um arquivo com o seguinte conteúdo:

dn: dc=empresa,dc=com,dc=br
dc: empresa
objectClass: top
objectClass: domain

Agora vamos inserir esse registro na base:

slapadd -l MEU_ARQUIVO_TEMPORARIO -b 'dc=empreasa,dc=com,dc=br'

Feito isso, nosso banco pode ser posto no ar.
Adicione as seguintes flags ao seu arquivo /etc/rc.conf

slapd_enable="YES"
slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://127.0.0.1/"'
slapd_sockets="/var/run/openldap/ldapi"

Estas flags dizem para ativar o slapd no boot do bsd,  configura ele para ouvir em modo não ssl, em locallhost, e cria um unixsocket em /var. Abordagem com ssl será feita em outra etapa.

Agora vamos startar no OpenLdap

/usr/local/etc/rc.d/slapd start

Se tudo der certo, com um  simples ‘netstat -ln| egrep “\.389″‘ você verá uma saída semelhante a esta, informado que o slapd esta ouvindo na sua porta padrão:

[root@propague /root]# netstat -ln| egrep "\.389"
tcp4       0      0  127.0.0.1.389          127.0.0.1.63586        ESTABLISHED
tcp4       0      0  127.0.0.1.63586        127.0.0.1.389          ESTABLISHED
tcp4       0      0  127.0.0.1.389          127.0.0.1.50995        ESTABLISHED
tcp4       0      0  127.0.0.1.50995        127.0.0.1.389          ESTABLISHED
tcp4       0      0  127.0.0.1.389          127.0.0.1.57821        ESTABLISHED
tcp4       0      0  127.0.0.1.57821        127.0.0.1.389          ESTABLISHED
tcp4       0      0  127.0.0.1.389          127.0.0.1.61773        ESTABLISHED
tcp4       0      0  127.0.0.1.61773        127.0.0.1.389          ESTABLISHED

Para confirmar, execute:

ldapsearch -x

Deverá ser retornado a raiz de seu diretório informando que o mesmo foi criado com sucesso.
Caso você não consiga por seu ldap para rodar, tente rodar ele como root e modo debug.

/usr/local/libexec/slapd -d 256

Na maioria das vezes o erro é causado por permissões inválidas no diretório onde o ldap guarda seus arquivos.
Se for este o seu problema, você pode corrigir com o seguinte comando, e em seguida subir o daemon novamente

chow -R ldap:ldap /var/db/openldap-db
chmod -R 600 /var/db/openldap-db

Por hoje é isso, no próximo capitulo vamos inserir alguns usuários na base, e fazer o sistema enxergar eles, usando o nss, e editando o nsswitch.

Abraços e até mais.

August 7th, 2008 by alexm

XEN: Aumentando o desepenho da rede

Aqui vão algumas dicas para você aumentar o desepenho na rede de suas VM’s:

1 -> Desative a verificação de rx/tx nas placas de rede.
Supondo que você está usando a rede no modo bridge no xen, você pode economizar um bom tempo, deixando para que o guest’s que receberão o pacote final, verifiquem por erro de tx e rx nos pacotes.

Use o comando ‘ethtool -K tx eth0 off’ e  ‘eththool -K rx eth0 off’ // Troque o eth0 pela sua respectiva placa.

2 -> Para comunicação entre as máquinas sob o mesmo hyper-visor, utilize uma interface dummy em modo bridge, e coloque as suas VM nessa bridge.

3 -> Aumente o hellotime das interfaces bridges, com o comando ‘brctl sethello xenbr0 eth0′. Isso diminui o uso de interrupções por parte das VM’s.

4 -> Prefira maquinas ParaVirtualizadas ao invés de FullVirtualizadas. A difereça é mais do que gritante. O questão é que em modo Full-Virturalizado (hvm), a muito mais camadas no processo de comunicação, tornando muito lento. HVM é bom mais não ideal. Prefira máquinas pv ao invés de hvm.

Abraços

August 4th, 2008 by alexm
Posted in linux, xen | No Comments »