Acesso à site interno [RESOLVIDO]

1. Acesso à site interno [RESOLVIDO]

Vítor Carrara
vitorcarrara

(usa Ubuntu)

Enviado em 16/01/2012 - 17:34h

Olá galera. Primeiramente quero cumprimentar a todos, e agradecer desde já ao fórum que por meio deste adquiri meus poucos conhecimentos em linux.
Sempre consegui me virar nas minha dificuldades aqui, mas desta vez... venho recorrer aos amigos experts no assunto. :D

Seguinte: tenho um servidor ubuntu rodando como DNS, Squid, DHCP, Internet e Apache com ISP Config.
Consegui configurar meus domínios na máquina, atualmente 3 sites, que estão acessando normalmente, mesmo sendo ip dinâmico (posso até montar um tuto depois como fiz).
O problema acontece quando tento acessá-los por minhas máquinas clientes. Pelo que entendi, a requisição das máquinas clientes vai ao servidor DHCP, encaminhando ao Squid, que direciona ao Bind (DNS), busca o IP do domínio na Internet, e por fim responde ao cliente o acesso ao site.

Certo, mas e quando eu não tiver conexão, no caso de uma queda por exemplo. Como posso fazer com que as máquinas clientes acessem diretamente meu servidor sem buscar na internet.

Desde já agradeço à todos e aguardo respostas...


  


2. Re: Acesso à site interno [RESOLVIDO]

Phillip Vieira
phrich

(usa Slackware)

Enviado em 16/01/2012 - 17:40h

Quando vc diz máquina cliente, vc quer dizer as máquinas de sua rede interna?


3. Re: Acesso à site interno [RESOLVIDO]

Vítor Carrara
vitorcarrara

(usa Ubuntu)

Enviado em 16/01/2012 - 17:42h

exatamente...

Máquinas que recebem IP, Máscara, Gateway, DNS.. (clientes Windows XP e 7)


4. Re: Acesso à site interno [RESOLVIDO]

Phillip Vieira
phrich

(usa Slackware)

Enviado em 16/01/2012 - 18:06h

Você tem 3 opções:

1 - Fazer um redirecionamento (nat) interno no seu iptables

2 - Acessar pelo IP do servidor

3 - Adicionar mais um IP (no caso interno) nas configurações do seu site

ah, como vc está usando o bind, vc também pode criar uma zona para este site, aí se os seus "clientes" enxergarem esta zona, vai na boa também.

Cara mais vai uma dica, firewall / proxy / dns / dhcp blz, mas apache com site junto do firewall, acho que não é muito legal não, acho que vc deveria colocar seu apache atrás do firewall... só uma dica ok? ;-)


5. Re: Acesso à site interno [RESOLVIDO]

Vítor Carrara
vitorcarrara

(usa Ubuntu)

Enviado em 17/01/2012 - 08:53h

phrich

Obrigado amigo pela dica e as respostas.

A primeira opção, por NAT, eu já havia tentado baseando-me em uma resposta q vi aqui no forum, mas não deu certo, assim como para o rapaz que tentava uma solução também.
A segunda, por ip do servidor, seria inviável, por questão de praticidade aos demais funcionários, e tb não funcionaria, devido o uso do ISPConfig, pelo q tentei algumas vezes ele bloqueia o acesso direto aos arquivos dos sites, por exemplo: 192.168.1.1/clients/client1/web1/web
Acredito q a terceira opção seja a mais correta, mas, me instrua no procedimento. Aqui vai o arquivo db do meu domínio:


$TTL 86400
@ IN SOA mirimadamantina.dyndns.org. vitorcarrara.gmail.com. (
$SERIAL ; serial, todays date + todays serial #
28800 ; refresh, seconds
60 ; retry, seconds
604800 ; expire, seconds
86400 ) ; minimum, seconds
;

