定期的にMACアドレスのリストをLDAPからファイルに落とすようにとかはどうでしょうか?
[追記]
私の持っているldap認証に対応した freeradius サーバでテストしてみました。
radiusd を -X オプションで起動した時に私のサーバでは認証時に下記のリクエストが届きます。
vpnの接続時のppp認証で使用しているので Request に Macアドレスがありません。
Macアドレスがある場合は、 Calling-Station-Id に値が入っていると思います。
(1) Received Accounting-Request Id 11 from 127.0.0.1:56766 to 127.0.0.1:1813 length 108
(1) Acct-Session-Id = "5C95EDCF6BEF00"
(1) User-Name = "scsi@example.com" ※認証ID
(1) Acct-Status-Type = Start
(1) Service-Type = Framed-User
(1) Framed-Protocol = PPP
(1) Acct-Authentic = RADIUS
(1) NAS-Port-Type = Async
(1) Framed-IP-Address = 192.168.0.101
(1) NAS-IP-Address = 123.123.123.123 ※サーバのIP(仮)
(1) NAS-Port = 0
(1) Acct-Delay-Time = 0
NAS-IP-Address を Mac アドレスと見立てて、 description アトリビュートに登録しました。
ldapの登録情報
ldapsearch -x mailroutingaddress=scsi@example.com mailroutingaddress description
dn: uid=scsi,ou=People,dc=example,dc=com
mailRoutingAddress: scsi@example.com
description: 123.123.123.123
この状態で /etc/raddb/mods-available/ldap の filter を下記にしました。
filter = "(&(mailRoutingAddress=%{%{Stripped-User-Name}:-%{User-Name}})(description=%{NAS-IP-Address}))"
これで認証が成功しましたので、応用すれば Macアドレスでのフィルタリングはldapでできるのではないでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/25 20:32