Post em Destaque

Não seja pego de surpresa com a atualização da libxml2 via ports

Recentemente saiu uma vulnerabilidade no pacote libxml2 e eu meio que no automático fui atualizar e me deparei com uma série de novidades. Bem, para começar não seja pego de surpresa faça o comando abaixo e veja quem você vai ter que recompilar após a atualização dessa lib. Bem já começa porque...

Leia mais...

Do CVS ao SVN – montando um mirror para source e ports do FreeBSD

Posted by gondim | Posted in FreeBSD | Posted on 25-08-2012

3

Bem, está tendo uma grande discussão na lista freebsd-stable desde que saiu o FreeBSD 9.1 RC1 pois para quem quiser experimentar esse RC só tem 2 caminhos:

  1. Baixar a ISO do FreeBSD 9.1 RC1 aqui e instalar o sistema do zero.
  2. Atualizar uma instalação do FreeBSD 9 para essa RC e para fazer isso o velho csup do CVS não servirá mais e teremos que usar SVN.

A tendência é no futuro não usar mais o CVS para fontes e ports. Segundo a discussão na lista o FreeBSD 10 não usará mais o CVS e sim o subversion (SVN). O 9-STABLE ainda estará disponível através do CVS (csup que conhecemos), mas pelo visto esses RCs não entram na árvore CVS.

Para quem quiser experimentar o RC1 de uma instalação do FreeBSD 9 façamos o seguinte:

1º Salve o seu kernel se tiver algum customizado que fica em /sys/amd64/conf ou /sys/i386/conf, dependendo da sua arquitetura.

2º Vamos remover qualquer coisa que tenha no /usr/src/:

# rm -rf /usr/src/*

3º Vamos instalar o subversion que está no ports:

# cd /usr/ports/devel/subversion
# make install clean distclean

4º Vamos agora baixar nossos fontes usando a árvore do subversion:

# svn co svn://svn.freebsd.org/base/releng/9.1 /usr/src

5º Após terminar o svn você terá os fontes do 9.1 RC1 em /usr/src e poderá fazer a compilação e instalação do world e kernel como sempre fez.

6º Para atualizar seus fontes em svn:

# cd /usr/src
# svn update

Para aqueles que tem muitos servidores para atualizar e não querem gastar tempo e banda para isso, Jim Pingle fez um post em seu site sobre como criar um mirror svn para toda a sua rede e postou na lista freebsd-stable para quem quiser. Muito legal da parte dele e é assim que uma comunidade se ajuda. Parabéns pela sua iniciativa. O post dele pode ser lido aqui.

Um outro documento que é bom ler para entender mais sobre o subversion na comunidade FreeBSD é esse aqui.

Bem é isso e esperamos ter ajudado à todos que tinham dúvidas sobre essa mudança.  🙂

Share Button

Primeiro RC do FreeBSD 9.1

Posted by gondim | Posted in FreeBSD | Posted on 23-08-2012

0

The first release candidate of the 9.1-RELEASE release cycle is now
available on the FTP servers for amd64, i386, and powerpc64. The
MD5/SHA256 checksums are at the bottom of this message. The ISO images
and, for architectures that support it, the memory stick images are
available here:

ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/9.1/

(or any of the FreeBSD mirror sites).

Current plans are for there to be one more RC build, followed by the
release itself. The current target schedule is here:

http://www.freebsd.org/releases/9.1R/schedule.html

If you notice any problems you can report them through the normal Gnats
PR system or here on the -stable mailing list.

With both the doc and ports repositories now moved to SVN it has been
decided to not export the 9.1 release branch activity to CVS. So
csup/cvsup update mechanisms are not available for updating to 9.1-RC1.
If you would like to use SVN the branch to use is releng/9.1.

The freebsd-update(8) utility supports binary upgrades of i386 and amd64
systems running earlier FreeBSD releases. Systems running 9.0-RELEASE
can upgrade as follows:

# freebsd-update upgrade -r 9.1-RC1

During this process, FreeBSD Update may ask the user to help by merging
some configuration files or by confirming that the automatically performed
merging was done correctly.

# freebsd-update install

The system must be rebooted with the newly installed kernel before
continuing.

# shutdown -r now

After rebooting, freebsd-update needs to be run again to install the new
userland components, and the system needs to be rebooted again:

# freebsd-update install
# shutdown -r now

