[firebase-br] RES: RES: O Que é TS e Porque Deixar FB longe de Acesso externo?

Escovador de Bits escovadordebits em gmail.com
Qui Fev 12 15:45:19 -03 2009


Bom dia/tarde Luis.

Grande Luis, o que eu já fiz, e funcionou, foi o seguinte:

1 - Alterei o arquivo "firebird.conf" para que o Firebird criasse outra 
porta servidora, e não mais a 3050 que já é muito bem conhecida, para 
tentar evitar invasões. Nesse caso, vamos assumir que a nova porta 
servidora seja a 7123.

2 - Alterei as configurações do firewall de minha máquina caseira, para 
que permitisse conexões externas para a porta 7100 local (adicionei a 
porta 7100 à lista de exceções do firewall).

3 - Em um site pessoal, criei uma página PHP que servia tanto para 
receber o valor do novo endereço IP externo de minha máquina, como 
também para exibir o valor armazenado.

4 - Em minha máquina caseira, criei e deixei executando, um programa que 
eu fiz em Delphi, para identificar quando minha máquina estava conectada 
à internet, e quando estava conectada, lia o endereço IP externo e 
enviava para essa página PHP do meu site pessoal, onde ficava armazenado 
em um arquivo texto comum. Caso o endereço IP externo mudasse, o 
programa enviava o novo endereço IP à mesma página, sempre mantendo esse 
endereço atualizado.

5 - No meu ambiente de trabalho, eu acessei essa mesma página PHP que, 
independente de receber o novo endereço IP, sempre lia o tal arquivo 
texto (onde foi armazenado o último endereço IP informado) e exibia seu 
conteúdo dentro da página HTML a ser exibida, então, eu sempre sabia 
qual o endereço IP externo de minha máquina caseira, processo esse que 
eu também automatizei através de outro programa que eu desenvolvi, que 
lia esse endereço IP e salvava-o localmente em um arquivo de configuração.

6 - Para me conectar ao Firebird de minha máquina caseira, minhas 
aplicações liam o endereço IP do "meu servidor" desse arquivo de 
configuração, e assim sendo, colocavam esse mesmo endereço IP no caminho 
ou alias da base a ser acessada, e dessa forma, eu conseguia acessar o 
Firebird via internet.

Posso dizer que, no mínimo, foi divertido fazer esse esquema de acesso, 
porque me permitia acessar meu servidor caseiro, independente de ter IP 
fixo ou dinâmico.

Então, vamos supor que:

1 - O Firebird já esteja configurado para criar a porta 7100, e já 
esteja em funcionamento.

2 - O firewall já esteja configurado para permitir conexões externas à 
porta 7100.

3 - O IP externo da máquina caseira tenha sido 123.456.789.123, e que o 
programa de monitoramento já tenha enviado esse endereço IP para a 
página PHP do site pessoal, e esse já tenha sido armazenado em um 
arquivo texto lá mesmo.

4 - O programa monitor, que está no ambiente cliente, já acessou a mesma 
página PHP, e já obteve o endereço IP 123.456.789.123, e já tenha salvo 
essa informação em um arquivo de configuração (blábláblá.ini).

Uma aplicação cliente, lê esse arquivo de configuração, e monta o 
caminho da base da seguinte forma:

123.456.789.123/7100:C:\Dados\Banco.gdb

Ou ainda, que você já tenha criado um "alias", no arquivo "aliases.conf" 
do Firebird, da seguinte forma:

Banco = C:\Dados\Banco.gdb

Então a aplicação já pode acessar da seguinte forma:

123.456.789.123/7100:Banco

Acredite ou não, funciona redondo. :D

Depois fiz o mesmo com o Oracle 10g e o M$$$ SQL Server 2000, usando 
essa mesma lógica de endereço IP, apenas utilizando outras portas.

Como o nosso grande amigo Carlos H. Cantu citou em um post anterior, a 
ferramenta "zebedee" (http://www.winton.org.uk/zebedee/) pode ajudar 
nesses casos, pois ao mesmo tempo, compacta os dados a serem enviados, o 
que aumenta a performance de comunicação, como também criptografa esses 
dados, garantindo a privacidade dos mesmos, independente do tipo de 
aplicação utilizada (SGBD ou não).

Espero que eu não tenha lhe confundido ainda mais, qualquer coisa é só 
perguntar.

Espero ter ajudado mais que atrapalhado. :D

LuisFireVB escreveu:
> É Esovador de Bits foi isso que eu pensava até ver essa afirmação no fórum.
> Estão ele funciona sem problemas mesmo, o "defeito" se podemos dizer isso,
> seria com relação a segurança, mas isso não é com o FB e sim com a rede da
> empresa.
>
> Agora para melhorar isso deveria colocar o FB num servidor interno com uma
> proteção de firewall na web, só que como seria o acesso a ele dessa forma,
> pois se o IP do FB não estaria direto (passaria por outro servidor /
> firewall) como seria a conexão com ele, já que a porta indicada na conexão
> não seria a mesma do servidor de entrada?
>
> Isso ficou meio confuso.
>
> Luis
>
> -----Mensagem original-----
> De: Escovador de Bits [mailto:escovadordebits em gmail.com] 
> Enviada em: quarta-feira, 11 de fevereiro de 2009 20:28
> Para: FireBase; luisfirevb em gmail.com
> Assunto: Re: [firebase-br] RES: O Que é TS e Porque Deixar FB longe de
> Acesso externo?
>
> Bom dia/tarde pessoal.
>
> Poderiam me esclarecer essa afirmação de que "o Firebird não foi feito 
> para acesso web"?
>
> Que eu saiba, podemos efetuar as conexões via TCP/IP, e portanto, não 
> importa se estamos conectando em um Firebird local, ou em outra máquina 
> da mesma rede, ou em uma máquina externa, na internet.
>
> A única diferença de acessá-lo via internet, é que a velocidade de 
> acesso vai depender da velocidade da sua conexão (velocidade da banda), 
> que é o "calcanhar de Aquiles" de QUALQUER APLICAÇÃO, independente de 
> ser um SGBD ou não, portanto, não se trata de uma deficiência do Firebird.
>
> Posso perfeitamente deixar minha máquina caseira conectada na internet, 
> configurar o Firebird para abrir uma porta diferente de 3050 (para não 
> ficar tão vulnerável a invasões), configurar o Firewall de minha máquina 
> para permitir conexões externas ao Firebird, e sabendo qual é o endereço 
> IP externo de minha máquina na internet, posso conectar-me a ela por 
> qualquer outra ferramenta a partir de qualquer outra máquina na 
> internet, sem frescura alguma, como eu já fiz com o Firebird e outros 
> SGBDs, como o Oracle 10g e o M$$$ SQL Server 2000, sem a menor dor de 
> cabeça.
>
> Em questão de performance, é como eu citei antes, depende também da 
> velocidade de sua conexão, como qualquer outro tipo de aplicação, sem 
> preconceito algum de cor, raça, religião ou tipo de aplicação.
>
>
>
>   




Mais detalhes sobre a lista de discussão lista