私は 2 つの SSID (ユーザー用と従業員用) と、ワイヤレス ネットワークへのアクセスをアカウントに許可する FreeRADIUS サーバーを持っています。しかし、サーバーは両方の SSID にアクセスするためにすべてのユーザー アカウントを検証しています。ユーザー アカウントが従業員の SSID にアクセスできないようにしたいのですが、その逆も同様です。設定方法を教えてください。
1 に答える
必要な接続のみを許可するには、unlang 構成を使用する必要があります。それを行うにはいくつかの異なる方法があります。まず、接続しているのがユーザーなのか従業員なのかを判断する必要があります。
これは、LDAP ルックアップなどを介して行われるか、ユーザーが「username@user.example.com」で接続し、従業員が「 username@employee.example.com 」で接続する可能性があります。これが例の場合、(ファイルsuffix
内のsites-enabled/default
) realm モジュールを使用して、User-Name 属性を Stripped-Username と Realm に分割します。
SSIDも必要です。多くの NAS はこれを Called-Station-ID 属性の一部として提供するため、提供されたrewrite_called_station_id
ポリシーを使用してこれを取得できます (FreeRADIUS 3)。
sites-enabled/default
次に、 authorize{}セクションで次のようなことを行うことができます。
# get SSID from Called-Station-Id
rewrite_called_station_id
# check user connecting to employee SSID and reject if so
if (Realm == 'user.example.com' && Called-Station-SSID == "employee") {
reject
}
# check employee connecting to user SSID and reject if so
if (Realm == 'employee.example.com' && Called-Station-SSID == "user") {
reject
}
# otherwise we will continue processing...
アクセスを制御するためのポリシーを構築する方法を理解していただければ幸いです。詳細については、unlang
man ページを参照してください。FreeRADIUS wikiには多くの例があり、サーバーのデフォルト構成にもあります。