Users of earlier FreeBSD releases (FreeBSD 7.X, 8.X) can also use
freebsd-update to upgrade to FreeBSD 9.1-RC1, but will be prompted to
rebuild all third-party applications (e.g., anything installed from the
ports tree) after the second invocation of “freebsd-update install”, in
order to handle differences in the system libraries between FreeBSD 7.X
or FreeBSD 8.X and FreeBSD 9.X.

Checksums:

MD5 (FreeBSD-9.1-RC1-amd64-bootonly.iso) = 370b1c7b5a816289c6822f577fbf59d5
MD5 (FreeBSD-9.1-RC1-amd64-disc1.iso) = a6d6bd8c47509e71af2b74a39d1ed6be
MD5 (FreeBSD-9.1-RC1-amd64-memstick.img) = 320bbcb382bd335e835636278cdb168d

MD5 (FreeBSD-9.1-RC1-i386-bootonly.iso) = 0e3bf9d6f233b0502bac54b45d8a8fe9
MD5 (FreeBSD-9.1-RC1-i386-disc1.iso) = 2d911a7c7e3ed6f93bf0a03d0696aab7
MD5 (FreeBSD-9.1-RC1-i386-memstick.img) = 64608c316269f38390501b331b954b44

MD5 (FreeBSD-9.1-RC1-powerpc64-bootonly.iso) = 4ea17dc932dad7632d7bea70af5e16a7
MD5 (FreeBSD-9.1-RC1-powerpc64-memstick) = f28d44cd7fec655d6944cdeabeca2d6c
MD5 (FreeBSD-9.1-RC1-powerpc64-release.iso) = 08742f914353300917c92b339728b80e

SHA256 (FreeBSD-9.1-RC1-amd64-bootonly.iso) = f080e8c7cecd9bb44240a52e17827a94ad178f040b16526d339c8d0f2f1cdfd7
SHA256 (FreeBSD-9.1-RC1-amd64-disc1.iso) = 27bc85ec853f590f19ece8ddd672d62bfe58f6d8de874afd71958bd42b48f8c9
SHA256 (FreeBSD-9.1-RC1-amd64-memstick.img) = d8312855a32dba9b22fd208c2426d136640421ccca459ce429f8a70edee9398c

SHA256 (FreeBSD-9.1-RC1-i386-bootonly.iso) = 1c8c555aa700d2b3bda77748436a1a6c2497521aae0974a7cd97451a27a9e3e4
SHA256 (FreeBSD-9.1-RC1-i386-disc1.iso) = f16a310fe80a01555f5d3dd108bae3b8e08d01db18d7dd7d4e70e13f0bc0a7a8
SHA256 (FreeBSD-9.1-RC1-i386-memstick.img) = 0799b8efd6f8678c474fe8048a265e21b487665f70c6e4172087e3c76b28a798

SHA256 (FreeBSD-9.1-RC1-powerpc64-bootonly.iso) = e183acb6cbb5cdbba3b3830e773c4e49ecb315eb07bde5d91d2e9595ba679d5f
SHA256 (FreeBSD-9.1-RC1-powerpc64-memstick) = afc19a57f8d7e8b8a49f863f817221d7639f1b78288cdb0a7b8ffa5b60632d64
SHA256 (FreeBSD-9.1-RC1-powerpc64-release.iso) = 71c8a2965ff1198894e84ce0260e801b9e7f234c560bbbe95bf49274d399166d

Share Button

jnettop – ferramenta X9 de consumo de banda

Posted by gondim | Posted in Dicas, FreeBSD, Software Livre | Posted on 21-08-2012

Tags:,

5

Hoje venho apenas passar uma dica muito legal para os momentos em que percebemos certas lentidões de acesso. Usei essa ferramenta em outros sistemas e logicamente continuo usando no FreeBSD. Quando queremos descobrir, dentro da nossa rede, quem está consumindo mais banda de acesso, a ferramenta que mais me adaptei foi a jnettop que é um top por consumo de banda.

Ele é muito simples de usar e na sua forma mais básica já faz o que se propõe. Para instalar esse port basta fazer o seguinte:

# cd /usr/ports/net-mgmt/jnettop
# make install clean distclean

Para verificar quem está utilizando mais banda, usando a interface de rede interna do seu proxy ou gateway basta rodar:

# jnettop -i <interface_interna>

Para fazer o mesmo sem resolver nomes:

# jnettop -i <interface_interna> -n

Também podemos fazer filtragens como fazemos no tcpdump, usando o -x como argumento. No exemplo abaixo pegaremos somente as conexões usando a porta 80, sem resolver nomes e na minha interface interna em1:

# jnettop -i em1 -n -x “port 80”

