はじめに
せっかく家庭内Active Directoryを運用しているので、WifiのRADIUS認証で使ってみようと思い、FreeRADIUSの導入にチャレンジしてみました。
LXCコンテナ
下記記事で生成したコンテナをベースにFreeRADIUSをインストールします。
インストール
今回の前提バージョンは
- Debian GNU/Linux : 11
- FreeRADIUS : 3.0.21
- Samba : 4.13.13
です。
rootユーザーで作業します。
必要なパッケージをインストールします。
apt update && apt install freeradius samba winbind krb5-user krb5-config設定
rootユーザーで作業します。
- レルム : AD.INAHO.SPACE
- シークレットキー : testing123
Kerberos
/etc/krb5.confを編集して設定を行います。
[libdefaults]
default_realm = AD.INAHO.SPACE
dns_lookup_realm = false
dns_lookup_kdc = trueSamba
/etc/samba/smb.confを編集して設定を行います。
[global]
netbios name = PVE-RADIUS
server string = FreeRADIUS Server
realm = AD.INAHO.SPACE
workgroup = AD
security = ads
invalid users = root
socket options = TCP_NODELAY
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
winbind use default domain = no
winbind max domain connections = 5
winbind max clients = 1000
password server = *Active DirectoryにJOINします。
kinit Administrator
net ads join -kWinbindを再起動します。
systemctl restart winbind.serviceFreeRADIUS
クライアント情報設定
/etc/freeradius/3.0/clients.confを編集して設定を行う。
下記内容を末尾に追記する。
client venus1 {
ipaddr = 172.16.0.2
secret = testing123
}
client venus2 {
ipaddr = 172.16.0.3
secret = testing123
}Active Directory認証
/etc/freeradius/3.0/mods-available/mschapを編集して設定を行う。
mschap {
:
:
winbind_username = "%{mschap:User-Name}"
winbind_domain = "AD.INAHO.SPACE"
:
:
}所有者変更
FreeRADIUSから/var/lib/samba/winbindd_privileged/にアクセスできるようにグループを変更する。
chgrp freerad /var/lib/samba/winbindd_privileged/動作確認
FreeRADIUSをデバッグモードで起動して、別端末からradtestを使用して動作確認を行う。
デバッグモードでの起動。
freeradius -X動作確認。
radtest -t mschap <ユーザーID>@<ドメイン> <パスワード> <接続先ホスト> <ポート> <シークレット>例:
radtest -t mschap testuser@ad.inaho.space P@ssword localhost 12345 testing123実稼働
FreeRADIUSを起動して、システム起動時の自動起動を有効にする。
systemctl enable freeradius.service
systemctl start freeradius.serviceアクセスポイントにRADIUS認証の設定を行い実稼働する。
APの機種毎に設定のしかたが異なるので割愛します。
ちなみにウチでは2台のASUS RT-AC68Uをアクセスポイントモードで運用しています。
おわりに
ちゃんと使うにはまだ設定するべき点があるかもしれませんが、RADIUS認証をActive Directoryで行う最低限の設定はできたと思います。
実は今まで何回かFreeRADIUSの構築にチャレンジしてきたのですが、なぜか親のPCで認証がおかしくなって使うのをやめてきました。
今回はntlm_authを使わなくなったという点が変わったので、変化があるといいなと思って再び構築してみました。
これでActive Directoryのアカウントを持つ人のみがアクセスポイントにアクセスできるようになるので、ネットワークのセキュリティが少し向上したかなと思います。
