freeRadius 3を利用した認証サーバの構築

Linux

freeRadiusを利用して以下の認証を行えるサーバを構築

OpenLDAPと連携してLDAPサーバでID / PASSWORDを認証する

  • PAP認証
  • PEAP認証
  • TLS認証
<事前準備>

OS:Almalinux、CentOS 8 等のLinuxサーバ

<構築方法>

1.必要なパッケージをインストール

  • dnf install -y freeradius freeradius-utils freeradius-ldap

2.認証ログを記録する設定を行う

※デフォルトでは認証ログは記録されないため

設定ファイルのバックアップ

  • cp -p /etc/raddb/radiusd.conf /etc/raddb/radiusd.conf.org

設定変更

  • vim /etc/raddb/radiusd.conf

auth = no ⇒ auth = yes

auth_badpass = no ⇒ auth_badpass = yes

auth_goodpass = no ⇒ auth_goodpass = yes

設定保存

  • :wq

3.OpenLDAP連携設定

設定ファイルのバックアップ

  • cp -p /etc/raddb/mods-available/ldap /etc/raddb/mods-available/ldap.org

設定変更

  • vim /etc/raddb/mods-available/ldap

server = ‘localhost’ ⇒ server = ‘OpenLDAPサーバのIPアドレス’

identity = ‘cn=admin,dc=example,dc=org’ ⇒ identity = ‘ldapsearch可能なアカウント’

password = mypass ⇒ password = identityで指定したアカウントのパスワード

base_dn = ‘dc=example,dc=org’ ⇒ base_dn = ‘ドメイン名’

以下の項目をコメントアウト

post-auth{

update{

description := “Authenticated at %S”

}

}

コメントアウト後

#post-auth{

# update{

# description := “Authenticated at %S”

#}

#}

設定保存

  • :wq

例)OpenLDAPサーバ:172.16.10.1

アカウント名:manager パスワード:testpass ドメイン名:domain.local

server = ‘172.16.10.1’

identity = ‘cn=manager,dc=domain,dc=local’

password = testpass

base_dn = ‘dc=domain,dc=local’

LDAP認証の有効化

  • cd /etc/raddb/mods-enabled
  • ln -s ../mods-available/ldap

4.認証方式の設定

設定ファイルのバックアップ

  • cp -p /etc/raddb/mods-available/eap /etc/raddb/mods-available/eap.org

設定変更

  • vim /etc/raddb/mods-available/eap

デフォルト認証方式をPEAPへ変更

default_eap_type = md5 ⇒ default_eap_type = PEAP

認証に使用する証明書の指定

秘密鍵名:private.pem 証明書名:server.pem CA明書名:ca.pemの場合

private_key_file = ${certdir}/server.pem ⇒ private_key_file = /etc/pki/tls/certs/private.pem

※証明書発行時の秘密鍵を/etc/pki/tls/certsにprivate.pemとして配置しておくこと

certificate_file = ${certdir}/server.pem ⇒ certificate_file = /etc/pki/tls/certs/server.pem

※発行した証明書を/etc/pki/tls/certsにserver.pemとして配置しておくこと

ca_file = ${certdir}/ca.pem ⇒ ca_file = /etc/pki/tls/certs/ca.pem

※証明書を発行する際に使用したCA証明書を/etc/pki/tls/certsにca.pemとして配置しておくこと

設定保存

  • :wq

5.MSCHAPv2の設定

設定ファイルのバックアップ

  • cp -p /etc/raddb/mods-available/mschap /etc/raddb/mods-available/mschap.org

設定変更

  • vim /etc/raddb/mods-available/mschap

use_mppe = no ⇒ use_mppe = yes

#require_encryption = yes ⇒ require_encryption = yes

#require_strong = yes ⇒ require_strong = yes

設定保存

  • :wq

6.認証時にLDAP使用する設定

設定ファイルのバックアップ

  • cp -p /etc/raddb/sites-available/default /etc/raddb/sites-available/default.org

設定変更

  • vim /etc/raddb/sites-available/default

以下項目のコメントアウトを外す

#Auth-Type{

#ldap

#}

#ldap

コメントを外した後

Auth-Type{

ldap

}

ldap

設定保存

  • :wq

7.認証受付の設定

設定ファイルのバックアップ

  • cp -p /etc/raddb/sites-available/inner-tunnel /etc/raddb/sites-available/inner-tunnel.org

設定変更

  • vim /etc/raddb/sites-available/inner-tunnel

ipaddr = 127.0.0.0 ⇒ ipaddr = *

-ldap ⇒ ldap

以下項目のコメントアウトを外す

#Auth-Type{

#ldap

#}

#ldap

コメントを外した後

Auth-Type{

ldap

}

ldap

設定保存

  • :wq

8.設定反映のためradiusdを再起動

  • systemctl restart radiusd

9.自動起動も忘れず

  • systemctl enable radiusd

以上

<最後に>

RADIUSクライアントの登録を忘れないように

※忘れるとそもそも問答無用で認証拒否される

自己証明書を使用すると失効リストチェックなどが原因でNGになる場合あり

※解決方法を知りたい ⇒ 問い合わせフォームより連絡

WindowsのActive Directoryを連携したい

※問い合わせフォームから連絡

試験方法

他サイトを参考に・・・

※試験方法も知りたい ⇒ 問い合わせフォームから連絡

コメント

タイトルとURLをコピーしました