Mudar o Firmware do Android com Softwares Livres

Esse artigo / tutorial eu escrevo repleto de felicidade, pois consegui fazer algo que me fazia crer ser impossível, pois as pessoas que conheço me diziam que não tinha como fazer.

Leia mais deste post

Anúncios

Configurando Gateway e DHCP no FreeBSD

Bom, neste post irei explicar os passos necessários de como configurar um gateway na rede com serviço DHCP no FreeBSD 8.2

Nota: em0=(interface de rede externa) e em1=(interface de rede local)

Instalação:

via ports -> /usr/ports/net/isc-dhcp31-server
/usr/ports/net/isc-dhcp31-server: make install clean

Fazendo backup do arquivo exemplo e criando um arquivo novo

mv /usr/local/etc/dhcpd.conf.sample /usr/local/etc/dhcpd.conf

Usando o editor de texto ee (padrão do sistema)

ee /usr/local/etc/dhcpd.conf
option domain-name-servers "208.67.222.222,208.67.220.220"; #OpenDNS
default-lease-time 3600;
max-lease-time 86400;
ddns-update-style none;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.11 192.168.10.90; #range de IPs
option routers 192.168.10.10; #gateway
}

Iniciar serviço dhcpd

# /usr/local/etc/rc.d/isc-dhcpd start

Ativar roteamento

# sysctl -w net.inet.ip.forwarding=1

(net.inet.ip.forwarding: 0 -> 1)

Habilitando os serviços necessários

ee /etc/rc.conf
ifconfig_em0="DHCP"
ifconfig_em1="inet 192.168.10.10 netmask 255.255.255.0"
dhcpd_enable="YES"
natd_enable="YES"
natd_interface="em0" #em0=placa1(conexão com Internet) em1=placa2(rede local)
gateway_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"

ee /boot/loader.conf
ipfw_load="YES"
ipdivert_load="YES"
net.inet.ip.fw.default_to_accept="1"
options IPFIREWALL_FORWARD
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFIREWALL_VERBOSE

Para poder usar o NAT, IPFIREWAL, IPDIVERT é necessário compilar o kernel

Compilando kernel FreeBSD

Então adicionaremos os parâmetros necessários para o funcionamento como gateway. No nosso exemplo copiaremos o arquivo GENERIC (este é apenas uma arquivo modelo) com outro nome (KERNCUSTOM). Teremos então dois arquivos, o modelo base (GENERIC) e o outro ao qual iremos modificar (KERNCUSTOM). Para realizar a cópia faça

# cp –p /usr/src/sysi386/conf/GENERIC /usr/src/sysi386/conf/KERNCUSTOM.

Manter o mesmo nome do arquivo de configuração e do próprio kernel (ident) ajuda a manter a organização.
Então adicionamos os seguintes parâmetros (as linhas que iniciam com # são comentários):

ident KERNCUSTOM #Nome de identificação do kernel. Não há relação com o nome do arquivo, é apenas uma boa prática para identificar e/ou versionar e organizar as possíveis variações de kernel;
options IPFIREWALL # Habilitando o módulo do IPFW (firewall);
options IPFIREWALL_FORWARD # Habilita o repasse de pacotes entre interfaces de rede interna e externa;
options IPFIREWALL_DEFAULT_TO_ACCEPT # Comportamento padrão para o firewall, definido como aberto (caso essa linha seja omitida o padrão será fechado, portanto as regras no arquivo de rc.firewall deverão ser alteradas);
options IPFIREWALL_VERBOSE #Habilitando o log do firewall no syslogd;
options IPFIREWALL_VERBOSE_LIMIT=1000 – #Limite do log em Mb;
options IPDIVERT #Habilitando o uso de socket divert por padrão na porta 8668.

Editado o arquivo KERNCUSTOM, devemos então retornar ao diretório /usr/src para que consigamos executar os comandos para construção e instalação do novo kernel.
A construção do kernel usando o arquivo de configuração que foi editado, a depender do microcomputador, pode ser demorada. Para isso, execute:

# make buildkernel KERNCONF=KERNCUSTOM

Se nenhum erro foi encontrado, instale o novo kernel usando o make:

# make installkernel KERNCONF=KERNCUSTOM

Se tudo ocorreu bem, teremos então o FreeBSD pronto para atuar como gateway. Assim, basta reiniciar o computador e ligar suas conexões de rede (interna e externa) nas interfaces corretas. Lembre-se das configurações do rc.conf, devemos nos atentar em ligar as conexões de rede às placas corretas.

Caso o cliente tiver problemas para navegar
# ipfw add 65000 allow ip from any to any #libera os pacotes que tava bloqueando

Feito!

Referências:
http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=20814
http://www.kodiva.com/post/freebsd-as-an-internet-gateway-with-dhcp-services
http://blog.clickgratis.com.br/mauricio/

Invasão do kernel.org

Você conhece a Linux Foundation? É uma organização não-governamental, fundada em 2000, com o objetivo de promover o Linux nas mais diversas formas. Entre os grandes colaboradores, está (obviamente) o criador do Linux, Linus Torvalds. Você também pode fazer parte da Linux Foundation. E não precisa ser um super-programador. Basta se inscrever e colaborar ‘simbolicamente’. Sou membro há algum tempo, e com isso tenho acesso a materiais exclusivos, como artigos e notícias quentinhas. Faça parte você também.

Leia mais deste post