Páginas

sexta-feira, 28 de janeiro de 2011

FreeBSD: Atualização Binária

# freebsd-update upgrade -r 8.1-RELEASE

quarta-feira, 26 de janeiro de 2011

FreeBSD: Finding Your Application

# whereis lsof
lsof: /usr/ports/sysutils/lsof
This tells us that lsof (a system utility) can be found in the /usr/ports/sysutils/lsof directory.

Additionally, you can use a simple echo(1) statement to find where a port exists in the ports tree. For example:

# echo /usr/ports/*/*lsof*
/usr/ports/sysutils/lsof

http://www.freebsd.org/doc/handbook/ports-finding-applications.html

segunda-feira, 24 de janeiro de 2011

Squid autenticar em MySQL - Part 2

Olá povo!

Mais uma vez aqui para mais uma aventurazinha =P

Na faculdade surgiu um trabalho de final de ano que agruparia várias matérias num único projeto, chamado Projeto Integrador, o qual consistia em fazer um autenticador (helper) para o Squid em C para autenticar no MySQL.
Me baseando num outro projeto[1] que já existia. Como era pra faculdade eu dei uma melhorada na sintaxe e deixei ele verboso pois o professor de C queria um log bem bonito (rs).

How it works:

1. Instalando o Squid, MySQL, GCC e libs.
2. Source do Helper.
3. Compilando o Helper.
4. Estrutura do banco Squid.
5. Configurando o Squid.
6. Inserindo e testando usuários.
7. Considerações.
8. Links



1. Instalando o SQUID.

Na faculdade os professores pediram para usar o Debian (apesar de gostar mais do FreeBSD), os caras mandam (rs). Depois do linux instalado na máquina e também


# apt-get install squid
# apt-get install mysql-server
# apt-get install libmysqlclient15-dev
# apt-get install libmysqlclient15off
# apt-get install gcc


2. Source do Helper



#include
#include
#include
#include

#define HOST "localhost"
#define USER "root"
#define PASS "root"
#define DB "squid"

#define TAB "usuarios"
#define USER_TAB "login"
#define PASS_TAB "senha"
#define ACT_TAB "status"

main() {
char query[255], *senha, *user;;
MYSQL_RES *resp;
MYSQL conexao;
FILE *log;
char buffer[255];
int res;

if((log=fopen("/var/log/mysql_auth.log","a")) == NULL ) {
(void)printf("ERR\n");
}
/* joga a saida pro standart out pro squid ler */
if( (setvbuf(stdout, NULL, _IOLBF, 0)) != 0 ) {
return;
}

mysql_init(&conexao);

while(1) {
if((log=fopen("/var/log/mysql_auth.log","a")) == NULL ) {
(void)printf("ERR\n");
}
if(mysql_real_connect(&conexao, HOST,USER,PASS,DB,0,NULL,0)) {
if((fgets(buffer, 255, stdin)) == NULL ) {
break;
}
/* encontra a quebra de linha e aponta a senha */
if((senha = strchr(buffer, '\n')) != NULL ) {
*senha = '\0';
}

if((senha = strchr(buffer, ' ')) == NULL ) {
(void) printf("ERR\n");
fprintf(log,"Senha vazia\n");
}
*senha++='\0';

sprintf(query, "SELECT " USER_TAB " FROM " TAB " WHERE " USER_TAB "='%s' AND " PASS_TAB "=PASSWORD('%s') AND " ACT_TAB "='1'",buffer, senha);

fprintf(log,"Conectado ao banco\n");
if((res = mysql_query(&conexao, query)) == 0) {
fprintf(log,"Select Efetuado com Sucesso:\n %s\n", query);
resp = mysql_store_result(&conexao);
fprintf(log,"resposta da consulta: %i\n", resp);
} else {
(void) printf("ERR\n");
fprintf(log,"Erro %d: %s\n", mysql_errno(&conexao),mysql_error(&conexao));
continue;
}

if(resp -> row_count != 0) { // verifica se o objeto row_count dentro de resp eh diferente de zero pra responder
(void) printf("OK\n");
fprintf(log,"Usuário %s login: OK\n",buffer);
mysql_free_result(resp);
mysql_close(&conexao);
} else {
(void) printf("ERR\n");
fprintf(log,"Usuário %s login : Denied\n", buffer);
}
fclose(log);
exit(0);

} else {
(void) printf("ERR\n");
fprintf(log,"Erro %d: %s\n", mysql_errno(&conexao),mysql_error(&conexao));
}
}
}



