Olá pessoal que acompanha meu Blog e meu trabalho. Com muita felicidade, venho através deste post anunciar finalmente um agendamento
certo de nosso hangout sobre Desenvolvimento no pfSense. Vamos tratar do código do pfSense e tirar algumas dúvidas em relação ao futuro
do código desse projeto. Acompanhe-nos e saiba mais detalhes sobre esse Hangout.
O Hangout Tutorial acontecerá no dia 07/10/2014, com inicio as 20:00 e com termino previsto para as 22:00
Trata-se de um Hangout Tutorial onde faremos uma visão geral no código fonte do pfSense e estaremos tratando assuntos relacionados a customização do código, criação de pacotes e personalização de temas da interface web.
O usuário poderá explorar a shell do pfSense e conhecer algumas ferramentas uteis disponiveis para automatizar processos no pfSense.
É uma oportunidade de conhecer melhor a ferramenta e aprofundar melhor no funcionamento desse incrivel firewall.
Para participar deste Hangout, o minimo necessário do usuário é ter noção básica de programação, assim como estar familiarizado com o pfSense.
Segue alguns topicos que iremos abordar:
Breve introdução ao código fonte
Ferramentas usadas
Inicialização e core do sistema (Shellscript + PHP)
Interface web
API / Shell
Customização interface (temas, tradução, etc)
Pacotes
1 hora de debate sobre desenvolvimento com os participantes ativos
Iremos trabalhar já com a versão 2.1.5 (e também sobre o novo BETA do 2.2) do pfSense e iremos implementar uma mão na
massa de ambientes propostos pelo os participantes do Hangout.
Semelhantes aos outros Hangouts, as pessoas que querem participar ativamente do Hangout com perguntas, devem enviar um email para mim no endereço luizgustavo@luizgustavo.pro.br estarei fazendo uma cobrança de R$ 50,00 para a participação, o limite de participantes é de 10 pessoas. Envie um email solicitando o convite e a data em que irá participar que eu irei enviar instruções de pagamento (Paypal esta incluido).
Para a opção de Paypal, eu criei um botão para adquirir a inscrição para participação ativa:
Se você quiser fazer transferencia bancaria, podera utilizar as contas abaixo:
Nr. banco: 001
Banco do Brasil
AG: 4398-2
C/C: 10613-5
Luiz Gustavo dos Santos Costa
CPF: 084.219.847-48
Valor: R$ 50,00 Quem depositar, me envie comprovante (ou numero) para eu poder confirmar.
Quem não quiser fazer a participação ativa, poderá acompanhar em tempo real o Hangout através do Youtube, no dia do evento, uma hora antes, estarei divulgando o link para assistir.
O Hangout ficará disponivel no Youtube para visualização posterior
Se tiver dúvidas, envie-as por email para meu endereço ou poste um comentário abaixo.
Gitlab é um gerenciador de repositorio GIT para o ambiente WEB com a maioria das opções oferecidas pelo o Github. Com o Gitlab você terá a oportunidade de ter seu próprio gerenciador de repositorio, no seu ambiente de trabalho. O projeto é desenvolvido em Ruby com o framework Ruby on Rails.
# uname -a
FreeBSD gitlab.gugabsd 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
Gitlab 7.1 Stable
O que vamos precisar ?
Vamos usar o gerenciador de pacotes binarios PKG para suprir nossa demanda de pacotes dependentes do Gitlab, para isso, execute o comando abaixo para atualizar o pkg:
1234567891011121314151617181920
root@gitlab:~ # pkg update
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/freebsd:10:x86:64/latest, please wait...
Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done
Installing pkg-1.3.6: 100%
Message for pkg-1.3.6:
If you are upgrading from the old package format, first run:
# pkg2ng
Updating repository catalogue
Fetching meta.txz: 100% of 944 B
Fetching digests.txz: 100% of 2 MB
Fetching packagesite.txz: 100% of 5 MB
Adding new entries: 100%
Incremental update completed, 23436 packages processed:
0 packages updated, 0 removed and 23436 added.
Feito isto, estamos preparado para instalar os pacotes necessários:
root@gitlab:~ # su - pgsql
$ psql -d template1
psql (9.2.9)
Type "help" for help.
template1=# CREATE USER git CREATEDB;
CREATE ROLE
template1=# CREATE DATABASE gitlabhq_production OWNER git;
CREATE DATABASE
template1=# \q
Como vamos “enjaular” tudo em um usuário do sistema, vamos cria-lo no FreeBSD com o comando abaixo:
1
pw add user -n git -m -s /usr/local/bin/bash -c "GitLab"
E com o usuário criado, vamos fazer o uso do Ruby, que é a linguagem de construção do Gitlab através do RVM. Para isto, vamos virar usuário git e instalar o ambiente do RVM com uma versão do ruby:
Veja mais informações sobre o projeto RVM em: http://rvm.io/
Começamos então a clonar o repositorio do Gitlab:
12
cd
git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-1-stable gitlab
E então, começar a configurar o Gitlab:
Copie o arquivo de exemplo do Gitlab:
12
cd /home/git/gitlab
cp config/gitlab.yml.example config/gitlab.yml
ee config/gitlab.yml
Altere a entrada localhost para o hostname/dominio completo do seu servidor, por exemplo: gitlab.mundounix.com.br
Se for usar https, altere a porta de escuta de 80 para 443
Corriga o path do usuário git no arquivo de configuração para o formato /usr/home/git, já que o Gitlab não se da bem com links simbolicos. Faça isso nas linhas: 199, 208, 211, 212 do arquivo.
Atualize o cominho do binario do git para o padrão do FreeBSD: /usr/local/bin/git na linha 225
1
cp config/unicorn.rb.example config/unicorn.rb
ee config/unicorn.rb
Habilite o modo “cluster” se você tiver muito acesso, aumentando o número de “workes” de acordo com a carga do seu servidor (CPU, Memória, etc)
# Por padrão, a configuração gitlab-shell é gerado a partir de sua configuração do gitlab principal.
#
# Nota: Ao usar GitLab com HTTPS por favor alterar o seguinte:
# - Fornecer caminhos para os certificados ca_file e ca_path.
# - A opção "gitlab_url" deve apontar para o https do GitLab.
# - No caso de você estiver usando o certificado auto-assinado, altere a opção "self_signed_cert" para "true".
# Você pode rever (e modificar) a configuração gitlab-shell da seguinte forma:
ee /usr/home/git/gitlab-shell/config.yml
Não esqueça ainda de alterar nesse arquivo de configuração o path (caminho) do usuário git, de /home/git para /usr/home/git na linha 7 do arquivo.
root@gitlab:~ # /usr/local/etc/rc.d/gitlab.sh start
Starting both the GitLab Unicorn and Sidekiq.
The GitLab Unicorn web server with pid 36244 is running.
The GitLab Sidekiq job dispatcher with pid 36271 is running.
GitLab and all its components are up and running.
root@gitlab:~ # ps ax |grep ruby
36244 - S 0:10.35 ruby: unicorn_rails master -D -c /home/git/gitlab/config/unicorn.rb -E prod
36248 - S 0:00.00 ruby: unicorn_rails worker[0] -D -c /home/git/gitlab/config/unicorn.rb -E p
36249 - S 0:00.00 ruby: unicorn_rails worker[1] -D -c /home/git/gitlab/config/unicorn.rb -E p
36271 - Ss 0:10.15 ruby: sidekiq 2.17.0 gitlab [0 of 25 busy] (ruby)
root@gitlab:~ # sockstat -4l
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
git ruby 36249 13 tcp4 127.0.0.1:8080 *:*
git ruby 36248 13 tcp4 127.0.0.1:8080 *:*
git ruby 36244 13 tcp4 127.0.0.1:8080 *:*
pgsql postgres 11726 4 tcp4 127.0.0.1:5432 *:*
Vamos agora configurar um front para nosso Gitlab e para essa tarefa, vamos usar o Nginx. Porém, se você estiver familiarizado com outro servidor web, você poderá também configura-lo, basta consultar o endereço abaixo para mais informações:
Altere o arquivo de acordo com o seu hostname. Isso é importante !
Na linha 59, altere a entrada do proxy_pass para o endereço interno do Gitlab: http://127.0.0.1:8080;
Na linha 68, comente a entrada “gzip_static on;” colocando um “#” na frente. A versão do nginx compilada para o repositorio pkg não vem com suporte a gzip. Opcionalmente você poderá ativar isso compilando a versão do nginx para o ports.
Adicione agora no arquivo /usr/local/etc/nginx/nginx.conf, antes do ultimo “}”, na linha 117, o include para nosso arquivo de configuração do Gitlab:
1
include /usr/local/etc/nginx/gitlab.conf;
Alguns diretorios necessários para nosso ambiente:
E podemos agora configurar a inicialização do NGINX:
123456
# echo 'nginx_enable="YES"' >> /etc/rc.conf
# service nginx start
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.
Agora estamos com a configuração completa ! basta apontar seu navegador para o endereço do servidor e se logar com as credenciais padrões de inicialização:
A equipe de lançamento do projeto FreeBSD acaba de anunciar a disponibilidade
da versão 9.2 do FreeBSD. Este é o segundo release da arvore estavel da familia
9 que provê mudanças de melhorias e estabilidade em relação ao FreeBSD 9.1 e
introduz algumas novas caracteristicas, que podem ser resumidas abaixo:
O sistema de arquivo ZFS suporta agora o TRIM para ser usado em discos SSD.
Drivers de emulação virtio(4) foram adicionados no kernel GENERIC em arquiteturas
amd64 e i386.
O sistema de arquivo ZFS suporta agora compressão lz4.
OpenSSL foi atualizado para a versão 0.9.8y.
DTrace agora esta habilitado por padrão no kernel GENERIC.
DTrace foi atualizado para a versão 1.9.0.
Sendmail foi atualizado para a versão 8.14.7.
OpenSSH foi atualizado para a versão 6.2p2.
Para uma lista completa das novas funcionalidades e da resolução de problemas
conhecidos, acesse os links abaixo (em inglês):
Nossa trilha continua com o Pfsense e dessa vez iremos abordar um assunto que demanda
a aplicação em muitos ambientes de acesso multiplo de rede. É utilização do mecanismo
de Captive Portal.
O Hangout Tutorial acontecerá no dia 05/10 (Sábado), com inicio as 18:00 e com termino previsto para as 20:00
Captive Portal, como o proprio nome sugere, é um portal web de captura de conexão
que atua no ambiente de firewall, interceptando as tentativas de saida para a internet
de rede locais e gerenciando-as de forma a fornecer um controle de maquinas e usuários
utilizando o meio de conexão externo.
Num formato transparente, em que não é necessária a configuração de qualquer ferramenta
na maquina cliente, o Captive Portal apresenta no navegador do usuário uma interface
web para notificação e/ou autenticação afim de validar o seu acesso a rede.
Neste Hangout Tutorial, nós iremos abordar o conceito de utilização da ferramenta e
iremos aplicar em um ambiente de exemplo, as features que a ferramenta oferece, já
inclusive, atuando nas novas opções oferecidas pelo o Pfsense na versão 2.1, como
a possibilidade de se utilizar multiplos ambientes de Captive Portal.
Em resumo, iremos tratar dos seguintes topicos:
O que é Captive Portal ?
Porque utilizar ?
Interface de configuração;
Integração com Radius;
Pacote FreeRadius;
Mão na massa !
Para participar deste Hangout, o minimo necessário do usuário é ter noção básica
de uso da interface web e ter noção básica de rede (TCP, pacotes de rede, dns, etc)
Iremos trabalhar já com a versão 2.1 do Pfsense e iremos implementar uma mão na
massa de ambientes propostos pelo os participantes do Hangout.
Semelhantes aos outros Hangouts, as pessoas que querem participar ativamente do Hangout com perguntas, devem enviar um email para mim no endereço luizgustavo@luizgustavo.pro.br estarei fazendo uma cobrança de R$ 50,00 para a participação, o limite de participantes é de 10 pessoas. Envie um email solicitando o convite e a data em que irá participar que eu irei enviar instruções de pagamento (Paypal esta incluido).
Algumas pessoas já garantiram vaga para este Hangout, então são poucas vagas.
Para a opção de Paypal, eu criei um botão para adquirir a inscrição para participação ativa:
Se você quiser fazer transferencia bancaria, podera utilizar as contas abaixo:
Nr. banco: 341
Banco Itau
AG: 7455
C/C: 03018-4
Luiz Gustavo dos Santos Costa
Nr. banco: 033
Banco Santander
AG: 3822
C/C: 01.006498.3
Luiz Gustavo dos Santos Costa
CPF: 084.219.847-48
Valor: R$ 50,00 Quem depositar, me envie comprovante (ou numero) e a data do Hangout que quer participar para eu poder confirmar.
Quem não quiser fazer a participação ativa, poderá acompanhar em tempo real o Hangout através do Youtube, no dia do evento, uma hora antes, estarei divulgando o link para assistir.
O Hangout ficará disponivel no Youtube para visualização posterior
Se tiver dúvidas, envie-as por email para meu endereço ou poste um comentário abaixo.
A equipe de desenvolvimento do firewall Pfsense, com muito orgulho, anuncia no dia de hoje
o lançamento da versão 2.1 do Pfsense, trazendo uma série de novidades, como o suporte a
IPv6 nativo na interface de configuração.
Algumas mudanças se destacam:
Multiplos ambientes de Captive Portal
PBI (do PCBSD) como gerenciador de pacotes de softwares
Atualização do sistema base do FreeBSD para a versão 8.3
Adição de suporte a mais hardwares
PHP atualizado para a versão 5.3
Suporte a outras linguas (pt_BR já incluido)
Entre muitas outras alterações documentadas no blog do projeto.
Mais um Hangout Tutorial finalizado e com a dignissima participação em sala
cheia de vários usuários, muito obrigado a todos que participaram interativamente
e também via youtube ao-vivo. Foi bem legal.
O Hangout de hoje tratou do tema de controle de banda ou qualidade de serviço
no Pfsense, entitulado “Traffic Shaper”, abordamos os conceitos de utilização
de cada tipo de algoritmo e funcionalidade de cada um no ambiente do Pfsense.
Tivemos a oportunidade de criar cenários de utilização e aplicação de regras para
melhorar o controle de trafego da rede e elucidamos várias duvidas pertinentes à
utilização de QOS.
Confira abaixo, a integra desse Hangout:
E se você tiver alguma dúvida, poste um comentário abaixo.
Mais uma vez, só tenho a agradecer as pessoas que prestigiam o trabalho que tenho feito em cima dos Hangouts e segue mais uma gravação
de Hangout Tutorial sobre Freebsd.
Essa é minha primeira etapa com o assunto Freebsd, abordando hoje um pouco sobre o assunto ZFS num modo avançado, implementando
o uso dele como sistema raiz do FreeBSD com o auxilio do mfsbsd (http://mfsbsd.vx.sk/).
Tirando dúvidas e abordando assuntos em relação a configuração do ZFS e metodos como RaidZ.