Add Me!Close Menu Navigation
Add Me!Open Categories Menu

conectando-se ao firebird através do zebedee

O Zebedee cria conexões seguras entre duas máquinas, criptografando e comprimindo os dados (por TCP/IP ou UDP). Aqui eu usarei para me conectar ao Firebird. Precisei disso quando fui conectar os servidores de duas lojas para replicação de dados.

Você também achou estranho o nome do programa né?.. Vem daqui:
Zlib, biblioteca para compressão de dados;
Blowfish, algorítimo para criptografia;
Diffie-Hellman, controle de chaves de segurança.

Z, B e D dá ZeBeDee

Vamos la, baixa ele aí.

Legendas…

detached (true, false) = mostrar/ocultar mensagens
ipmode (tcp, udp ou both) = cumunicação por tcp/udp
compression = nível da compressão
keylength = tamanho (em bits) máximo das chaves de criptografia do blowfish
keygenlevel = nível de segurança nas chaves privadas (entre 0 e 2)
redirect none = desliga os redirecionamentos

Agora no diretório que ele foi instalado temos o arquivo “server.zbd”

detached true # mostrar (true) ou ocultar (false) mensagens
server true
ipmode tcp # cumunicação por “tcp”, “udp” ou “both”
compression zlib:9 # nível da compressão
keylength 256 # tamanho (wm bits) máximo das chaves de criptografia do blowfish
keygenlevel 2 # nível de segurança nas chaves privadas (entre 0 e 2)
redirect none # desliga os redirecionamentos
target localhost:3050 # destino, IP:porta

# target, onde o zebedee achará o firebird.
# Se o servidor zebedee for também o servidor firebird,
# o target será o “localhost”, ou “127.0.0.1″.
# A porta padrão do firebird é a 3050.

No computador cliente criaremos o arquivo “client.zbd”

detached false
server false
ipmode tcp
compression zlib:9
keylength 256
keygenlevel 2
maxbufsize 16383
listenip localhost
serverhost meuservidor.no-ip.org # ip/dns do servidor
tunnel 3051:localhost:3050

# serverhost, ip/dns do seu servidor zebedee. Este é o IP na internet.
# Logo, você terá que saber o IP da sua conexão,
# ou usar um serviço de DNS estático (dica, usa o no-ip).

# tunnel,
# 3051 (porta que você usará na string de conexão ao firebird) : localhost :
# 3050 (porta de destino no servidor, a porta padrão do firebird)

Certo, configuramos o zebedee. Agora falta executa-lo, manualmente ou criando os serviços no windows

  1. Para executar os comandos abaixo, abra o prompt (cmd)
  2. Digita “cd\arquiv~1\zebedee” (sem aspas) para entrar no diretorório do zebedee, que pode mudar conforme sua escolha na instalação.

executando manualmente o servidor:

zebedee -f server.zbd

executando manualmente o cliente:

zebedee -f client.zbd

instalando o serviço no servidor:

zebedee -n “Zebedee Server Service” “-Sinstall=c:\arquiv~1\zebedee\server.zbd”

instalando o serviço no cliente:

zebedee -n “Zebedee Client Service” “-Sinstall=c:\arquiv~1\zebedee\client.zbd”

Lembrando que esses dois últimos comandos referem-se apenas à instalação do serviço, a sua execução ocorrerá automaticamente na reinicialização do pc ou entrando no gerenciador de serviços (“Painel de controle / Ferramentas administrativas / Serviços” ou execute (Win + R) “services.msc”).

Agora temos o Zebedee funcionando no servidor e no cliente, e o Firebird também né!? Agora vamos abrir um banco de dados:

localhost/3051:C:\caminho_no_servidor\banco_de_dados.fdb

Essa é a string para a conexão com o firebird.

Observação importante que tinha esquecido, e por isso estou editando o post:

  1. No servidor zebedee, não esqueça de liberar a porta 11965 (a porta padrão do zebedee)
  2. No máquina cliente, não esqueça de liberar a porta 3051 (a que usamos acima)
  3. Se a sua conexão no servidor zebedee for através de um modem roteado você terá que redirecionar a porta 11965 para ele (isso merece um post)

E Pronto, não usei o controle de chaves de acesso púbicas e privadas. Fica pra próxima..

Fonte de consulta:

Site oficial do zebedee

Manual oficial do zebedee

Artigo na Comunidade Firebird de Língua Portuguesa, por Artur Trindade Anjos

Zebedee: Criando um túnel seguro entre máquinas no vivaolinux, por Antonio Tadeu

Posts reacionados

Posted By seucolega

11 Responses to “conectando-se ao firebird através do zebedee”

  1. jera disse:

    Zlib + Blowfish + Diffie-Hellman = Zebedee

    eahueahaeuheahueheahae… terrível…

    =P

  2. Daniel Figueiredo disse:

    Muito bom o post
    merece um post mesmo
    valeu pela dica.

    tow com um problema quero aprender a replicar no firebird, por onde começo

  3. seucolega disse:

    cara, da uma olhada em http://www.comunidade-firebird.org/cflp/downloads/CFLP_T022.PDF

    tomei esse como base.

    resumindo..

    cria uma trigger após inserir, alterar ou excluir registros na tabela que você quer replicar. ela deverá alimentar uma outra tabela (com o nome “replicar” por exemplo) com o código do registro que foi alterado.

    o programa vai ler a tabela com os registros que serão replicados e verificar se tem algo lá.

    caso tenha, ele deve conectar-se ao banco de destino e passar os dados (por sql)

    vou ver se posto o programa e explico melhor depois. to sem ele aqui.

  4. [célia] disse:

    que header massa!!!

    =*

  5. GUERREIRO disse:

    Garoto o post ficou bom, valeu pelo passo a passo.

  6. Garoto, esse seu post foi o melhor sobre o zebedee, to usando o interbase então apenas mudei o tunnel deixando 3050:localhost:3050 e funcionou legal, agora vou testar conectando em minha casa para ver se a velocidade é boa, testei local ai não da pra ver diferença

  7. Josauro disse:

    Ola legal, mas nao ficou claro a questao da porta o zebedee esta no servidor 123.456.789.123 porta 1234

    a configuracao é essa

    listenip localhost
    serverhost 123.456.789.123
    tunnel 1234:localhost:3050

    ou
    tunnel 3050:localhost:1234

    ?

  8. Márcio Manhães Neves disse:

    Caro colega. Ótimo post . Não consegui conectar, mas talvez devido a estar usando no servidor um modem do tipo TPLINK e não saber redireccionar a porta 11965. Assim sendo, solicito ” dicas ” a respeito.
    Outra dúvida ( de pricinpiante ! ) : o LOCALHOST deve ter como IP o da máquina ou o do modem ? Aonde definir isso ? Desde já agradeço a atenção.Abs. Márcio

  9. seucolega disse:

    Josauro,

    a configuração do client fica como está no post:

    # Ouvir as conexões no proprio computador cliente
    listenip localhost

    # Informar o servidor, pode ser um IP ou um DNS
    serverhost meuservidor.no-ip.org

    # Criar um túnel das conexões locais na porta 3051
    # para o servidor na porta 3050
    tunnel 3051:localhost:3050

  10. seucolega disse:

    Márcio,

    na configuração do client, onde tem “serverhost meuservidor.no-ip.org”, você deverá utilizar o IP do modem que da acesso à internet ou criar uma conta em um serviço de DNS dinâmico como No-IP ou DynDNS.

    Espero ter ajudado.

Leave a Reply