Ao abrir a tela do jnettop o mesmo mostrará os dados em bytes por segundo, para alterar para bits por segundo basta apertar a tecla “b” uma vez e outra vez para mudar para bytes por segundo novamente. Existe o parâmetro -b em linha de comando que deveria setar para bits por segundo mas estranhamente nunca funcionou comigo em nenhum sistema em que usei o jnettop. Provavelmente não foi implementado como deveria mas o importante é a utilidade da ferramenta como um todo.

Abaixo a tela do mesmo em ação:

Jnettop também pode ler um arquivo de configuração local. Toda informação adicional pode ser lida em seu man:

# man jnettop

É isso aí pessoal. Bom proveito. 😉

Share Button

BSD Magazine – Mês de Agosto

Posted by lgvalentim | Posted in FreeBSD | Posted on 14-08-2012

0

BSD Magazine é uma revista mensal de excelente qualidade técnica, visual e gratuita para todo e qualquer profissional que queira ficar bem informado sobre tecnologia e informação utilizando BSD e outros Softwares Livres.

A revista encontra-se em idioma Inglês e para baixá-la basta informar o seu e-mail e clicar para baixar. Todas as outras edições anteriores também podem ser baixadas. Seu formato está em pdf.

Conteúdo:

  • Tuning ZFS on FreeBSD
  • MPD5 – VPN Server with FreeBSD Setup and Management
  • PostgreSQL Partitioning
  • Securing DNS Transactions
  • MaheshaBSD Server Edition Has Been Just Released!

Bsd_08_2012

Share Button

Jail com VIMAGE carregando automaticamente no boot.

Posted by gondim | Posted in FreeBSD, Segurança, Software Livre, Tecnologia | Posted on 09-08-2012

Tags:, ,

0

Pois é pessoal, depois de penar um pouco com jails aqui em meu ambiente de testes consegui fazer uma configuração bem legal usando o VIMAGE. O que matava usando o vimage era que a jail não carregava os serviços e configurações automaticamente no boot porque o script /etc/rc.d/jail não tem ainda um suporte oficial para vnet. Mas futucando na Internet achei um patch para isso e que funciona tanto no FreeBSD 8 quanto no FreeBSD 9. Bem eu testei no FreeBSD 9-PRERELEASE. Abaixo vou dar um exemplo de como fazer essa configuração:

Primeiro você precisa compilar o seu kernel com suporte ao VIMAGE. Adicione a seguinte linha ao seu kernel, compile e instale ele:

options VIMAGE

Vamos agora baixar e aplicar o patch para o /etc/rc.d/jail de acordo com o seu FreeBSD:

# cd /etc/rc.d
# patch < (local_onde_baixou_patch)/jail_rc9.patch

Após aplicar o patch o seu script /etc/rc.d/jail terá suporte ao vnet que precisamos e assim carregar automaticamente nossas jails no /etc/rc.conf.

Depois de iniciar com o seu novo kernel, vamos montar a estrutura de uma nova jail para vermos como isso vai funcionar. Darei o nome da minha jail de “mail”. Vamos dizer que eu quisesse montar um servidor de correio nessa jail.

# mkdir -p /usr/jail/mail

Para cada nova jail a estrutura estaria dentro de /usr/jail. Se você já compilou e instalou seu sistema FreeBSD, a coisa fica mais rápida fazendo assim:

# cd /usr/src
# make installworld DESTDIR=/usr/jail/mail
# make distribution DESTDIR=/usr/jail/mail

Agora vamos preparar o ambiente do servidor:

# mkdir -p /etc/jails/fstabs
# echo “/usr/src              /usr/jail/mail/usr/src            nullfs      rw     0     0” > /etc/jails/fstabs/mail
# echo “/usr/ports            /usr/jail/mail/usr/ports          nullfs      rw     0     0” >> /etc/jails/fstabs/mail

No nosso /etc/rc.conf ficará essa configuração:

hostname=”virtsrv.localdomain.net”
keymap=”br275.iso.acc.kbd”
cloned_interfaces=”bridge0 epair0″
ifconfig_bridge0=”inet 192.168.8.34 netmask 255.255.255.0 addm em0 up”
ifconfig_em0=”up”
ifconfig_epair0a=”up”
defaultrouter=”192.168.8.253″
sshd_enable=”YES”
# Set dumpdev to “AUTO” to enable crash dumps, “NO” to disable
dumpdev=”NO”

