Я создаю провайдера для студенческого общежития. ЛВС уже есть и работает с несколькими коммутаторами CISCO. Я хочу обеспечить безопасный и автоматический доступ в Интернет тем, кто за него платит (ежемесячно). В ближайшем будущем может быть точка доступа (опять же CISCO) в "не очень частном" месте (в основном студенты, но они могут не проживать в общежитии) для подключения к сети, поэтому соединение должно быть защищенный и ограниченный резидентом (это приемлемо, если только платный пользователь получает доступ к сети по беспроводной сети).
Вот мои пожелания:
Однако у меня есть одно большое ограничение: люди (платящие пользователи или нет) должны иметь возможность общаться между собой (одна и та же VLAN).
Для 1. Я думаю, что 802.1x PEAP - правильное решение, оно использует сертификат на сервере и только имя пользователя / пароль на клиентской части. Мне не нужно ставить сертификат на каждое устройство. Для 2. Я думал об использовании «истечения» из объектного класса LDAP radiusProfile и обновлять это значение, когда пользователь подписывается. Для 3. и 4. одним из решений может быть pfSense.
Из-за 802.1x и ограничения пользователей, находящихся в одной и той же локальной сети, есть ли другая возможность, кроме как заставить неплательщика иметь "учетную запись пользователя" RADIUS? Я полагаю, что нет.
Насколько я понимаю, 802.1x настроен на сетевых устройствах (точка доступа или коммутатор) и напрямую взаимодействует с сервером RADIUS, поэтому как pfSense может узнать, аутентифицирован ли пользователь на одном из сетевых устройств, чтобы обойти захватывающий портал? Я не хочу, чтобы моим пользователям приходилось входить в систему на своем устройстве и снова на адаптивном портале, он должен быть прозрачным.
Вот как я вижу реализацию:
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 |
|_______|
Проблема в том, что я не понимаю, как pfSense может узнать, разрешено ли пользователю P подключаться к Интернету, не спрашивая его имя пользователя и пароль RADIUS, чтобы обойти скрытый портал. Есть ли способ, с помощью которого pfSense может автоматически получать информацию о соединении 802.1x без повторной регистрации? Или, может быть, я что-то упустил или неправильно понял, как работает 802.1x?
Я открыт для любых предложений, изменений или чего угодно, но они должны соответствовать критическому кругу: ограничению и пожеланиям 1 к 3.