Porém como o blogspot não respeita identação ¬¬ está tudo fora do lugar. Caso queiram baixem o fonte em http://neo.bs2.com.br/integrador/autenticador.c

3. Compilando o helper

É muito simples:

# gcc -l mysqlclient autenticador.c -o autenticador

mova-o para uma pasta onde o squid tem acesso ex.: /etc/squid/

4. Estrutura do banco MySQL para o Squid:



CREATE DATABASE IF NOT EXISTS squid;
USE squid;
DROP TABLE IF EXISTS `usuarios`;
CREATE TABLE `usuarios` (
`login` varchar(40) NOT NULL,
`senha` varchar(255) NOT NULL,
`status` int(11) NOT NULL default '1',
UNIQUE KEY `login` (`login`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;


Salve-o como banco.sql.
Insira-o no banco com o comando:


# mysql -uroot -proot -e"source banco.sql"


5. Configurando o Squid.

Tomando como padrão que a sua rede seja 192.168.0.0, será necessário colocar as seguintes linhas no squid.conf



auth_param basic program "/etc/squid/autenticador"
auth_param basic realm "Proxy - Digite usuário/senha"
auth_param basic children 5
auth_param basic casesensitive off

acl senha proxy_auth REQUIRED
acl rede src 192.168.0.0./24

http_access allow rede senha


6. Inserindo e testando usuários.

Vamos inserir um usuário teste:


# mysql -uroot -proot squid
> INSERT INTO usuarios VALUES ('teste',PASSWORD('teste'),1);
> QUIT


Crie o arquivo de LOG e dê permissão para que o squid grave nele


# touch /var/log/mysql_auth.log
# chmod 777 /var/log/mysql_auth.log



Inicialize o SQUID:


# /etc/init.d/squid start


Configure seu navegador com o IP e porta do proxy e faça o teste.
No banco se você quiser apenas desativar um usuário sem deletá-lo basta trocar o valor no campo status para 0 (zero).

Facilitei a sua vida? esse software está sobre a Licensa BeerWare... ou seja me paga uma cerveja =]

7. Considerações

Como é um trabalho para a faculdade achei interessante documentar, apesar de não ter tido tempo de escrever este artigo antes de entregar (pois, poderia usá-lo no trabalho), foi bacana desenvolver isso.

Espero que ajude outras pessoas também, que precisem de uma solução como esta onde precisa-se buscar os usuários do squid no banco MySQL.

8. Links
[1] http://www.devet.org/squid/proxy_auth/

Squid autenticar em MySQL

Se alguem tiver interesse eu tenho isso em php e uso a mesma base do email
para autenticar o squid e o email pegando o campo de nome e senha a senha
pode estar em crypt, a função crypt do mysql,md5, e blowfish todos essas
padroe de senha eu ja testei com o php e funciona sem problema

segue o codigo logo abaixo do mysql_auth que é só copiar e dar pemição de
execução, ele funciona em linux,windows,freebsd

#!/usr/local/bin/php


No squid.conf

auth_param basic program /usr/local/bin/mysql_auth
auth_param basic children 5
auth_param basic realm Login Proxy Cache
auth_param basic credentialsttl 2 hour


acl autenticar proxy_auth REQUIRED


http_access allow autenticar


esse esquema é so para o login as acl eu faço por arquivo que edito via php
e via sudo dou o reload no squid

talvez na~oseja a molhar opção mais pode lhe atender !!

quinta-feira, 20 de janeiro de 2011

FreeBSD: Dica Rápida

Dicas Rápidas:
Quer saber todos os arquivos que um dado port instalou? Use pkg_info -L . Quer reler a mensagem de pós-instalação de um port já instalado? Use pkg_info -D . Quer consultar informações de um port sem precisar mencionar seu nome e versão exatamente como registrados? Use pkg_info -x , por exemplo, pkg_info -L -x perl

quarta-feira, 19 de janeiro de 2011

Netmask Converter

Bitmask (Bits) Dotted Decimal Hexadecimal Binary
/0 0.0.0.0 0x00000000 00000000 00000000 00000000 00000000
/1 128.0.0.0 0x80000000 10000000 00000000 00000000 00000000
/2 192.0.0.0 0xc0000000 11000000 00000000 00000000 00000000
/3 224.0.0.0 0xe0000000 11100000 00000000 00000000 00000000
/4 240.0.0.0 0xf0000000 11110000 00000000 00000000 00000000
/5 248.0.0.0 0xf8000000 11111000 00000000 00000000 00000000
/6 252.0.0.0 0xfc000000 11111100 00000000 00000000 00000000
/7 254.0.0.0 0xfe000000 11111110 00000000 00000000 00000000
/8 255.0.0.0 0xff000000 11111111 00000000 00000000 00000000
/9 255.128.0.0 0xff800000 11111111 10000000 00000000 00000000
/10 255.192.0.0 0xffc00000 11111111 11000000 00000000 00000000
/11 255.224.0.0 0xffe00000 11111111 11100000 00000000 00000000
/12 255.240.0.0 0xfff00000 11111111 11110000 00000000 00000000
/13 255.248.0.0 0xfff80000 11111111 11111000 00000000 00000000
/14 255.252.0.0 0xfffc0000 11111111 11111100 00000000 00000000
/15 255.254.0.0 0xfffe0000 11111111 11111110 00000000 00000000
/16 255.255.0.0 0xffff0000 11111111 11111111 00000000 00000000
/17 255.255.128.0 0xffff8000 11111111 11111111 10000000 00000000
/18 255.255.192.0 0xffffc000 11111111 11111111 11000000 00000000
/19 255.255.224.0 0xffffe000 11111111 11111111 11100000 00000000
/20 255.255.240.0 0xfffff000 11111111 11111111 11110000 00000000
/21 255.255.248.0 0xfffff800 11111111 11111111 11111000 00000000
/22 255.255.252.0 0xfffffc00 11111111 11111111 11111100 00000000
/23 255.255.254.0 0xfffffe00 11111111 11111111 11111110 00000000
/24 255.255.255.0 0xffffff00 11111111 11111111 11111111 00000000
/25 255.255.255.128 0xffffff80 11111111 11111111 11111111 10000000
/26 255.255.255.192 0xffffffc0 11111111 11111111 11111111 11000000
/27 255.255.255.224 0xffffffe0 11111111 11111111 11111111 11100000
/28 255.255.255.240 0xfffffff0 11111111 11111111 11111111 11110000
/29 255.255.255.248 0xfffffff8 11111111 11111111 11111111 11111000
/30 255.255.255.252 0xfffffffc 11111111 11111111 11111111 11111100
/31 255.255.255.254 0xfffffffe 11111111 11111111 11111111 11111110
/32 255.255.255.255 0xffffffff 11111111 11111111 11111111 11111111

http://www.pawprint.net/designresources/netmask-converter.php

segunda-feira, 10 de janeiro de 2011

Mudar favicon

#Vou usar o meu endereço real e você muda para onde está localizado o seu .ico.
#
#Copiei e cola as duas linhas logo abaixo do seu <br />#<LINK REL=”ICON” TYPE=”image/ico” HREF=”http://www.danosse.com/favicon.ico”> <br />#<LINK REL=”SHORTCUT ICON” HREF=”http://www.danosse.com/favicon.ico”> <br /> <br />#Depois pegue sua logomarca (Em PNG, JPG ou GIF) e converta para .ico nesse site: #http://www.prodraw.net/favicon/index.php <br /> <br />#Salve o seu .ico convertido como “favicon.ico” e jogue na raiz do seu FTP. <br /> <br />#Teste se o caminho do seu ico está correto: http://www.danosse.com/favicon.ico <br />#E pronto! <br />#A “mulesta do cachorro” do INTERNET EXPLORER agora consegue entender que é para trocar #o icone padrão pela sua logomarca, toda vez que o site carregar! <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Postado por <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/11027430081386359438' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/11027430081386359438' rel='author' title='author profile'> <span itemprop='name'>lex</span> </a> </span> </span> <span class='post-timestamp'> às <meta content='http://lexbsd.blogspot.com/2011/01/mudar-favicon.html' itemprop='url'/> <a class='timestamp-link' href='https://lexbsd.blogspot.com/2011/01/mudar-favicon.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2011-01-10T16:41:00-08:00'>16:41</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://lexbsd.blogspot.com/2011/01/mudar-favicon.html#comment-form' onclick=''> Nenhum comentário: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-281190587'> <a href='https://www.blogger.com/post-edit.g?blogID=518833131859368381&postID=2358846321093694492&from=pencil' title='Editar postagem'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> </div> <div class='blog-pager' id='blog-pager'> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='https://lexbsd.blogspot.com/search?updated-max=2011-03-02T07:00:00-08:00&max-results=4&reverse-paginate=true' id='Blog1_blog-pager-newer-link' title='Postagens mais recentes'>Postagens mais recentes</a> </span> <span id='blog-pager-older-link'> <a class='blog-pager-older-link' href='https://lexbsd.blogspot.com/search?updated-max=2011-01-10T16:41:00-08:00&max-results=4' id='Blog1_blog-pager-older-link' title='Postagens mais antigas'>Postagens mais antigas</a> </span> <a class='home-link' href='https://lexbsd.blogspot.com/'>Página inicial</a> </div> <div class='clear'></div> <div class='blog-feeds'> <div class='feed-links'> Assinar: <a class='feed-link' href='https://lexbsd.blogspot.com/feeds/posts/default' target='_blank' type='application/atom+xml'>Postagens (Atom)</a> </div> </div> </div></div> </div> </div> <div class='column-left-outer'> <div class='column-left-inner'> <aside> <div class='sidebar section' id='sidebar-left-1'><div class='widget BlogSearch' data-version='1' id='BlogSearch1'> <h2 class='title'>Pesquisar este blog</h2> <div class='widget-content'> <div id='BlogSearch1_form'> <form action='https://lexbsd.blogspot.com/search' class='gsc-search-box' target='_top'> <table cellpadding='0' cellspacing='0' class='gsc-search-box'> <tbody> <tr> <td class='gsc-input'> <input autocomplete='off' class='gsc-input' name='q' size='10' title='search' type='text' value=''/> </td> <td class='gsc-search-button'> <input class='gsc-search-button' title='search' type='submit' value='Pesquisar'/> </td> </tr> </tbody> </table> </form> </div> </div> <div class='clear'></div> </div><div class='widget BlogArchive' data-version='1' id='BlogArchive1'> <h2>Arquivo do blog</h2> <div class='widget-content'> <div id='ArchiveList'> <div id='BlogArchive1_ArchiveList'> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/'> 2013 </a> <span class='post-count' dir='ltr'>(18)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/09/'> setembro </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/06/'> junho </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/05/'> maio </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/04/'> abril </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/03/'> março </a> <span class='post-count' dir='ltr'>(9)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2013/01/'> janeiro </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/'> 2012 </a> <span class='post-count' dir='ltr'>(12)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/12/'> dezembro </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/10/'> outubro </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/07/'> julho </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/06/'> junho </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/04/'> abril </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/03/'> março </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2012/01/'> janeiro </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/'> 2011 </a> <span class='post-count' dir='ltr'>(76)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/12/'> dezembro </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/11/'> novembro </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/10/'> outubro </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/09/'> setembro </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/08/'> agosto </a> <span class='post-count' dir='ltr'>(12)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/07/'> julho </a> <span class='post-count' dir='ltr'>(6)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/06/'> junho </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/05/'> maio </a> <span class='post-count' dir='ltr'>(12)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/04/'> abril </a> <span class='post-count' dir='ltr'>(3)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/03/'> março </a> <span class='post-count' dir='ltr'>(13)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/02/'> fevereiro </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2011/01/'> janeiro </a> <span class='post-count' dir='ltr'>(7)</span> <ul class='posts'> <li><a href='https://lexbsd.blogspot.com/2011/01/freebsd-atualizacao-binaria.html'>FreeBSD: Atualização Binária</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/freebsd-finding-your-application.html'>FreeBSD: Finding Your Application</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/squid-autenticar-em-mysql-part-2.html'>Squid autenticar em MySQL - Part 2</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/squid-autenticar-em-mysql.html'>Squid autenticar em MySQL</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/freebsd-dica-rapida.html'>FreeBSD: Dica Rápida</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/netmask-converter.html'>Netmask Converter</a></li> <li><a href='https://lexbsd.blogspot.com/2011/01/mudar-favicon.html'>Mudar favicon</a></li> </ul> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/'> 2010 </a> <span class='post-count' dir='ltr'>(75)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/12/'> dezembro </a> <span class='post-count' dir='ltr'>(6)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/11/'> novembro </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/10/'> outubro </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/09/'> setembro </a> <span class='post-count' dir='ltr'>(9)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/08/'> agosto </a> <span class='post-count' dir='ltr'>(11)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/07/'> julho </a> <span class='post-count' dir='ltr'>(9)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/06/'> junho </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/05/'> maio </a> <span class='post-count' dir='ltr'>(11)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/04/'> abril </a> <span class='post-count' dir='ltr'>(6)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/03/'> março </a> <span class='post-count' dir='ltr'>(11)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='https://lexbsd.blogspot.com/2010/02/'> fevereiro </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> </li> </ul> </div> </div> <div class='clear'></div> </div> </div><div class='widget PopularPosts' data-version='1' id='PopularPosts1'> <h2>Postagens populares</h2> <div class='widget-content popular-posts'> <ul> <li> <div class='item-content'> <div class='item-title'><a href='https://lexbsd.blogspot.com/2010/12/dividir-e-juntar-arquivos-targz.html'>Dividir e Juntar arquivos tar.gz</a></div> <div class='item-snippet'>Primeiro, nós precisamos compactar o arquivo com o comando: tar -cvvzf .tar.gz /caminho/da/pasta O comando anterior compacta os arquivos da ...</div> </div> <div style='clear: both;'></div> </li> <li> <div class='item-content'> <div class='item-title'><a href='https://lexbsd.blogspot.com/2011/08/zimbra-restaurar-msg.html'>ZIMBRA: Restaurar .MSG</a></div> <div class='item-snippet'>FONTE: http://tretasonline.blogspot.com/2011/02/para-comecar.html Tivemos um problema em um cliente que possui o pacote de colaboração do ...</div> </div> <div style='clear: both;'></div> </li> <li> <div class='item-content'> <div class='item-title'><a href='https://lexbsd.blogspot.com/2010/05/mikrotik-user-manager-hotspot.html'>Mikrotik: User manager + hotspot</a></div> <div class='item-snippet'>Olá pessoal, mais uma vez venho, de acordo com algumas dúvidas de amigos, trazer mais um material sobre o MikroTik. O User Mananger, para qu...</div> </div> <div style='clear: both;'></div> </li> </ul> <div class='clear'></div> </div> </div><div class='widget Profile' data-version='1' id='Profile1'> <h2>Colaboradores</h2> <div class='widget-content'> <ul> <li><a class='profile-name-link g-profile' href='https://www.blogger.com/profile/11027430081386359438' style='background-image: url(//www.blogger.com/img/logo-16.png);'>lex</a></li> <li><a class='profile-name-link g-profile' href='https://www.blogger.com/profile/05963576358336404495' style='background-image: url(//www.blogger.com/img/logo-16.png);'>lex2</a></li> </ul> <div class='clear'></div> </div> </div></div> </aside> </div> </div> <div class='column-right-outer'> <div class='column-right-inner'> <aside> </aside> </div> </div> </div> <div style='clear: both'></div> <!-- columns --> </div> <!-- main --> </div> </div> <div class='main-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> <footer> <div class='footer-outer'> <div class='footer-cap-top cap-top'> <div class='cap-left'></div> <div class='cap-right'></div> </div> <div class='fauxborder-left footer-fauxborder-left'> <div class='fauxborder-right footer-fauxborder-right'></div> <div class='region-inner footer-inner'> <div class='foot no-items section' id='footer-1'></div> <!-- outside of the include in order to lock Attribution widget --> <div class='foot section' id='footer-3' name='Rodapé'><div class='widget Attribution' data-version='1' id='Attribution1'> <div class='widget-content' style='text-align: center;'> Tema Viagem. Tecnologia do <a href='https://www.blogger.com' target='_blank'>Blogger</a>. </div> <div class='clear'></div> </div></div> </div> </div> <div class='footer-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </footer> <!-- content --> </div> </div> <div class='content-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </div> <script type='text/javascript'> window.setTimeout(function() { document.body.className = document.body.className.replace('loading', ''); }, 10); </script> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/4290687098-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AOuZoY514LduV1SNPQ8Wo8LFjI-Xhvvefg:1714900211788';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d518833131859368381','//lexbsd.blogspot.com/2011/01/','518833131859368381'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '518833131859368381', 'title': '/usr/home/lex', 'url': 'https://lexbsd.blogspot.com/2011/01/', 'canonicalUrl': 'http://lexbsd.blogspot.com/2011/01/', 'homepageUrl': 'https://lexbsd.blogspot.com/', 'searchUrl': 'https://lexbsd.blogspot.com/search', 'canonicalHomepageUrl': 'http://lexbsd.blogspot.com/', 'blogspotFaviconUrl': 'https://lexbsd.blogspot.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': false, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'pt-BR', 'localeUnderscoreDelimited': 'pt_br', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22/usr/home/lex - Atom\x22 href\x3d\x22https://lexbsd.blogspot.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22/usr/home/lex - RSS\x22 href\x3d\x22https://lexbsd.blogspot.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22/usr/home/lex - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/518833131859368381/posts/default\x22 /\x3e\n', 'meTag': '', 'adsenseClientId': 'ca-pub-8336016958477819', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': false, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/a26ecadc30bb77e6', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Gerar link', 'key': 'link', 'shareMessage': 'Gerar link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Compartilhar no Facebook', 'target': 'facebook'}, {'name': 'Postar no blog!', 'key': 'blogThis', 'shareMessage': 'Postar no blog!', 'target': 'blog'}, {'name': 'Twitter', 'key': 'twitter', 'shareMessage': 'Compartilhar no Twitter', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Compartilhar no Pinterest', 'target': 'pinterest'}, {'name': 'E-mail', 'key': 'email', 'shareMessage': 'E-mail', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27pt_BR\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Leia mais', 'pageType': 'archive', 'pageName': 'janeiro 2011', 'pageTitle': '/usr/home/lex: janeiro 2011'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Editar', 'linkCopiedToClipboard': 'Link copiado para a \xe1rea de transfer\xeancia.', 'ok': 'Ok', 'postLink': 'Link da postagem'}}, {'name': 'template', 'data': {'name': 'Travel', 'localizedName': 'Viagem', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': false, 'variant': 'road', 'variantId': 'road'}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': '/usr/home/lex', 'description': 'Utilizado como mem\xf3ria auxiliar.', 'url': 'https://lexbsd.blogspot.com/2011/01/', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': false, 'isArchive': true, 'isLabelSearch': false, 'archive': {'year': 2011, 'month': 1, 'rangeMessage': 'Mostrando postagens de janeiro, 2011'}}}]); _WidgetManager._RegisterWidget('_NavbarView', new _WidgetInfo('Navbar1', 'navbar', document.getElementById('Navbar1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_PageListView', new _WidgetInfo('PageList1', 'crosscol', document.getElementById('PageList1'), {'title': 'P\xe1ginas', 'links': [{'isCurrentPage': false, 'href': 'https://lexbsd.blogspot.com/', 'title': 'In\xedcio'}, {'isCurrentPage': false, 'href': 'https://lexbsd.blogspot.com/p/sobre.html', 'id': '4105569855845009281', 'title': 'Sobre'}], 'mobile': false, 'showPlaceholder': true, 'hasCurrentPage': false}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/2706874810-lbx__pt_br.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/13464135-lightbox_bundle.css'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogSearchView', new _WidgetInfo('BlogSearch1', 'sidebar-left-1', document.getElementById('BlogSearch1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar-left-1', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Carregando\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_PopularPostsView', new _WidgetInfo('PopularPosts1', 'sidebar-left-1', document.getElementById('PopularPosts1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_ProfileView', new _WidgetInfo('Profile1', 'sidebar-left-1', document.getElementById('Profile1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_AttributionView', new _WidgetInfo('Attribution1', 'footer-3', document.getElementById('Attribution1'), {}, 'displayModeFull')); </script> </body> </html>