mail 86400 A 0.0.0.0
vitorcarrara.co.cc. 86400 A 0.0.0.0
vitorcarrara.co.cc. MX 10 mail.vitorcarrara.co.cc.
vitorcarrara.co.cc. NS mirimadamantina.dyndns.org.
vitorcarrara.co.cc. NS mirimadamantina.no-ip.org.
www 86400 A 0.0.0.0


* 0.0.0.0 é o meu ip externo, da internet

o que eu faria? é aqui mesmo que devo alterar? Obrigado!



6. Re: Acesso à site interno [RESOLVIDO]

João Paulo Carneiro
jptudobem

(usa Debian)

Enviado em 17/01/2012 - 09:32h

Você acessa esses sites externamente sem problemas e de dentro da sua rede não, correto?

Tive esse mesmo problema, tentei soluções com DNS que não resolveram. Somente com esta regra consegui acessar normalmente.


IPNET=$(lynx --dump http://checkip.dyndns.org | grep "IP" | awk '{ print $4}')
NETLOCAL="192.168.1.0/24"

iptables -p tcp -t nat -A PREROUTING -s $NETLOCAL -d $IPNET --dport 80 -j DNAT --to-destination 192.168.1.1:80
iptables -p tcp -t nat -A POSTROUTING -s $NETLOCAL -d 192.168.1.1 --dport 80 -j SNAT --to-source $IPNET
iptables -p tcp -t filter -A FORWARD -s $NETLOCAL -d 192.168.1.1 --dport 80 -j ACCEPT


O $IPNET é o ip válido da sua internet.
Certifique-se que tenha o lynx instalado no seu servidor.
Altere as portas e os ips locais de acordo com sua rede.




7. Re: Acesso à site interno [RESOLVIDO]

Phillip Vieira
phrich

(usa Slackware)

Enviado em 17/01/2012 - 10:21h

vitorcarrara escreveu:

phrich

Obrigado amigo pela dica e as respostas.

A primeira opção, por NAT, eu já havia tentado baseando-me em uma resposta q vi aqui no forum, mas não deu certo, assim como para o rapaz que tentava uma solução também.
A segunda, por ip do servidor, seria inviável, por questão de praticidade aos demais funcionários, e tb não funcionaria, devido o uso do ISPConfig, pelo q tentei algumas vezes ele bloqueia o acesso direto aos arquivos dos sites, por exemplo: 192.168.1.1/clients/client1/web1/web
Acredito q a terceira opção seja a mais correta, mas, me instrua no procedimento. Aqui vai o arquivo db do meu domínio:


$TTL 86400
@ IN SOA mirimadamantina.dyndns.org. vitorcarrara.gmail.com. (
$SERIAL ; serial, todays date + todays serial #
28800 ; refresh, seconds
60 ; retry, seconds
604800 ; expire, seconds
86400 ) ; minimum, seconds
;

mail 86400 A 0.0.0.0
vitorcarrara.co.cc. 86400 A 0.0.0.0
vitorcarrara.co.cc. MX 10 mail.vitorcarrara.co.cc.
vitorcarrara.co.cc. NS mirimadamantina.dyndns.org.
vitorcarrara.co.cc. NS mirimadamantina.no-ip.org.
www 86400 A 0.0.0.0


* 0.0.0.0 é o meu ip externo, da internet

o que eu faria? é aqui mesmo que devo alterar? Obrigado!


Cara basta vc criar uma zona nova para acesso ao site internamente, por exemplo, criar uma zona parecida com a que vc já tem, basta vc trocar os apontamentos que vc tem, pelos ips internos.

Vamos supor que o seu exemplo acima se chame sitexterno.com, vc troca para siteinterno.com, deu para entender ou eu compliquei?

Ou então vc pode pedir aos usuários que acessem pelo nome do servidor, ai talvez eles possam salvar nos favoritos.

Se eu não fui claro, me fale que eu tento explicar melhor ok?


8. Configurar Bind

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 17/01/2012 - 10:46h

Adiciona um zona no arquivo /etc/bind/named.conf

#####
zone "seudominio.com.br" {
type master;
file "/etc/bind/db.seudominio.com.br";
};
######

# Cria o arquivo db.seudominio.com.br e configura de acordo com seu dominio

######
$TTL 604800
@ IN SOA seudominio.com.br. admin.seudominio.com.br. (
10118
43200
3600
3600000
2592000 )
@ IN NS seudominio.com.br.
IN MX 10 postmaster.seudominio.com.br.
IN A IP_EXTERNO
mail IN A IP_INTERNO
smtp IN A IP_INTERNO
pop IN A IP_INTERNO
pop3 IN A IP_INTERNO
postmaster IN A IP_INTERNO
webmail IN A IP_INTERNO
www IN A IP_EXTERNO

########
Reinicia o bind e pronto



9. Re: Acesso à site interno [RESOLVIDO]

Vítor Carrara
vitorcarrara

(usa Ubuntu)

Enviado em 17/01/2012 - 14:21h

jptudobem

td bom? qndo comentei acima sobre as regras NAT q eu já havia tentado, acho que era de seus posts (me recordo desta sua gif doida nas respostas :D)... mas comigo naun deram certo.
Aqui consigo acessar os dominios tanto interno quanto externamente, sem problemas, por isso creio que não seja o mesmo problema que o seu..
Aliás, abro aqui uma nova dúvida, mas para ser debatida futuramente: "Bloqueio da porta 80 pelo Speedy da Telefonica". Neste meu servidor temos ip dinâmico, que consequentemente pelo plano da telefonica não nos dá as características dos planos com ip fixo, e por isso, portas fechadas. Mas curiosamente, estas portas estão fechadas por alguns momentos apenas. Claro que para resolver isso, do acesso externo, abri outra porta no servidor, a 2080 no caso, que qndo não consigo acesso pela 80, refaço a tentiva pela 2080. Mas como disse antes, várias vezes consegui este acesso pela 80 mesmo, de fora da rede (de casa, casa da sogra, dos meus pais, de amigos...). Esquisito né?

andrecanhadas e phrich

Creio q a alternativa correta realmente seja esta do bind. Fiz minhas alterações aqui conforme suas dicas e me parece que deu certo. Não confirmo completamente pelo seguinte detalhe: consigo acesso no novo dominio apenas no servidor, nas estações não. Fiz o teste pelo browser em texto no servidor, o links, acessando o novo dominio "meudominio" e abriu beleza.. mas nas máquinas clientes não busca. Matutando aqui, creio que seja alguma configuração no Bind ainda, para que as requisições também busquem os sites locais do server, certo? mais especificamente as configs do named.conf.options, vejam como está:

options {
directory "/var/cache/bind";

query-source address * ;

forwarders {
192.168.1.1;
8.8.8.8;
8.8.4.4;
};

additional-from-auth yes ;
additional-from-cache yes ;

recursion yes;

version "REFUSED";

};

Ou seria no squid?
Como falei antes, o que entendi é que neste meu sistema as requisições funcionam assim (vejam se estou correto):

ESTAÇÃO CLIENTE (requisição) > SERVIDOR (192.168.1.1) > SQUID (REGRAS IPTABLES DIRECIONAM PARA PORTA 3128) > SQUID ENCAMINHA PARA O BIND > QUE RESPONDE O ACESSO AO SITE

correto?


10. Re: Acesso à site interno [RESOLVIDO]

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 17/01/2012 - 16:30h

vitorcarrara escreveu:

jptudobem

td bom? qndo comentei acima sobre as regras NAT q eu já havia tentado, acho que era de seus posts (me recordo desta sua gif doida nas respostas :D)... mas comigo naun deram certo.
Aqui consigo acessar os dominios tanto interno quanto externamente, sem problemas, por isso creio que não seja o mesmo problema que o seu..
Aliás, abro aqui uma nova dúvida, mas para ser debatida futuramente: "Bloqueio da porta 80 pelo Speedy da Telefonica". Neste meu servidor temos ip dinâmico, que consequentemente pelo plano da telefonica não nos dá as características dos planos com ip fixo, e por isso, portas fechadas. Mas curiosamente, estas portas estão fechadas por alguns momentos apenas. Claro que para resolver isso, do acesso externo, abri outra porta no servidor, a 2080 no caso, que qndo não consigo acesso pela 80, refaço a tentiva pela 2080. Mas como disse antes, várias vezes consegui este acesso pela 80 mesmo, de fora da rede (de casa, casa da sogra, dos meus pais, de amigos...). Esquisito né?

andrecanhadas e phrich

Creio q a alternativa correta realmente seja esta do bind. Fiz minhas alterações aqui conforme suas dicas e me parece que deu certo. Não confirmo completamente pelo seguinte detalhe: consigo acesso no novo dominio apenas no servidor, nas estações não. Fiz o teste pelo browser em texto no servidor, o links, acessando o novo dominio "meudominio" e abriu beleza.. mas nas máquinas clientes não busca. Matutando aqui, creio que seja alguma configuração no Bind ainda, para que as requisições também busquem os sites locais do server, certo? mais especificamente as configs do named.conf.options, vejam como está:

options {
directory "/var/cache/bind";

query-source address * ;

forwarders {
192.168.1.1;
8.8.8.8;
8.8.4.4;
};

additional-from-auth yes ;
additional-from-cache yes ;

recursion yes;

version "REFUSED";

};

Ou seria no squid?
Como falei antes, o que entendi é que neste meu sistema as requisições funcionam assim (vejam se estou correto):

ESTAÇÃO CLIENTE (requisição) > SERVIDOR (192.168.1.1) > SQUID (REGRAS IPTABLES DIRECIONAM PARA PORTA 3128) > SQUID ENCAMINHA PARA O BIND > QUE RESPONDE O ACESSO AO SITE

correto?



Sim Porem ele ira pelo que esta configurado em /etc/resolv.conf

Como deixo a placa de internet em DHCP toda vez que reinicia o resolv.conf é alterado com o dns do provedor

O que fiz foi o seguinte:
no squid.conf eu determinei que ele usasse o meu servidor dns:

dns_nameservers 192.168.0.3
dns_nameservers 8.8.8.8
dns_nameservers 8.8.8.4

dessa forma ele busca primeiro no meu bind e não encontrando resposta de autoridade ele encaminha para o dns do google.




11. Re: Acesso à site interno [RESOLVIDO]

Phillip Vieira
phrich

(usa Slackware)

Enviado em 17/01/2012 - 17:02h

A opção do andrecanhadas tbém é válida, porém vc pode criar uma nova zona, para o mesmo site, só para acesso interno, e criar um alias do seu site no apache.

exemplo:

www.seusite.com

ai para acesso interno

www.seusite2.com (isso no bind)

ai vc cria um álias no seu apache apontando www.seusite2.com para seusite1.com

Acredito que dê certo também.


12. Re: Acesso à site interno [RESOLVIDO]

Vítor Carrara
vitorcarrara

(usa Ubuntu)

Enviado em 18/01/2012 - 09:19h

andrecanhadas e phrich

amigos, muito obrigado pela 'prestatividade' (não sei se escreve assim :D) de vocês..
Eu já havia criado uma nova zona e configurado-a apontado para o ip do servidor (ip de rede 192.168.1.1). No servidor estava funcionando, e depois de várias tentativas deu certo aki no micro onde estou. Consegui modificando o resolv.conf. Conferi meu squid e já estava configurado como o andrecanhadas falou e tirei do bind o apontamento ao meu dns.. No apache eu tb já havia configurado o alias. Os apontamentos ficaram assim:

squid.conf
dns_nameservers 192.168.1.1

named.conf.options
forwarders {
8.8.8.8;
8.8.4.4;
};


Agora a situação é a seguinte: com o Chrome meu micro acessa perfeitamente (testei até desconectando a internet e funcionou), com o IE não :D hauhauihaia.. (as vezes cái na busca do Bing, irgh!) as outras máquinas da rede não acessam nem por um nem por outro.. :(

agradeço a compreensão de todos!



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts