老谢博客

  • 首页
  • WordPress
  • 网络技术
  • 乱七八糟
  • 运维技术
  • 给我留言
  • 关于老谢

CentOS安装配置OpenVPN并结合freeradius验证

分类:运维技术日期:2012-12-02 - 10:32:04作者:老谢

配置OpenVPN服务器端

wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh epel-release-5-4.noarch.rpm
yum install openvpn
cp -R /usr/share/openvpn/easy-rsa /etc/openvpn/
cd /etc/openvpn/easy-rsa/2.0
vim vars

wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm rpm -Uvh epel-release-5-4.noarch.rpm yum install openvpn cp -R /usr/share/openvpn/easy-rsa /etc/openvpn/ cd /etc/openvpn/easy-rsa/2.0 vim vars

根据自己实际情况修改下面的信息:

export KEY_COUNTRY=”CN”
export KEY_PROVINCE=”TJ”
export KEY_CITY=”TJ”
export KEY_ORG=”liukangxu.info”
export KEY_EMAIL=”admin@liukangxu.info”

export KEY_COUNTRY=”CN” export KEY_PROVINCE=”TJ” export KEY_CITY=”TJ” export KEY_ORG=”liukangxu.info” export KEY_EMAIL=”admin@liukangxu.info”

source ./vars
./clean-all #全部回车
./build-ca server #前面全回车,最后两步y
./build-key-server server #前面全回车,最后两步y
 ./build-key vpn1 #vpn1是客户端名称
./build-dh #生成Diffie Hellman参数

source ./vars ./clean-all #全部回车 ./build-ca server #前面全回车,最后两步y ./build-key-server server #前面全回车,最后两步y ./build-key vpn1 #vpn1是客户端名称 ./build-dh #生成Diffie Hellman参数

编辑/etc/openvpn/server.conf放入下面的内容:

port 443
proto tcp
dev tun
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
server 192.168.20.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
persist-key
persist-tun

port 443 proto tcp dev tun ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 192.168.20.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway" push "dhcp-option DNS 8.8.8.8" keepalive 10 120 comp-lzo persist-key persist-tun

启用ip包转发

sed -i "s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" /etc/sysctl.conf
sysctl -p

sed -i "s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" /etc/sysctl.conf sysctl -p

然后配置iptables规则,很重要,不然会导致连接后无法访问外网

iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -j SNAT –to-source 你的服务器IP地址
/etc/init.d/iptables save
/etc/init.d/iptables restart

iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -j SNAT –to-source 你的服务器IP地址 /etc/init.d/iptables save /etc/init.d/iptables restart

最后启动openvpn以及加入开机启动

service openvpn start
chkconfig openvpn on

service openvpn start chkconfig openvpn on

配置OpenVPN客户端

下载OpenVPN的windows客户端:http://swupdate.openvpn.org/community/releases/openvpn-2.2.1-install.exe

下载安装完成以后,把OpenVPN服务器/etc/openvpn/easy-rsa/2.0/keys目录下的vpn1.crt、vpn1.csr、vpn1.key、ca.crt、ca.key五个文件复制到OpenVPN客户端安装目录下的config目录下

然后再config目录下新建vpn1.ovpn文件,编辑内容如下:

client
dev tun
proto tcp
remote OpenVPN服务器ip 443
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert vpn1.crt
key vpn1.key
ns-cert-type server
comp-lzo
verb 3

client dev tun proto tcp remote OpenVPN服务器ip 443 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert vpn1.crt key vpn1.key ns-cert-type server comp-lzo verb 3

至此全部操作完成,打开OpenVPN客户端连接试试看吧!

以上内容主要参考以下文章:

OpenVZ VPS 下 CentOS 安装 OpenVPN 详细教程
CentOS 安装和配置OpenVPN

感谢以上所有文章的原作者!

结合freeradius验证

上面全部操作没有问题以后,请再继续下面的步骤:

上面是使用个人证书验证,由于要结合freeradius,所以要修改使用用户名、密码验证,请保证/etc/openvpn/server.conf配置文件如下:

port 443
proto tcp
dev tun
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
server 192.168.20.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
persist-key
persist-tun
status 1194.log
verb 3
 
client-cert-not-required
username-as-common-name

port 443 proto tcp dev tun ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 192.168.20.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway" push "dhcp-option DNS 8.8.8.8" keepalive 10 120 comp-lzo persist-key persist-tun status 1194.log verb 3 client-cert-not-required username-as-common-name

安装必要的包

yum install libgcrypt libgcrypt-devel gcc-c++

yum install libgcrypt libgcrypt-devel gcc-c++

安装radius的插件

