架设vpn全套系统&使用dz论坛用户验证
VPN服务器的安装详细步骤
1,下载相关文件软件
wget http://www.im1990.com/vpn/vpn.tar.gz
2,解压缩这个文件
tar xvfz vpn.tar.gz
3,复制相应的安装权限
chmod 750 vpn.sh
4,执行安装文件
./vpn.sh
5,看图操作。。。
6,按说明操作。。。。
第二步:待第一步安装完成,将upload里面的内容上传至/usr/local/etc/raddb,覆盖原有内容。
第三步:设置数据库、添加分组(套餐)
INSERT INTO radcheck (username,attribute,op,VALUE) VALUES (‘test’,’Cleartext-Password’,’:=’,’test’);
INSERT INTO radusergroup (username,groupname) VALUES (‘test’,’VIP1′);
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Max-Monthly-Traffic’,’:=’,’1073741824′); (每月最大流量1GB,按字节算,1024×1024×1024)
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Acct-Interim-Interval’,’:=’,’60′); (流量统计周期。60秒)
# 限制同时登陆人数,注意是在radgroupcheck表,这里是限制1人登录
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Simultaneous-Use’,’:=’,’1′);
# 其他
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Auth-Type’,’:=’,’Local’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Service-Type’,’:=’,’Framed-User’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Protocol’,’:=’,’PPP’); //加上这个无法正常连接了,可以自己尝试下。
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-MTU’,’:=’,’1500′);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Compression’,’:=’,’Van-Jacobson-TCP-IP’);
第四步:重启服务器,开启radius服务,如果无法开启,尝试先执行 radius -X,之后service radiusd start
第五步:测试连接,如果完全无法登陆,请执行iptables -F
来源:http://markerwatch.net/?p=2503
==========
架设vpn全套系统
写给自己看的。
从配置radius服务器开始,
上传vpn.sh,安装,
管理程序不选择radiusmanager.
安装之后,上传upload文件到/usr/local/etc/raddb。
具体修改如下:
1).vim /usr/local/etc/raddb/radiusd.conf (695行,去掉#)
2).vim /usr/local/etc/raddb/sql/mysql/counter.conf
末尾加入:
sqlcounter monthlytrafficcounter {
counter-name = Monthly-Traffic
check-name = Max-Monthly-Traffic
reply-name = Monthly-Traffic-Limit
sqlmod-inst = sql
key = User-Name
reset = monthly
query = “SELECT SUM(acctinputoctets + acctoutputoctets) FROM radacct WHERE UserName=’%{%k}’ AND UNIX_TIMESTAMP(AcctStartTime) > ‘%b'”
}
3)vim /usr/local/etc/raddb/sites-enabled/default
在authorize区块的末尾(205行)添加
monthlytrafficcounter
4)vim /usr/local/etc/raddb/dictionary
在文件末尾添加下面两行
ATTRIBUTE Max-Monthly-Traffic 3003 integer
ATTRIBUTE Monthly-Traffic-Limit 3004 integer
5)vim /usr/local/etc/raddb/sites-enabled/default
authorize {},152 注释掉files
accounting {},379 注释掉radutmp
session {}模块,433行,注释掉radutmp
6)vim /usr/local/etc/raddb/sites-enabled/inner-tunnel
authorize {}模块,注释掉files 124# 去掉131# sql#号。
session {}模块,注释掉radutmp(251行),去掉sql前面的#号(255行).
post-auth {}模块,去掉sql前的#号(277行),去掉sql前的#号(301行).
参考资料:
http://wangyan.org/blog/freeradius-traffic-limit.html
http://www.fallday.org/archives/703
数据库操作
INSERT INTO radcheck (username,attribute,op,VALUE) VALUES (‘test’,’Cleartext-Password’,’:=’,’test’);
INSERT INTO radusergroup (username,groupname) VALUES (‘test’,’VIP1′);
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Max-Monthly-Traffic’,’:=’,’1073741824′); (每月最大流量1GB)
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Acct-Interim-Interval’,’:=’,’60’); (流量统计周期。60秒)
# 限制同时登陆人数,注意是在radgroupcheck表
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Simultaneous-Use’,’:=’,’1′);
# 其他
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Auth-Type’,’:=’,’Local’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Service-Type’,’:=’,’Framed-User’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Protocol’,’:=’,’PPP’); //加上这个无法正常连接了。
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-MTU’,’:=’,’1500′);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Compression’,’:=’,’Van-Jacobson-TCP-IP’);
添加VPN子服务器
1.)在服务器运行server.sh
chmod 777 server.sh
./server.sh
添加防火墙放行.
2.)客户端运行(即新VPN服务器client.sh
chmod 777 client.sh
./client.sh
添加VPN服务器之后,radius服务器需要重启.
service radiusd restart
原文:http://www.im1990.com/?p=54
==========
使用dz论坛用户验证.
使用dz X2.5论坛的用户密码来验证.
算是简单整合的一种吧,纪录下.
<?
if($_GET){
if(isset($_GET[‘ue’]) && isset($_GET[‘pd’])){
require ‘db.php’;
$username = mysql_real_escape_string($_GET[‘ue’]);
$password = mysql_real_escape_string($_GET[‘pd’]);
$result=mysql_query(“SELECT * FROM pre_ucenter_members WHERE username='”.$username.”‘ “,$conn);
if ($myrow = mysql_fetch_array($result))
{
$salt=$myrow[‘salt’];
//echo $salt;
}
$dz_pwd=md5(md5(trim($_GET[‘pd’])).$salt);
$result=mysql_query(“SELECT * FROM pre_ucenter_members WHERE username='”.$username.”‘ AND password='”.$dz_pwd.”‘”,$conn);
if ($myrow = mysql_fetch_array($result))
{
echo ‘r’;
}else{
echo ‘w’;
}
}
}
?>
dz的真实密码是存在pre_ucenter_members里面的,对接的关键是,获取salt这个6位随机字符串.
dz的真实密码加密方式是$dz_pwd=md5(md5(trim($_GET[‘pd’])).$salt);
这样比较下就ok了.
附上db.php
<?
$conn = mysql_connect(‘127.0.0.1′,’root’,”);
mysql_select_db(‘coco’, $conn);
mysql_query(‘set names utf8’, $conn);
?>
原文:http://www.im1990.com/?p=59
==========
VPN服务器的安装:
目录
3.文件下载
VPN服务器的安装:
1.文件安装:
第一步:上传vpn.sh 安装,选项按照如图填写:
填写之后按任意键开始安装.
第二步:待第一步安装完成,将upload里面的内容上传至/usr/local/etc/raddb,覆盖原有内容。
第三步:设置数据库、添加分组(套餐)
INSERT INTO radcheck (username,attribute,op,VALUE) VALUES (‘test’,’Cleartext-Password’,’:=’,’test’);
INSERT INTO radusergroup (username,groupname) VALUES (‘test’,’VIP1′);
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Max-Monthly-Traffic’,’:=’,’1073741824′); (每月最大流量1GB,按字节算,1024×1024×1024)
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Acct-Interim-Interval’,’:=’,’60’); (流量统计周期。60秒)
# 限制同时登陆人数,注意是在radgroupcheck表,这里是限制1人登录
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Simultaneous-Use’,’:=’,’1′);
# 其他
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Auth-Type’,’:=’,’Local’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Service-Type’,’:=’,’Framed-User’);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Protocol’,’:=’,’PPP’); //加上这个无法正常连接了,可以自己尝试下。
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-MTU’,’:=’,’1500′);
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES (‘VIP1′,’Framed-Compression’,’:=’,’Van-Jacobson-TCP-IP’);
第四步:重启服务器,开启radius服务,如果无法开启,尝试先执行 radius -X,之后service radiusd start
第五步:测试连接,如果完全无法登陆,请执行iptables -F
VPN子服务器的安装:
第一步:按照VPN服务器的安装方法安装,将上面图中freeradius server ip填写为freeradius服务器的地址.(上面安装的为174.139.26.137,如果安装其他子服务器,就将IP填写为174.139.26.137)
第二步:分别在子服务器及主服务器执行如下脚本:
子服务器(174.139.26.138)执行client.sh;
主服务器(174.139.26.137)执行server.sh。
PS.要注意的是,client.sh中要填写主服务器IP(174.139.26.137),server.sh中要填写子服务器IP(174.139.26.138),其中secret_key要相同。
第三步:添加VPN服务器之后,radius服务器需要重启. 执行 service radiusd restart