jail_enable=”YES”
jail_v2_enable=”YES”
jail_list=””
jail_set_hostname_allow=”YES”
jail_socket_unixiproute_only=”YES”
jail_sysvipc_allow=”YES”
jail_list=”$jail_list mail”
jail_mail_name=”mail”
jail_mail_hostname=”mail.teste.com.br”
jail_mail_devfs_enable=”YES”
jail_mail_rootdir=”/usr/jail/mail”
jail_mail_mount_enable=”YES”
jail_mail_fstab=”/etc/jails/fstabs/mail”
jail_mail_vnet_enable=”YES”

jail_mail_exec_prestart0=”mount -t devfs devfs /usr/jail/mail/dev”
jail_mail_exec_prestart1=”ifconfig bridge0 addm epair0a”
jail_mail_exec_earlypoststart0=”ifconfig epair0b vnet mail”
jail_mail_exec_afterstart0=”ifconfig lo0 127.0.0.1″
jail_mail_exec_afterstart1=”ifconfig epair0b 192.168.8.173 netmask 255.255.255.0 up”
jail_mail_exec_afterstart2=”route add default 192.168.8.253″
jail_mail_exec_afterstart3=”/bin/sh /etc/rc”
jail_mail_exec_poststop0=”ifconfig bridge0 deletem epair0a”

Na nossa configuração acima o IP do servidor das jails será o 192.168.8.34 e o IP que estamos dando para a jail será 192.168.8.173. Use os IPs que melhor atender a sua necessidade. 🙂

Antes de iniciar a nossa jail de exemplo precisamos prepará-la para uso:

Adicione as linhas abaixo em /usr/jail/mail/etc/rc.conf:

hostname=”mail.teste.com.br”
network_interfaces=””
sshd_enable=”YES”

Por último vamos criar um fstab fazio:

# touch /usr/jail/mail/etc/fstab
# mkdir /usr/jail/mail/usr/ports

Agora podemos iniciar nossa jail fazendo:

#/etc/rc.d/jail start mail

Após carregar a jail, podemos entrar nela via jexec e configurar o time zone com tzsetup, colocar senha no root e criar novos users para o sistema. Para fazer isso:

# jls
JID  IP Address      Hostname                      Path
–               mail.teste.com.br             /usr/jail/mail

# jexec 1 sh
# passwd root
# tzsetup
# adduser
# exit

Bem é isso aí pessoal.  :

Muitas coisas desse artigo foram baseadas nesse aqui.

 

Share Button

Bind9 vulnerabilidade – DNSSEC validation Denial of Service

Posted by gondim | Posted in FreeBSD, Segurança, Software Livre | Posted on 06-08-2012

Tags:

9

Para aqueles que tem um servidor de DNS com bind 9.x dêem uma olhada nesse advisory abaixo
e corrijam o quanto antes o problema:

==========================================================================
FreeBSD-SA-12:05.bind                                       Security Advisory
                                                          The FreeBSD Project

Topic:          named(8) DNSSEC validation Denial of Service

Category:       contrib
Module:         bind
Announced:      2012-08-06
Credits:        Einar Lonn of IIS.se
Affects:        All supported versions of FreeBSD
Corrected:      2012-08-06 21:33:11 UTC (RELENG_7, 7.4-STABLE)
                2012-08-06 21:33:11 UTC (RELENG_7_4, 7.4-RELEASE-p10)
                2012-07-24 19:04:35 UTC (RELENG_8, 8.3-STABLE)
                2012-08-06 21:33:11 UTC (RELENG_8_3, 8.3-RELEASE-p4)
                2012-08-06 21:33:11 UTC (RELENG_8_2, 8.2-RELEASE-p10)
                2012-08-06 21:33:11 UTC (RELENG_8_1, 8.1-RELEASE-p13)
                2012-07-24 22:32:03 UTC (RELENG_9, 9.1-PRERELEASE)
                2012-08-06 21:33:11 UTC (RELENG_9_0, 9.0-RELEASE-p4)
CVE Name:       CVE-2012-3817

For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit <URL:http://security.FreeBSD.org/>.

I.   Background

BIND 9 is an implementation of the Domain Name System (DNS) protocols.
The named(8) daemon is an Internet Domain Name Server.

DNS Security Extensions (DNSSEC) provides data integrity, origin
authentication and authenticated denial of existence to resolvers.

II.  Problem Description

BIND 9 stores a cache of query names that are known to be failing due
to misconfigured name servers or a broken chain of trust.  Under high
query loads, when DNSSEC validation is active, it is possible for a
condition to arise in which data from this cache of failing queries
could be used before it was fully initialized, triggering an assertion
failure.

III. Impact