wget http://www.nongnu.org/radiusplugin/radiusplugin_v2.1a_beta1.tar.gz
tar xvfz radiusplugin_v2.1a_beta1.tar.gz
cd radiusplugin_v2.1a_beta1/
make
cp radiusplugin.so /etc/openvpn/
cp radiusplugin.cnf /etc/openvpn/

wget http://www.nongnu.org/radiusplugin/radiusplugin_v2.1a_beta1.tar.gz tar xvfz radiusplugin_v2.1a_beta1.tar.gz cd radiusplugin_v2.1a_beta1/ make cp radiusplugin.so /etc/openvpn/ cp radiusplugin.cnf /etc/openvpn/

编辑/etc/openvpn/radiusplugin.cnf,保证server部分信息如下,其他部分不动:

erver
{
        # The UDP port for radius accounting.
        acctport=1813
        # The UDP port for radius authentication.
        authport=1812
        # The name or ip address of the radius server.
        name=YOUR RADIUS SERVER IP
        # How many times should the plugin send the if there is no response?
        retry=1
        # How long should the plugin wait for a response?
        wait=1
        # The shared secret.
        sharedsecret=YOUR RADIUS SERVER SECRET
}

erver { # The UDP port for radius accounting. acctport=1813 # The UDP port for radius authentication. authport=1812 # The name or ip address of the radius server. name=YOUR RADIUS SERVER IP # How many times should the plugin send the if there is no response? retry=1 # How long should the plugin wait for a response? wait=1 # The shared secret. sharedsecret=YOUR RADIUS SERVER SECRET }

编辑/etc/openvpn/server.conf在最下面加入:

plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf
service openvpn restart

plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf service openvpn restart

至此,openvpn服务器端配置完成,下面是客户端,配置文件如下即可:

client
dev tun
proto tcp
remote OpenVPN-Server-IP PORT
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
verb 3

client dev tun proto tcp remote OpenVPN-Server-IP PORT resolv-retry infinite nobind tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 persist-key persist-tun ca ca.crt auth-user-pass comp-lzo verb 3

原文地址 : https://www.xj123.info/3191.html

本站遵循 : 署名-非商业性使用-相同方式共享 2.5 中国大陆 (CC BY-NC-SA 2.5)

版权声明 : 原创文章转载时,请务必以超链接形式标明文章原始出处

Tags: FreeRADIUS , openvpn
  • 上一篇:CentOS安装配置L2TP并结合freeradius验证
  • 下一篇:KeyCool 87开箱+使用体验
10条评论
  1. 阳光不锈 说:

    很好的教程!
    正好有限制VPS,试验下!

    POST:2012-12-04 11:42 回复
  2. 所谓刚子 说:

    我之前折腾过 不过没折腾好!

    POST:2012-12-05 19:06 回复
  3. Breeze_CN 说:

    现在需要利用freeRADIUS搭建一个AAA服务器,不知道users之类的文件怎么配置……

    POST:2012-12-18 17:40 回复
  4. 不语 说:

    SIGUSR1[soft,connection-reset] received, client-instance restarting
    TCP/UDP: Closing socket
    报错了,不用radius验证就能过

    POST:2013-03-26 21:44 回复
    • 老谢 说:

      @不语 需要在/etc/openvpn/server.conf里面添加配置使radius插件生效的

      POST:2013-03-27 09:56 回复
      • 不语 说:

        已经添加 就是添加了才验证不过 不添加直接用证书即可通过

        POST:2013-03-27 15:34 回复
        • 老谢 说:

          @不语 那就说明radius验证是失败的,可以用radius的debug模式,判断下是哪边的问题

          POST:2013-03-28 09:36 回复
  5. ch.gvim@gmail.com 说:

    radius 这块的配置有链接吗

    POST:2013-03-27 12:17 回复
    • 老谢 说:

      @ch.gvim@gmail.com 我的博客写过,也可以网上搜,这方面的教程很多

      POST:2013-03-28 09:39 回复
  6. 小清新 说:

    昨天我弄了一天,都没有弄好!气死我了!

    POST:2013-04-22 13:43 回复
发表评论 点击取消评论.

*必填

*必填

  • 文章归档
  • 子网计算
  • 我的共享
  • 锻炼计划
  • 给我留言
  • 关于老谢
2025 年 6 月
一 二 三 四 五 六 日
 1
2345678
9101112131415
16171819202122
23242526272829
30  
« 5 月    

最新文章

  • 认知,是否是一座大山?当架构决策变成配置清单比价
  • 重装博客服务器环境
  • 特斯拉24款标续 Model Y 2万公里使用体验
  • 接盘的傻子
  • 小牛us电瓶指示灯闪三次不上电
  • 一次还不错的小米售后体验
  • 装台1600元办公主机
  • 2021好久没更新博客
  • Zabbix监控oxidized备份状态
  • Zabbix 5.0 LTS版本MySQL表分区及编译安装随记

最新评论

  • zwwooooo:类似以前做网站开发时,一开始有自...
  • 老陳网志:有点高端,像我们整点nas玩玩就够...
  • springwood:自从 CentOS 不维护之后,我换 U...
  • 大D:难都搞下来了,那就更得YM了
  • 大D:只能是YM了,谢总牛啊
  • 灰常记忆:经济不好 今年我也换了机器 一...
  • 大峰:这是海外服务器嘛?速度挺快的。
  • 大D:只能单走一个6了哈哈哈
  • zwwooooo:买特斯拉和买iPhone的人群其实相似...
  • 平安家属子痕:一直坚持油车,看你写的心里有...

日志存档

  • 2025 年 5 月
  • 2025 年 4 月
  • 2025 年 3 月
  • 2024 年 9 月
  • 2024 年 5 月
  • 2024 年 1 月
  • 2023 年 4 月
  • 2021 年 10 月
  • 2021 年 4 月
  • 2021 年 3 月
  • 2021 年 2 月
  • 2020 年 11 月
  • 2020 年 9 月
  • 2020 年 5 月
  • 2020 年 4 月
  • 2020 年 3 月
  • 2020 年 1 月
  • 2019 年 12 月
  • 2019 年 10 月
  • 2019 年 7 月
  • 2019 年 6 月
  • 2019 年 5 月
  • 2019 年 3 月
  • 2019 年 1 月
  • 2018 年 12 月
  • 2018 年 11 月
  • 2018 年 10 月
  • 2018 年 7 月
  • 2018 年 6 月
  • 2018 年 5 月
  • 2018 年 4 月
  • 2018 年 3 月
  • 2018 年 1 月
  • 2017 年 10 月
  • 2017 年 9 月
  • 2017 年 8 月
  • 2017 年 7 月
  • 2017 年 2 月
  • 2017 年 1 月
  • 2016 年 12 月
  • 2016 年 11 月
  • 2016 年 10 月
  • 2016 年 7 月
  • 2016 年 6 月
  • 2016 年 4 月
  • 2016 年 2 月
  • 2016 年 1 月
  • 2015 年 12 月
  • 2015 年 10 月
  • 2015 年 9 月
  • 2015 年 7 月
  • 2015 年 5 月
  • 2015 年 4 月
  • 2015 年 3 月
  • 2015 年 2 月
  • 2015 年 1 月
  • 2014 年 12 月
  • 2014 年 10 月
  • 2014 年 9 月
  • 2014 年 8 月
  • 2014 年 7 月
  • 2014 年 6 月
  • 2014 年 5 月
  • 2014 年 4 月
  • 2014 年 3 月
  • 2014 年 2 月
  • 2014 年 1 月
  • 2013 年 12 月
  • 2013 年 11 月
  • 2013 年 10 月
  • 2013 年 9 月
  • 2013 年 8 月
  • 2013 年 7 月
  • 2013 年 6 月
  • 2013 年 5 月
  • 2013 年 4 月
  • 2013 年 3 月
  • 2013 年 2 月
  • 2013 年 1 月
  • 2012 年 12 月
  • 2012 年 11 月
  • 2012 年 9 月
  • 2012 年 8 月
  • 2012 年 7 月
  • 2012 年 6 月
  • 2012 年 5 月
  • 2012 年 4 月
  • 2012 年 3 月
  • 2012 年 2 月
  • 2012 年 1 月
  • 2011 年 12 月
  • 2011 年 11 月
  • 2011 年 10 月
  • 2011 年 9 月
  • 2011 年 8 月
  • 2011 年 7 月
  • 2011 年 6 月
  • 2011 年 5 月
  • 2011 年 4 月
  • 2011 年 3 月
  • 2011 年 2 月
  • 2011 年 1 月
  • 2010 年 12 月
  • 2010 年 11 月
  • 2010 年 10 月
  • 2010 年 9 月
  • 2010 年 8 月
  • 2010 年 7 月

W3C

  • XHTML 1.0 Transitional
  • CSS level 3
  • Google+
Copyright © 2010-2025 老谢博客 All rights reserved.
Gzipped 76.5% | Optimized loading 53 queries in 0.829 seconds | Memory 38.99 MB | 尼玛的备案
Powered by WordPress. | Hosted By LAOXUEHOST | Theme by WordPress主题巴士 | 站点地图 | SiteMap | uptime查询