freeradius+openvpn
更新时间:2024-06-24 10:22:01 阅读量: 综合文库 文档下载
gcc gcc-c++ lzo-2.04.tar.gz openssl openssl-devel crypt* libgcrypt*
freeradius-server-2.1.10.tar.gz freeradius-mysql openvpn-2.1.4.tar.gz daloradius-0.9-8.tar.gz
radiusplugin_v2.1a_beta1.tar.gz
xampp-linux-1.7.1.tar.gz(php版本需要为5.2XXX版本,daloradius对php5.3版本支持不好)
可以使用单独安装php,mysql,apache来支持。 安装过程 1、首先使用yum命令安装以上没有具体版本的软件或者各种库
2、为了方便,本文使用xampp1.7.1,这个版本不是xampp的最新版,因 为最新版的php是5.3版本,daloradius对其支持不好,所以使用了这个版本。把这个软件移动到opt并解压到当前目录lampp,执 行./lampp start 启动lampp,关闭防火墙,从客户端输入ip地址进行访问看lampp是否正常,如正常则可以看到lampp的默认页面。
3、解压freeradius到当前目录tar -zxvf freeradius-server-2.1.10.tar.gz,切换到freeradius目录,
执行./configure编译
执行cp libltdl/ltdl.h src/include/(如果不靠边make的时候可能会出错), 接着执行make,make install
4、 打开[root@linux85 /]# vim /usr/local/etc/raddb/users 找下面这段,把前面的注释去掉 steve Cleartext-Password := “testing” Service-Type = Framed-User, Framed-Protocol = PPP,
Framed-IP-Address = 172.16.3.33, Framed-IP-Netmask = 255.255.255.0, Framed-Routing = Broadcast-Listen, Framed-Filter-Id = “std.ppp”, Framed-MTU = 1500,
Framed-Compression = Van-Jacobsen-TCP-IP
这样你就有了一个测试的用户,用户名:steve 密码:testing 启动freeraidus的debug模式 [root@linux85 /]# radiusd -X 看到如下类似信息表示freeradius运行成功
Listening on authentication address * port 1812 Listening on accounting address * port 1813 Listening on command file /usr/local/var/run/radiusd/radiusd.sock Listening on authentication address 127.0.0.1 port 18120 as server inner-tunnel Listening on proxy address * port 1814 Ready to process requests.
另外再开一个界面执行测试语句[root@linux85 ~]# radtest steve testing localhost 1812 testing123 ,返回以下结果,表示freeradius正常运行
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=119, length=71 Service-Type = Framed-User Framed-Protocol = PPP Framed-IP-Address = 172.16.3.33 Framed-IP-Netmask = 255.255.255.0 Framed-Routing = Broadcast-Listen Filter-Id = “std.ppp” Framed-MTU = 1500 Framed-Compression = Van-Jacobson-TCP-IP
5、为mysql的root账户添加密码/opt/lampp/bin/mysqladmin -uroot password 123,上述命令行为root账号添加密码为123
创建radius数据库 /opt/lampp/bin/mysqladmin -uroot -p123 create radius 添加一个新表
CREATE TABLE usergroup ( UserName varchar(64) NOT NULL default ”, GroupName varchar(64) NOT NULL default ”, priority int(11) NOT NULL default ?1′, KEY UserName (UserName(32)) ) ;
执行如下代码导入数据库表并为数据库赋予访问权限
# mysql -u root -p radius < /usr/local/etc/raddb/sql/mysql/schema.sql # mysql -u root -p radius < /usr/local/etc/raddb/sql/mysql/nas.sql # mysql -u root -p radius < /usr/local/etc/raddb/sql/mysql/ippool.sql # mysql -u root -p radius <
/usr/local/etc/raddb/sql/mysql/wimax.sql # mysql -u root -p GRANT SELECT ON radius.* TO ?radius?@'localhost? IDENTIFIED BY ?radpass?; GRANT ALL on radius.radacct TO ?radius?@'localhost?; GRANT ALL on radius.radpostauth TO ?radius?@'localhost?; 6、此步骤和第5步中的导入数据库表是重复的,如下是另外一种导入数据库表的方法,也可以正常使用freeradius
导入数据库表 /opt/lampp/bin/mysql -uroot -p123 radius < /mysql.sql ,这里的mysql.sql是freeradius1.1.7xx版本中的mysql数据库文件,具体位置freeradius- 1.1.7/freeradius-1.1.7/doc/examples
登录mysql,再创建另外一个新表radusergroup
CREATE TABLE radusergroup ( username varchar(64) NOT NULL default ”, groupname varchar(64) NOT NULL default ”, priority int(11) NOT NULL default ?1′, KEY username (username(32)) ) ;
7、向数据库radius中导入一些组和用户信息,登录mysql执行以下命令行 use radius; 组信息
insert into radgroupreply (groupname,attribute,op,value) values (?user?,'Auth-Type?,':=?,'Local?);
insert into radgroupreply (groupname,attribute,op,value) values (?user?,'Service-Type?,'=?,'Framed-User?);
insert into radgroupreply (groupname,attribute,op,value) values (?user?,'Framed-IP-Netmask?,'=?,?255.255.255.255′);
insert into radgroupreply (groupname,attribute,op,value) values (?user?,'Framed-IP-Netmask?,':=?,?255.255.255.0′); 添加用户
INSERT INTO radcheck (UserName, Attribute, Value) VALUES (?test?, ?Password?, ?test?); 把用户添加到组中
insert into radusergroup(username,groupname) values(?test?,'user?); 测试
select * from radcheck where UserName=?test?; 8、下面配置freeradius的配置文件
[root@linux85 bin]# vim /usr/local/etc/raddb/sql.conf下面添加mysql的用户名和密码(大约在36行) # Connection info:
server = “127.0.0.1″ //这里原来为localhost,要修改成127.0.0.1,否则freeradius会出错 #port = 3306 login = “root” 用户名 password = “123″ 密码
[root@linux85 bin]# vim /usr/local/etc/raddb/sites-enabled/default 在152行的files前加#注释 在159行去掉sql前的#注释 在354行的files前加#注释 在388行去掉sql前的#注释
[root@linux85 bin]# vim /usr/local/etc/raddb/radiusd.conf 去掉683行的# $INCLUDE eap.conf前的#
执行 radiusd -X(大写的X)调试运行freeradius,如果不报错误,即表示freeradius运行成功
修改clients.conf文件
[root@linux85 ~]# vim /usr/local/etc/raddb/clients.conf 添加如下信息 client 192.168.0.0/24 {
secret = testing123(认证的密钥) {color:#000000}}
在本机另外开一个窗口,输入
[root@linux85 ~]# radtest test test localhost 0 testing123 如果返回如下信息表示freeradius和数据库交互成功啦
rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=85, length=20 9、 安装lzo-2.04.tar.gz tar -zxvf lzo-2.04.tar.gz ./configure make make install
10、安装openvpn-2.1.4 tar -zxvf openvon-2.1.4.tar.gz
./configure –prefix=/usr/local/openvpn –with-lzo-headers=/usr/local/include/lzo
–with-lzo-lib=/usr/local/lib –with-ssl-headers=/usr/include/openssl –with-ssl-lib=/usr/lib (需要几分钟的等待) make make install
11、生成openvpn的key等相关文件
拷贝生成key的文件[root@linux85 openvpn-2.1.4]# cp -rf ./easy-rsa/ /usr/local/openvpn/ [root@linux85 openvpn-2.1.4]# cd /usr/local/openvpn/easy-rsa/2.0 vim vars
修改底部的如下内容,并保存
export KEY_COUNTRY=”CN” export KEY_PROVINCE=”AH” export KEY_CITY=”HF” export KEY_ORG=”Lighten” export KEY_EMAIL=”306981145@qq.com” [root@linux85 2.0]# source ./vars ./clean-all ./build-ca
./build-key-server server ./build-dh cd keys
/usr/local/openvpn/sbin/openvpn –genkey –secret ta.key cd /usr/local/openvpn mkdir ssl
cp -a ./easy-rsa/2.0/keys/ca.crt ./ssl/ cp -a ./easy-rsa/2.0/keys/dh1024.pem ./ssl/
cp -a ./easy-rsa/2.0/keys/ta.key ./ssl/ cp -a ./easy-rsa/2.0/keys/server.crt ./ssl/ cp -a ./easy-rsa/2.0/keys/server.key ./ssl/ 12、openvpn的配置 拷贝server.conf文件
[root@linux85 openvpn]# cp /openvpn-2.1.4/sample-config-files/server.conf /usr/local/openvpn/
vim /usr/local/openvpn/server.conf,请参考附件中的server.conf文件进行配置 创建两个文件夹
mkdir /usr/local/openvpn/ccd mkdir /usr/local/var/log/openvpn 配置启动文件
[root@linux85 openvpn]# cp /openvpn-2.1.4/sample-scripts/openvpn.init /etc/init.d/ [root@linux85 openvpn]# ln -s /usr/local/openvpn/sbin/openvpn /usr/sbin/openvpn vi /etc/init.d/openvpn.init 修改:work=/usr/local/openvpn 启动openvpn
/etc/init.d/openvpn.init start
这个时候要看一下 ifconfig 有没有 tun0设备,如果有的话,openvpn启动成功 13、安装配置radiusplugin
[root@linux85 /]# tar -zxvf radiusplugin_v2.1a_beta1.tar.gz cd radiusplugin_v2.1a_beta1 make
[root@linux85 radiusplugin_v2.1a_beta1]# cp radiusplugin.so /usr/local/openvpn/ [root@linux85 radiusplugin_v2.1a_beta1]# cp radiusplugin.cnf /usr/local/openvpn/ vim /usr/local/openvpn/radiusplugin.cnf
第22行处修改openvpn的server.conf文件位置 OpenVPNConfig=/usr/local/openvpn/server.conf 第74行处修改name为本机地址 name=127.0.0.1 第80行处修改sharedsecret sharedsecret=testing123 14、安装配置Daloradius
Daloradius是管理freeradius的web管理界面 [root@linux85 /]# tar -zxvf daloradius-0.9-8.tar.gz mkdir /opt/lampp/htdocs/radius
[root@linux85 /]# cp -rf daloradius-0.9-8/* /opt/lampp/htdocs/radius/ [root@linux85 /]# vim /opt/lampp/htdocs/radius/library/daloradius.conf.php 配置如下
$configValues['DALORADIUS_VERSION'] = ?0.9-8′; $configValues['FREERADIUS_VERSION'] = ?1′; $configValues['CONFIG_DB_ENGINE'] = ?mysql?; $configValues['FREERADIUS_VERSION'] = ?1′; $configValues['CONFIG_DB_ENGINE'] = ?mysql?; $configValues['CONFIG_DB_HOST'] = ?127.0.0.1′; $configValues['CONFIG_DB_USER'] = ?root?; $configValues['CONFIG_DB_PASS'] = ?123′; 导入daloradius数据库
[root@linux85 /]# /opt/lampp/bin/mysql -uroot -p123 radius < /opt/lampp/htdocs/radius/contrib/db/mysql-daloradius.sql
创建log文件
touch /tmp/daloradius.log 更改freeradius的log文件位置
[root@linux85 tmp]# vim /opt/lampp/htdocs/radius/library/exten-radius_log.php 修改$logfile_loc1 = ?/usr/local/var/log/radius/radius.log?; 如何使用 1、使用浏览器登录到daloradius,地址为http://192.168.0.85/radius, 默认用户名administrator,默认密码为radius
2、新建一个用户,用户名admin,密码admin
3、从centos中拷贝ca.key ca.crt ta.key三个文件,并配置client.ovpn,client.ovpn文件可从附件中下载,需要配置的地方remote XX.XX.XX.XX 1194
4、从官方下载openvpn客户端并安装,把上述四个文件拷贝到D:\\Program Files\\OpenVPN\\config文件夹中 5、按照如上配置之后即可连接vpn
6、如果有什么错误可查看usr/local/var/log/openvpn/openvpn.log 和 usr/local/var/log/radius/radius.log 和/tmp/daloradius.log
正在阅读:
freeradius+openvpn06-24
观察蜗牛的作文600字07-04
案例教学法在数字电子技术课程中的探索与思考-2019年教育文档12-31
黄山行作文800字06-16
教师专业进修培训个人计划01-13
建设工程质量监督登记书08-11
老业主情感维系活动方案12-03
2012新课标高考化学考试说明解读05-17
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- freeradius
- openvpn
- 党性分析材料+党校学习心得体会3篇
- 永威教案初中政治(七、八、九)教案
- 人口社会学复习题
- 隧道仰拱混凝土技术交底
- 第一篇 煤矿地质(含第一、二章) - 图文
- 2009年各地名校物理高考模拟试题分类及详解十三、交变电流 电磁
- 论学校之“美”
- 记忆训练游戏(活动课)上
- 副钻岗位资格认证考试题库(M8)
- 教育技术学教学大纲
- 证券基础知识点总结
- 混凝土结构设计原理填空题库(带答案)
- 必修1第二章第1节函数的概念和图象、函数的表示方法
- 我写的设计模式的文章总结
- 股权购买协议 中英文
- 前厅服务与客房管理期末报告
- 《现场安全目视管理》在建筑施工中的应用
- 《城市人口规模预测规程》
- 北师大版八上第一章蚂蚁怎样走最近最新自编
- 七年级上册英语导学案(2011)