eduroam 安装记录

james@ustc.edu.cn

参考文章: 中国科学技术大学:共享eduroam联盟无线网络服务(中国教育网络 2015.11)

测试工具:https://radius.ics.muni.cz/eduroam-test/eduroam-test.cgi

Protocol and Password Compatibility

0. 基础

1. 有用户名和明文密码,以便radius使用(加密的密码未测试过)
2. vlan 196设置了DHCP,用户可以正常上网
3. 无线AC上之前没有设置过802.1X认证或其他认证
4. 准备一个IP地址,将来用作radius服务器。

1. 联系eduroam认证中心

CERNET用户可以联系eduroam@CERNET http://www.eduroam.edu.cn

其他用户请联系 eduroam 中国无线网漫游交换中心 http://eduroam.cstnet.cn

填写申请表,发送邮件,等待对方的电话联系,并获取到相关的key.

2. 安装radius服务器

1. 我们使用的虚拟机,按照 http://ctos.ustc.edu.cn/ ,安装CentOS 6,并设置好epel库。

2. 安装如下包
yum install mysql-server mysql freeradius-mysql freeradius freeradius-utils git

3. 启动mysqld

4. 创建数据库
参考 /etc/raddb/sql/mysql/admin.sql schema.sql

5. 设置包过滤规则
禁用系统的iptables,设置如下规则

#!/bin/bash

iptables -F

iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -j ACCEPT -i lo

iptables -A INPUT -j ACCEPT -p icmp
iptables -A INPUT -j ACCEPT -p udp --dport 1812:1813 -s 10.10.201.1
iptables -A INPUT -j ACCEPT -p udp --dport 1812:1813 -s 162.105.129.2
iptables -A INPUT -j ACCEPT -p udp --dport 1812:1813 -s 162.105.129.5
iptables -A INPUT -j ACCEPT -p tcp --dport 22 -s *.*.*.*

iptables -A INPUT -j DROP

3. 配置radius

1. 建议用git 跟踪配置修改。
cd /etc/raddb
git init .
git add *
git commit -a -m "init"
2. 我们的修改
请参考 raddb.diff

说明1:
以下修改是不对外发送account请求,原因是对方经常不应答,导致一直在重传

+ 	if(Realm && Realm != 'LOCAL'){
+ 		update control {
+ 			Proxy-To-Realm := 'LOCAL'
+ 			Replicate-To-Realm = 'eduroam'
+ 		}
+ 	}

4. 测试用户

mysql radius
INSERT INTO radcheck VALUES (1,'test','Cleartext-Password',':=','test123');
建立一个用户test,密码test123

5. 无线AC设置

我校使用AC是H3C品牌,增加如下设置:

domain default enable eduroam 
domain if-unknown eduroam 

dot1x authentication-method eap
  
vlan 196
  name eduroam


radius scheme eduroam
 server-type extended
 primary authentication 202.38.64.12 key cipher *****************
 primary accounting 202.38.64.12 key cipher *******************
 timer realtime-accounting 0
 retry stop-accounting 10


domain eduroam 
 authentication lan-access radius-scheme eduroam
 authorization lan-access radius-scheme eduroam
 accounting lan-access radius-scheme eduroam
 access-limit disable
 state active 
 idle-cut disable 
 self-service-url disable 


wlan service-template 14 crypto
 ssid eduroam
 bind WLAN-ESS 14
 cipher-suite tkip
 cipher-suite ccmp
 security-ie rsn
 security-ie wpa
 service-template enable

interface WLAN-ESS14
  description eduroma
  port link-type hybrid
  undo port hybrid vlan 1
  port hybrid vlan 196 untagged
  port hybrid pvid vlan 196
  mac-vlan enable
  port-security port-mode userlogin-secure-ext 
  port-security tx-key-type 11key 
  undo dot1x handshake 
  undo dot1x multicast-trigger

关联到AP下即可

wlan ap ********* model WA2620-AGN id 150
 serial-id 219801A0A89115G00018
 radio 1
  service-template 14
 radio 2
  service-template 14

6. 测试

1. 在radius服务器上执行
radiusd -X

2. 使用终端连接无线,测试
如果正常连接,在radacct radpostauth表中能看到相关的记录。

/var/log/radius目录下可以看到更详细的认证和计费记录。