Baixando sites inteiros com Wget

Eu estou preparando um script em Python para facilitar o que já é fácil mas vamos lá. A ideia aqui é muito simples imagine que precisamos baixar o conteúdo inteiro de um site. Na internet há diversos softwares que fazem isto utilizando curl mas vamos ser práticos, o Wget dá conta do recado.

Abra o terminal e utilize o comando:
wget -r -p -U Mozilla http://www.stupidsite.com/restricedplace.html

As flags de comando é o que irá fazer a diferença a utilização do Wget. Simples não ?

Criador do Debian Ian Murdock morre aos 42 anos

Ian Murdock criador do Debian a distribuição mais customizada pelas comunidades em todos os tempos morreu nesta noite de segunda-feira aos 42 anos de idade. As causas da morte ainda não foram divulgadas pela polícia da Flórida mas há suspeitas de que ele teria se matado. A conta do Twitter dele foi deletada mas é possível pegar os cache do Google no qual ele sita que iria se matar.

Isto é uma perda gigante visto que Ian criou uma das distribuições mais importantes para usuários e administradores de sistemas.

Descanse em paz Ian muito obrigado por suas contribuições.

Como invadir o Grub2 no Linux apenas com o Backspace ?

Os engenheiros Hector Marco e Ismael Ripoll do grupo de cybersegurança da universidade de Valencia descobriram um exploit que pode ser aplicado nas versão 1.98 do Grub2 que quando adicionado uma senha da inicialização e pressionado o backspace 28 vezes sequêncialmente no prompt do username o shell de recuperação é liberado e o usuário pode instalar um rootkit ou malware no sistema. A Canonical, Red Hat e Debian já disponibilizaram em seus sites as correções para este bug.

Veja na integra:
http://hmarco.org/bugs/CVE-2015-8370-Grub2-authentication-bypass.html#exploit

Detectando conflitos de IP no Linux

Conflitos de endereço IP é algo comum e que gera uma grande dor de cabeça para administradores de rede. No Linux temos uma ferramenta chamada arp-scan que pode ajudar a detectar  o dispositivo que está causando as dores de cabeça.

Para instalar é simples, caso esteja utilizando distribuições baseadas no Debian como Ubuntu, etc….
Continue reading

Permissões de arquivos utilizando getfacl e setfacl

Nos exemplos abaixo irei mostrar como utilizar os comandos getfacl e setfacl para controlar acls de permissões no Linux / Samba:

admin@localhost ~]$ getfacl teste.txt
# file: teste.txt
# owner: admin
# group: admin
user::rw-
group::rw-
other::r–

Agora vamos atribuir poderes para o usuario sidon
[admin@localhost ~]$ setfacl -m user:Sidon:rw teste.txt

Vamos ver o que nos mostra getfacl:

[admin@localhost ~]$ getfacl teste.txt
# file: teste.txt
# owner: admin
# group: admin
user::rw-
user:Sidon:rw-
group::rw-
mask::rw-
other::r–

Tirando a leitura de “other”
[root@localhost admin]# setfacl -m o:— teste.txt

O lque mostra getfacl:
[root@localhost admin]# getfacl teste.txt
# file: teste.txt
# owner: admin
# group: admin
user::rw-
user:Sidon:rw-
group::rw-
mask::rw-
other::—

Importante:
Para funcionar samba, inclua no smb.conf:

#acls
map acl inherit = yes
inherit acl = yes
inherit permissions = yes

Como dar um bypass na autênticação do iTunes no Squid

Se você utiliza o Squid para fazer o controle de acesso e precisa atualizar aplicativos via iTunes liberar as seguintes urls em suas rules do Squid:

*.apple.com
*.verisign.com
itunes.apple.com
albert.apple.com
gs.apple.com
phobos.apple.com
a1.phobos.apple.com
deimos3.apple.com
ax.itunes.apple.com
metrics.apple.com
ax.phobos.apple.com.edgesuite.net
ax.init.itunes.apple.com
my.itunes.apple.com
*.woopra.com
c12850432.mgr.gcsp.cddbp.net
*.mzstatic.com

Redirecionando portas diferentes para ips diferentes usando NAT

Imagens que você têm um IP fixo e possui diversas aplicações na rede interna com portas e ips diferentes. A solução neste caso é criar uma porta para acessar cada ip:porta na rede local.

Um exemplo disto pode ser visto abaixo:

iptables -t nat -A PREROUTING -d 8.8.8.8 -p tcp --dport 555 -j DNAT --to-destination 10.0.0.1:554

Neste caso imagine que o ip 8.8.8.8 seja seu ip fixo e 10.0.0.1 seja o ip da rede local. Precisamos fazer os seguintes redirecionamentos:

10.0.0.1:554
10.0.0.2:554
10.0.0.3:554

com isto as regras que iremos utilizar são:

iptables -t nat -A PREROUTING -d 8.8.8.8 -p tcp --dport 555 -j DNAT --to-destination 10.0.0.1:554
iptables -t nat -A PREROUTING -d 8.8.8.8 -p tcp --dport 556 -j DNAT --to-destination 10.0.0.2:554
iptables -t nat -A PREROUTING -d 8.8.8.8 -p tcp --dport 557 -j DNAT --to-destination 10.0.0.3:554

Simples não!

Resolvendo problema de conexões perdidas no RSYNC

Uma forma de resolver o problema de broken connections com o Rsync sobre o SSH é utilizando um algoritmo para reconectar e verificar o conteúdo após a reconexão.

O algoritmo é simples e pode ser implementado diretamente no shell script. Um modelo de template está abaixo:

#!/bin/bash
# validate ssh connection
# @jaccon

while [ 1 ]
do
rsync -Cravz --progress --delete-excluded -e "ssh -p 2222" tambord@bluesystems.com.br:/home1/tambord/public_html/ /volumes/sdc/temp/hostgator/
if [ "$?" = "0" ] ; then
echo "rsync completed normally"
exit
else
echo "rsync failure. Retrying in a minute..."
sleep 60
fi
done

Configurando servidor Bind9 no Ubuntu Server

A ideia aqui é bem simples, configurar um servidor Bind9 para fazer cache se forward de conexões e ainda configurar algumas zonas internas para uma intranet.
Neste exemplo utilizaremos um uma máquina com Ubuntu 14 e Bind9 para fazer o trabalho de servidor de DNS. Criaremos as zonas firewall.bluesystems, fileserver.bluesystems e intranet.bluesystems como zonas de exemplo.

Hardware
Intel Core 2 Duo
2 GB RAM
SSD 120 GB

Softwares
Ubuntu 14.0.4
Bind9
Continue reading