Nós (a tecnologia com quem trabalho e eu) moramos em uma remota cidade do norte, onde o acesso à Internet é um pouco de luxo, e a largura de banda é bastante limitada. Aqui, as taxas excedentes que variam de algumas centenas a alguns milhares de dólares por mês não são incomuns. Eu mesmo recebo cobranças mensais regulares apenas pelo uso regular da Internet em casa (estou autorizado a 10G por US $ 60CAD!)
Como parte do meu trabalho, encontrei-me envolvido com vários hotéis que estão sentindo isso. Eu sei que posso chegar a algo para resolver esse problema, mas sou relativamente novo na administração do sistema e não quero que meus sonhos superem a realidade.
Então, eu passo essas idéias para você, com muito mais experiência do que eu, na esperança de que você compartilhe alguns de seus pensamentos e preocupações.
Este sistema deve ser rentável, sim, as taxas são altas aqui, mas a confiança na tecnologia é a mais baixa que já vi.
- Deve ser capaz de ajudar o cliente a reduzir seu uso (lula)
- Permitir uma quantidade limitada (taxa de transferência e uso total) de Internet gratuita, pois isso é
política de franquia.
- Permitir que um usuário controle o uso de largura de banda
- Permitir (opcional) maior velocidade e / ou uso por um custo adicional.
Esta taxa pode ser obtida na recepção no check-out e não deve exigir o
uso de PayPal ou cartão de crédito.
- Infelizmente, algumas franquias têm políticas ridículas que exigem o uso de um produto.
serviço remoto de terceiros para autenticar os convidados em sua rede. Isso significa que o WPA é
fora, e isso também significa que eu não auth antes da utilização da Internet, que será o seu
trabalho. No entanto, eu exijo que o ABILITY realize autenticação para acesso à Internet se
um hotel não possui esta política. Ainda vou ter que acompanhar a largura de banda (sob um convidado
conta por padrão) e fornecer o mesmo limite, no entanto, o convidado muitas vezes vai exigir
um acesso completo 'ilimitado', em termos de existência, não throughput.
- Fornece recursos de firewall para hotéis que não têm nada, Office e Guest
segregação de rede (alguns desses caras estão executando seu escritório na rede de convidados,
sem criptografia e um simples TOS para seguir!)
- Impedir que os convidados se conectem a outros convidados, no entanto, forneça um meio de permitir isso
acontecer. IE. Cada convidado se conecta a uma página e permite que o outro convidado, isso escreve um
Regra iptables (com python-netfilter) e permite que duas salas joguem um jogo, por exemplo.
Meus pensamentos sobre como implementar isso. Uma caixa decente (vamos chamá-lo de um roteador agora) com um monte de ram e 3 NICs:
- Internet
- Escritório
- Convidados (AP + Ethernet na sala)
Regras do firewall do roteador
- O convidado pode falar apenas com o roteador, através do qual eles são roteados para onde precisam ir,
incluindo serviços de Internet.
- O Office pode ser usado para conectar o Office à Internet se uma solução existente não estiver em vigor,
caso contrário, ele simplesmente funciona para uma rede acessível pela web (webmin + python-webmin?)
interface.
Software de roteador:
- O OpenVZ fornece virtualização para alguns serviços nos quais eu realmente não confio. Lula,
FreeRADIUS e Apache. O único serviço diretamente acessível aos hóspedes é o Apache.
- O Apache tem o mod_wsgi e o django, porque eu posso escrever rapidamente usando o django e minhas necessidades
são baixos. Também tem potencialmente o mod FreeRADIUS, mas parece haver algumas ressalvas
com isso.
- Regras de firewall são tratadas no roteador com iptables.
- O Webmin (ou talvez um aplicativo django personalizado) fornece controle abstrato sobre quaisquer recursos
que a equipe pode precisar acessar.
- Python, se você ainda não adivinhou a língua em que me sinto mais confortável, e eu uso
por quase tudo.
E, finalmente, isso foi feito, é um projeto excessivamente massivo que não vale a pena assumir para um cara, e / ou há algumas ferramentas que estão faltando e que poderiam facilitar minha vida?
Para o registro, eu sou bastante bom com Python, mas não estou muito familiarizado com muitas outras linguagens (eu posso lutar com PHP, é um problema cosmético lá). Eu também sou um usuário Linux ávido e confortável com arquivos de configuração e linha de comando.
Obrigado pelo seu tempo, estou ansioso para ler suas respostas.
Edit: Minhas desculpas se isso não é um Q & A no sentido de que alguns estavam esperando, estou apenas procurando idéias e para ter certeza de que não estou tentando fazer algo que foi feito. Eu estou olhando para o pfSense agora como um possível começo para o que eu preciso.