Rss

Archives for : Ports

Erro ao instalar o port security/openvpn-auth-ldap no FreeBSD 9

Buenas;

No FreeBSD 9 o port security/openvpn-auth-ldap está marcado como BROKEN devido ao seguinte erro na fase de configure do port.

configure: WARNING: Check library not found. Unit tests will not be built or run.
checking for openvpn-plugin.h... no
configure: error: Could not locate a working openvpn source tree.
See `config.log' for more details.
===> Script "configure" failed unexpectedly.
Please report the problem to snb@FreeBSD.org [maintainer] and attach the
"/usr/ports/security/openvpn-auth-ldap/work/auth-ldap-2.0.3/config.log"
including the output of the failure of your make command. Also, it might be
a good idea to provide an overview of all packages installed on your system
(e.g. a /usr/sbin/pkg_info -Ea).
*** Error code 1

Olhando no config.log temos:

configure:5511: checking for openvpn-plugin.h
configure:5544: cc -o conftest -O2 -pipe -DLDAP_DEPRECATED -fno-strict-aliasing -I/usr/ports/security/openvpn/work/openvpn-2.3.0 -export-dynamic conftest.c >&5
conftest.c:15:34: error: openvpn-plugin.h: No such file or directory

Outro erro que também pode acontecer é o seguinte:

checking how to run the Objective C preprocessor... /lib/cpp
configure: error: Objective C preprocessor "/lib/cpp" fails sanity check

Para resolver essa questão, basta aplicarmos um patch no port para que o mesmo funcione corretamente.

# cd /usr/ports/security/openvpn-auth-ldap
# wget http://conceicao.eti.br/pub/openvpn-auth-ldap.patch
# patch -p0 < openvpn-auth-ldap.patch
# make && make install

Erro “tar: Unrecognized archive format” no FreeBSD 8.2

Dica rápida.

Problema:

Ao tentar instalar um Port no FreeBSD 8.2, estou recebendo o seguinte erro:

tar: Unrecognized archive format

Investigando um pouco, descobri que a versão do bsdtar em questão não consegue reconhecer automaticamente a compressão “xz” entre -7 e -9.

Como medida de contorno, enquanto não é possível realizar o upgrade da versão do FreeBSD para a 8.3, pode-se realizar o seguinte procedimento:

Instalar o port archivers/libarchive e então adicionar a linha abaixo no arquivo /etc/make.conf:

TAR=/usr/local/bin/bsdtar

Com isso, a instalação do Port funcionou corretamente.

Mais informações.

UPDATE

Caso na compilação do pacote archivers/libarchive aconteça o erro abaixo:

error: spawn.h: No such file or directory

Você deverá executar os seguintes comandos:

make clean
make ac_cv_header_spawn_h=no
make install

Proxy Transparente com Squid e PF no OpenBSD

E ai pessoal, tudo certo?

Então, aqui vamos dar uma olhada na instalação e configuração de um proxy Squid operando como transparente e também as regras que serão necessárias adicionar nas regras de firewall (PF).

Vamo lá..

Instalação

Realizei a instalação pelo package manager do OpenBSD onde tem os pacotes pré-compilados, mas nada impede de você instalar pelo Ports.

Package Manager (pkg_add)

Primeiro de tudo vamos exportar a variável com o mirror onde se encontra os pacotes:

# export PKG_PATH=ftp://ftp.das.ufsc.br/pub/OpenBSD/4.4/packages/i386/

Vamos instalar o pacote:

# pkg_add -i -v squid

A versão do Squid que instalei aqui foi a squid-2.7.STABLE3-ldap.

Ports

# cd /usr/ports/www/squid
# env FLAVOR=transparent make install

Configuração

Squid

Vamos configurar o Squid para subir no boot.

Edite o arquivo /etc/rc.local com seu editor de texto e adicione as linhas abaixo logo após # Add your local startup actions here.

# Squid
/usr/local/sbin/squid

Vamos editar agora o arquivo de configuração do Squid, que é o /etc/squid/squid.conf.

Faremos uma configuração básica do Squid.

http_port 3128 transparent

visible_hostname pr0xy.conceicao.eti.br

error_directory /usr/local/share/squid/errors/Portuguese

# Logs
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log

# SVN
extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND

# ACLs
acl all src 0.0.0.0/0.0.0.0
acl rede src 192.168.1.0/24
acl SSL_Ports port 443 563 2096
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

#Pessoas com acesso total
acl vips arp "/etc/squid/controle.vips"

#BlackList
acl blacklist dstdomain "/etc/squid/controle.blacklist"

##
# Permite ou Nega

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access allow vips
http_access deny blacklist

http_access allow rede
http_access deny all
##

Obs.: Crie os arquivos /etc/squid/controle.vips e /etc/squid/controle.blacklist

Agora temos que iniciar o Squid com a opção -z para que seja criado os diretórios de swap.

# /usr/local/sbin/squid -z

Pronto, agora já podemos iniciar o squid!

# /usr/local/sbin/squid

Sempre que for feita uma alteração no arquivo de configuração do Squid, devemos executar o comando a seguir para que as configurações sejam recarregadas:

# /usr/local/sbin/squid -k reconfigure

PF

O arquivo de configuração do PF é o /etc/pf.conf (padrão). Adicione/adapte as seguintes regras:

rdr on $int_if  inet proto tcp from any to any port www-> 127.0.0.1 port 3128

pass in on $int_if inet proto tcp from any to 127.0.0.1 port 3128
pass out on $ext_if inet proto tcp from any to any port www

É preciso também liberar o acesso do Squid ao /dev/pf para que o mesmo consulte o filtro de pacotes já que o padrão é somente o root ter acesso. O Squid roda com o grupo _squid.

# chgrp _squid /dev/pf
# chmod g+rw /dev/pf

Então é isso.. qualquer coisa é só dar um grito. =]

T+

Referência: http://www.openbsd-br.org/index.php?q=node/15