maquina e roteador com IP fixo

Iniciado por likoski, 30 de Outubro de 2017, 11:22

tópico anterior - próximo tópico

likoski

Bom dia, tenho um roteador wirelles com ip fixo, também tenho várias máquinas que se conectam nele com ip dinâmico.
tenho um site com uma opção para bloquear acesso através do ip, porem as máquinas qndo acessam o site usam o ip do roteador.

Como posso atribuir um endereço de ip para cada máquina para que o site identifique elas e não o roteador?

zekkerj

Olá, seu site está em um servidor Ubuntu? Pq se não estiver, não tem como a gente te ajudar.

A melhor forma de resolver esse problema é ligar esse roteador em modo AP, de forma que as máquinas recebam IPs, fixos ou dinâmicos, da rede externa ligada ao roteador. Do contrário, as máquinas atrás dele vão sempre se conectar à rede externa usando o IP do roteador, pois isso é o fundamento de um roteador com NAT.

Caso você não tenha acesso a esse roteador, ou o roteador seja o único dessa rede, não tem como evitar que os clientes usem o endereço do roteador pra se conectar ao seu site.

Talvez --- TALVEZ!!! --- você consiga fazer com que os clientes informem o seu IP local, consultando as variáveis do HTTP, mas não há garantia de que isso vá funcionar, nem há como impedir que os clientes simplesmente te enviem informações falsas.

Resumindo: controlar acesso por IP de origem é uma grande furada. Use autenticação, pra controlar acesso. É muito mais eficiente.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

likoski

Obrigado pela resposta.

EU tenho o UBUNTU SERVER 16, rodo o moodle nele
tenho 4 roteadores com 30 maquinas cada um.
as maquinas possuem duas contas uma aluno e outra prova.
A conta aluno eh usuario padrão com editor de texto e internet
a conta prova é exclusiva para acessaar o moodle.
o roteador para acessar a internet precisa de ip fixo devido a rede da instituição que usa proxy.
eu quero impedir que o usuario ao logar com a conta prova acesse o moodle.

zekkerj

Nem pense em fazer isso a partir do IP de origem, então. Autenticação, é básico isso.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

druidaobelix

#4
Citação de: likoski online 30 de Outubro de 2017, 11:40
EU tenho o UBUNTU SERVER 16, rodo o moodle nele
tenho 4 roteadores com 30 maquinas cada um. [...]

Na verdade existe uma comunidade planetária mundial bastante ampla do Moodle (Modular Object-Oriented Dynamic Learning Environment), segundo consta em 75 diferentes idiomas em 175 países, além de uma comunidade nacional com Fórum próprio:

https://www.moodlebrasil.org/mod/page/view.php?id=6

Ainda em âmbito nacional o software é usado por grandes Universidades, USP, UNICAMP, PUC e por aí vai.

Por conseguinte, a questão de como melhor estruturar esses acessos nesse ambiente não deve ser nova, cabendo então a pergunta: como esse povo todo que usa diariamente esse software trata essa questão?

Penso que consultar o Fórum especializado possa ser uma boa ideia para assimilar a experiência concreta já existente.

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

likoski

O meu problema não é com o moodle, eu queria é que a mesma máquina tivesse dois endereços de IP diferentes.

druidaobelix

Citação de: likoski online 31 de Outubro de 2017, 08:09
O meu problema não é com o moodle, eu queria é que a mesma máquina tivesse dois endereços de IP diferentes.

Mas então, @ likoski,

O objetivo de ter dois IPs não é em razão do Moodle?

O que se está querendo dizer é que nem sempre é preciso reinventar a roda o tempo todo.
Pessoas no mundo inteiro eventualmente resolveram idêntica questão talvez de outro modo igualmente eficaz, questão de ver.

Distinguir o acesso simplesmente a partir do IP, salvo engano por desconhecimento mais profundo do problema, parece não ser a melhor direção para resolver o problema.


De toda forma, se de alguma forma for útil, é possível atribuir IP extra ao mesmo dispositivo fazendo:


1) adicionando múltiplos IPs

sudo ip address add ip_desejado dev id_placa_rede

address pode ser substituído pela notação resumida addr

exemplo:

supondo que o IP atual seja: 192.168.1.103/24

se quer adicionar a unidade 108 para esse dispositivo:

sudo ip address add 192.168.1.108/24 dev enp4f0

O /24 indica o netmask, por exemplo, 255.255.255.0

se usar a notação resumida:

sudo ip addr add 192.168.1.108/24 dev enp4f0


2) confirmando adição

Confirme o resultado para o especifico dispositivo fazendo:

nmcli d show enp4f0

3) confirmando conectividade

ping -c 4 192.168.1.108

4) excluindo IP extra

É só substiuir o add por del

exemplo:

sudo ip addr del 192.168.1.108/24 dev enp4f0

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

druidaobelix

#7
Na específica questão abordada em que para a mesma máquina existem dois usuários e se quer fazer a distinção com cada usuário usando um IP distinto, ainda considerando que o IP inicial é atribuído de forma dinâmica pelo roteador, parece ser possível criar um script para ser executado em cada máquina cliente com o específico usuário como Aplicativos Iniciais de Sessão.

De uma forma geral esse script deverá:

1. identificar o IP que foi atribuído automáticamente pelo roteador;

2. Derrubar esse IP;

3. Atribuir um novo IP pré-determinado.

Parece possível ser feito, agora se é eficaz já é outra história.

Como primeira ideia, algo assim como simples exemplo:


#!/bin/bash

IPATUAL=$(nmcli d show enp4s0 | grep "IP4.ENDEREÇO" | awk '{ print $2 }')

IDNETCARD=$(ip route | grep default |awk '{ print $5 }')

ip address del $IPATUAL dev $IDNETCARD

ip address add 192.168.1.112/24 dev $IDNETCARD




Dessa forma isso evidentemente dará um trabalho considerável, já que será necessário colocar o script para executar individualmente em cada máquina no usuário PROVA, que se bem entendi é o que não deverá ter outros acessos liberados.

Como você disse que tem algo como 120 máquinas em 4 roteadores, suponho que estejam seccionados por subredes para evitar conflitos de IP, então como o novo IP atribuído é estático a inclusão deverá obedecer uma tabela pré-preparada por você de forma que evite eventuais conflitos frutos da atribuição dinâmica do dhcp ou qualquer coisa parecida, dependendo da topologia da rede e de como organizou isso, mas enfim, é trabalhoso porém simples de ser feito.

O código desse modo só funciona no Ubuntu + família 16 onde há o nmcli, se for outro precisa adaptar para obter os dados.

Não faço ideia de quem sejam seus usuários, entretanto, note que a segurança é nenhuma, qualquer criança de jardim de infância consegue burlar isso.
www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

zekkerj

Citação de: likoski online 31 de Outubro de 2017, 08:09
O meu problema não é com o moodle, eu queria é que a mesma máquina tivesse dois endereços de IP diferentes.
Qual, a sua máquina, ou as máquinas dos seus usuários que vão acessar o serviço?
E o que vai adiantar, se esses dois IPs diferentes estiverem passando pelo roteador, e com isso se perdendo no caminho?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D