本文提供了企业级加密的 RADIUS 服务器配置环境搭建,供读者参考。
$ sudo apt-get install libnl1 libnl-dev libnl-doc
$ sudo apt-get install libssl-dev
$ sudo apt-get install bridge-utils
$ sudo apt-get install hostapd
如果安装成功, 下面命令会显示 hostapd 版本:
hostapd -v
如:
hostapd v2.4
User space daemon for IEEE 802.11 AP management,
IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
Copyright (c) 2002-2015, Jouni Malinen @w1.fi> and contributors
hostapd
可提供多种服务,我们只需要其中的某几个服务,用户可通过下面的方式配置 hostapd
.
配置前,看下 /etc/hostapd
目录下是否有其他文件,如果有,请清空。
hostapd.conf
配置 hostapd 的工作方式,详细配置可参考 hostapd.conf
官方文档.
我们这里提供了一个 EAP-TLS
方式的 hostapd.conf
, 将其保存到 /etc/hostapd/
目录下
driver=none
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
dump_file=/tmp/hostapd.dump
eap_server=1
eap_user_file=/etc/hostapd/hostapd.eap_user
ca_cert=/etc/hostapd/certs/ca.crt
server_cert=/etc/hostapd/certs/server.pem
private_key=/etc/hostapd/certs/server.key
radius_server_clients=/etc/hostapd/hostapd.radius_clients
radius_server_auth_port=1812
说明:
EAP-PEAP
或 EAP-TTLS
方式,请注释 ca_cert 行 hostapd.eap_user
配置 EAP 方式以及交互过程的一些参数,详细配置可参考 hostapd.eap_user
官方文档。
我们这里提供了一个 EAP-TLS
方式的 hostapd.eap_user
,将其保存到 /etc/hostapd/
目录下
# hostapd user database for integrated EAP server
# This file enables all EAP methods used in WFA testing:
#EAP-TLS,EAP-TTLS/MSCHAPv2,PEAPv0/EAP-MSCHAPv2,PEAPv1/EAP-GTC, EAP-SIM,EAP-AKA, EAP-FAST
# Each line must contain identity, EAP method, and optional password separated with whitespace (space or tab). Identity and password must be double quoted ("user").
# Phase 1 users:q
#* PEAP
#* TTLS
* TLS
# Phase 2 (tunnelled within EAP-PEAP/TTLS/FAST) users
#"user" TTLS-MSCHAPV2 "password" [2]
#"espressif" TTLS-MSCHAPV2 "test11" [2]
"user" MSCHAPV2 "password" [2]
"espressif" MSCHAPV2 "test11" [2]
#"*" MSCHAPV2 "*" [2]
说明:
*
表示第一阶段 identity
可以任意配置,TLS
表示第一阶段用 TLS
方式(需要双向认证)[2]
表示第二阶段需要用的配置,三列分别对应 用户名
, EAP 方式
, 密码
EAP-PEAP
方式,请增加 * PEAP
行EAP-TTLS
方式,请增加 * TTLS
行和 #"espressif" TTLS-MSCHAPV2 "test11" [2]
行hostapd.radius_clients
用于配置 RADIUS client,详细配置可参考 hostapd.radius_clients
官方文档。
我们这里提供了一个任意 RADIUS client 通过密码 12345678
访问 RADIUS 服务的配置 hostapd.radius_clients
,将其保存到 /etc/hostapd/
目录下
# IP of AS pre-shared key
#192.168.0.139/24 radiusserverpasswd
0.0.0.0/0 12345678
hostapd.conf
中指定了 ca_cert
, server_cert
, private_key
路径,因此我们新建目录 /etc/hostapd/certs
, 将我们的 ca 证书 ca.crt
,服务器证书 server.pem
和私钥 server.key
放在该目录下。
sudo hostapd -dddt /etc/hostapd/hostapd.conf
上述环境搭建好后,即可在 AP 上配置企业级加密了。
如 D-LINK: DIR-619L
配置如下:
1812
对应 hostapd.conf
中配置12345678
对应 hostapd.radius_clients
中配置重启后,任何想加入 DLINK 的设备都需要提供对应的连接配置,如 identity
, 用户名
, 密码
等, 当然我们也可以在 hostapd 更改配置已提供更多的服务和权限。