A remote attacker that is able to generate high volume of DNSSEC
validation enabled queries can trigger the assertion failure that causes
it to crash, resulting in a denial of service.

IV.  Workaround

No workaround is available, but systems not running the BIND resolving
name server with dnssec-validation enabled are not affected.

V.   Solution

Perform one of the following:

1) Upgrade your vulnerable system to 7-STABLE, 8-STABLE, or 9-STABLE,
or to the RELENG_7_4, RELENG_8_3, RELENG_8_2, RELENG_8_1, or RELENG_9_0
security branch dated after the correction date.

2) To update your vulnerable system via a source code patch:

The following patches have been verified to apply to FreeBSD 7.4,
8.3, 8.2, 8.1 and 9.0 systems.

a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.

# fetch http://security.FreeBSD.org/patches/SA-12:05/bind.patch
# fetch http://security.FreeBSD.org/patches/SA-12:05/bind.patch.asc

b) Execute the following commands as root:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/lib/bind/dns
# make obj && make depend && make && make install
# cd /usr/src/usr.sbin/named
# make obj && make depend && make && make install

3) To update your vulnerable system via a binary patch:

Systems running 7.4-RELEASE, 8.3-RELEASE, 8.2-RELEASE, 8.1-RELEASE,
or 9.0-RELEASE on the i386 or amd64 platforms can be updated via the
freebsd-update(8) utility:

# freebsd-update fetch
# freebsd-update install

4) Install and run BIND from the Ports Collection after the correction
date.  The following versions and newer versions of BIND installed from
the Ports Collection are not affected by this vulnerability:

        bind96-9.6.3.1.ESV.R7.2
        bind97-9.7.6.2
        bind98-9.8.3.2
        bind99-9.9.1.2

VI.  Correction details

The following list contains the revision numbers of each file that was
corrected in FreeBSD.

CVS:

Branch                                                           Revision
  Path
- -------------------------------------------------------------------------
RELENG_7
  src/contrib/bind9/lib/dns/resolver.c                       1.1.1.9.2.11
RELENG_7_4
  src/UPDATING                                            1.507.2.36.2.12
  src/sys/conf/newvers.sh                                  1.72.2.18.2.15
  src/contrib/bind9/lib/dns/resolver.c                    1.1.1.9.2.8.2.1
RELENG_8
  src/contrib/bind9/CHANGES                                      1.9.2.15
  src/contrib/bind9/lib/dns/resolver.c                            1.3.2.6
  src/contrib/bind9/lib/dns/zone.c                               1.6.2.10
  src/contrib/bind9/lib/isc/random.c                              1.2.2.4
  src/contrib/bind9/version                                      1.9.2.15
RELENG_8_3
  src/UPDATING                                             1.632.2.26.2.6
  src/sys/conf/newvers.sh                                   1.83.2.15.2.8
  src/contrib/bind9/lib/dns/resolver.c                        1.6.2.7.2.1
RELENG_8_2
  src/UPDATING                                            1.632.2.19.2.12
  src/sys/conf/newvers.sh                                  1.83.2.12.2.15
  src/contrib/bind9/lib/dns/resolver.c                        1.6.2.4.2.1
RELENG_8_1
  src/UPDATING                                            1.632.2.14.2.16
  src/sys/conf/newvers.sh                                  1.83.2.10.2.17
  src/contrib/bind9/lib/dns/resolver.c                        1.6.2.3.2.1
RELENG_9
  src/contrib/bind9/CHANGES                                      1.21.2.5
  src/contrib/bind9/lib/dns/resolver.c                           1.15.2.3
  src/contrib/bind9/lib/dns/zone.c                                1.7.2.3
  src/contrib/bind9/version                                      1.21.2.5
RELENG_9_0
  src/UPDATING                                              1.702.2.4.2.6
  src/sys/conf/newvers.sh                                    1.95.2.4.2.8
  src/contrib/bind9/lib/dns/resolver.c                           1.15.4.1
- -------------------------------------------------------------------------

Subversion:

Branch/path                                                      Revision
- -------------------------------------------------------------------------
stable/7/                                                         r239108
releng/7.4/                                                       r239108
stable/8/                                                         r238749
releng/8.3/                                                       r239108
releng/8.2/                                                       r239108
releng/8.1/                                                       r239108
stable/9/                                                         r238756
releng/9.0/                                                       r239108
- -------------------------------------------------------------------------

VII. References

https://kb.isc.org/article/AA-00729

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-3817

The latest revision of this advisory is available at
http://security.FreeBSD.org/advisories/FreeBSD-SA-12:05.bind.asc
Share Button