Estou criando um ISP para uma residência estudantil. A LAN já está lá e funcionando, com vários switches CISCO. Eu quero fornecer Internet de forma segura e automática para aqueles que pagam por isso (mensalmente). Em um futuro próximo, também pode haver um ponto de acesso (CISCO novamente) em um local "não tão privado" (principalmente estudantes, mas eles podem não estar morando na residência) para se conectar à rede, então a conexão tem que ser protegido e limitado ao residente (é aceitável se apenas o usuário pagador acessar a rede sem fio).
Aqui estão meus desejos:
No entanto, tenho uma grande restrição: as pessoas (usuários pagantes ou não) precisam ser capazes de se comunicar entre elas (a mesma VLAN).
Para 1. Acho que o 802.1x PEAP é a solução correta, está usando certificado no servidor e somente nome de usuário / senha na parte do cliente. Eu não tenho que colocar o certificado em cada dispositivo. Para 2. Eu estava pensando em usar 'expiration' do LDAP radiusProfile objectClass e atualizar esse valor quando o usuário assina. Para 3. e 4. uma das soluções pode ser pfSense.
Por causa do 802.1x e da restrição de usuários estarem na mesma LAN, existe outra possibilidade além de fazer com que o usuário não pagante tenha uma "conta de usuário" RADIUS? Estou assumindo que não.
Pelo que entendi, o 802.1x é configurado em dispositivos de rede (AP ou switch) e se comunica diretamente com o servidor RADIUS, então como o pfSense pode saber quando um usuário é autenticado em um dos dispositivos de rede para ignorar o portal cativo? Eu não quero que meus usuários tenham que fazer o login no dispositivo deles e novamente no portal cativo, ele tem que ser transparente.
Veja como eu vejo a implementação:
User NP: non-paying user = access to LAN but not to Internet; access to captive portal when asking for Internet;
User P: paying user = access to LAN and Internet until suscription expires;
User NP User P
| | _______ same ________ _________
| | 802.1x |RADIUS| VLAN |pfSense| User P requests | |
---------------------|Client|---------|Net |-----------------|INTERNET|
|______| |Getaway| |________|
|
|User NP requests
____|___
|Captive|
|portal |
|_______|
O problema é que não vejo como o pfSense pode saber se o Usuário P tem permissão para se conectar à Internet sem solicitar ao usuário seu nome de usuário e senha RADIUS para contornar o portal cativo. Existe uma maneira, pfSense pode recuperar automaticamente informações sobre a conexão 802.1x sem relogging? Ou talvez eu esteja faltando alguma coisa ou eu entendi mal como 802.1x funciona?
Estou aberto a qualquer sugestão, mudança ou qualquer coisa, mas tem que preencher a cirrécia crítica: a restrição e os desejos de 1 a 3.
Tags radius pfsense 802.1 isp freeradius