CentOS6.5 基于AD域账号联动认证的OpenVPN服务器配置

、OpenVPN服务器的安装与配置1)OpenVPN服务器的安装Yum install openvpn openvpn-auth-ldap -y //安装OpenVPN与LDAP认证插件Yum install easy-rsa -y //安装RSA证书管理工具2)设置OpenVPNServer与easy-rsa

vars脚本,是用来创建环境变量,设置所需要要的变量的脚本

clean-all脚本,是创建生成ca证书及密钥文件所需要的文件及目录

build-ca脚本,生成ca证书(交互)

build-dh脚本,生成Diffie-Hellman文件(交互)

build-key-server脚本,生成服务器端密钥(交互)

build-key脚本,生成客户端密钥(交互)

pkitool脚本,直接使用vars的环境变量设置,直接生成证书(非交互)

Cd /etc/openvpn //进入到OpenVPN配置目录Cp -ra /usr/share/easy-rsa/2.0/ /etc/openvpn //复制样式证书管理工具到OpenVPN目录Mv 2.0 easy-rsa //重命名文件夹名称

3)创建当前OpenSSL的符号链接

Cd /etc/openvpn/easy-rsa //进入Easy-rsa目录Ln -s openssl-1.0.0.cnf openssl.cnf //设置符号链接

4)设置Vars证书变量配置文件

<<< OUTPUT OMMITTED >>># Increase this to 2048 if you# are paranoid. This will slow# down TLS negotiation performance# as well as the one-time DH parms# generation process.exportKEY_SIZE=2048 //设置加密长度# In how many days should the root CA key expire?exportCA_EXPIRE=3650 //设置CA有效期# In how many days should certificates expire?exportKEY_EXPIRE=3650 //设置Key有效期# These are the default values for fields# which will be placed in the certificate.# Don’t leave any of these fields blank.exportKEY_COUNTRY=”CN” //设置国家名称exportKEY_PROVINCE=”GD” //设置省份名称exportKEY_CITY=”SZ” //设置城市名称exportKEY_ORG=”www.Lidongni.com” //设置组织名称exportKEY_EMAIL=”2306867585@qq.com” //设置邮件地址exportKEY_EMAIL=2306867585@qq.comexportKEY_CN=Test //设置名称exportKEY_NAME=TestportKEY_OU=Test //设置组织名称portPKCS11_MODULE_PATH=TestexportPKCS11_PIN=1234

5)服务器端证书生成与配置

Cd /etc/easy-rsaSource ./vars./clean-allBuild “ca” //生成Root Ca证书, 用于签发Server和Client证书,可以看到已经生成了ca.crt ca.key文件./build-caBuild “server” //生成服务器使用的VPN server Ca证书,server是您为CA证书起的一个名字, 以server名字为例,生成的服务器使用的CA证书文件为: server.crt server.key./build-key-server serverBuild “client”这里我们在前面有做相应的配置,默认即可。在后面有一个需要确认的地方,输入y继续执行即可。./build-key clientBuild “dh2048.pem” //生成Diffie-Hellman文件,可以看到生成了2048位的Diffie-Hellman文件由于我们采用的2048位,所以配置的时间相对来说会比较长,您可以先去喝口茶。./build-dh dh2048.pem

6)建立对应目录,并将对应的证书复制到相关目录

Cd /etc/openvpn //进入OpenVPN目录Mkdir {client,server} //建立Client与Server目录

#Server相关配置

Cp easy-rsa/keys/ca.crt server/Cp easy-rsa/keys/server.crt server/Cp easy-rsa/keys/server.key server/Cp easy-rsa/keys/dh2048.pem server/Cp auth/ldap.conf server/ldap.confTouch server/staticip.txt

#Client相关设置

Cp easy-rsa/keys/ca.crt client/Cp easy-rsa/keys/client.crt client/Cp easy-rsa/keys/client.key client/

7)配置OpenVPN配置文件Server.conf

;local a.b.c.d //监听IP地址,默认监听所有IPmode server //模式设置tls-server //使用TLS加密传输,本端为Serverport 1194 //通讯端口设置;proto tcp //OpenVPN服务器默认采用UDP 1194端口,但是很多运营商封了这个端口,注意修改proto udp //测试采用UDP端口,如果您的网络不是很稳定建议采用UDP端口topology subnetdev tun //设置创建tun的路由IP通道,还是创建tap的以太网通道路由IP容易控制,所以推荐使用它;但如果如IPX等必须使用第二层才能通过的通讯,则可以用tap方式,tap也就是以太网桥接。;dev-node MyTap //Windows需要给网卡一个名称,linux不需要设置ca /etc/openvpn/server/ca.crt //证书位置设置最好设置成绝对路径,有时候采用相对路径会报错。#这里是重点必须指定SSL/TLS root certificate (ca),certificate(cert), and private key (key),ca文件是服务端和客户端都必须使用的,但不需要ca.key服务端和客户端指定各自的.crt和.key,请注意路径,可以使用以配置文件开始为根的相对路径,也可以使用绝对路径,请小心存放.key密钥文件。cert /etc/openvpn/server/server.crtkey /etc/openvpn/server/server.keydh /etc/openvpn/server/dh2048.pem //指定Diffie hellman parameters.script-security 2username-as-common-name### LDAP AUTH ###//我们采有openvpn-auth-ldap认证,所以设置如下所示:plugin /usr/lib/openvpn/plugin/lib/openvpn-auth-ldap.so “/etc/openvpn/server/ldap.conf”##################tmp-dir “/tmp”#up “/etc/openvpn/skyvpnserver/tuzfal_all”server 192.168.75.0 255.255.255.0 //配置VPN使用的网段,OpenVPN会自动提供基于该网段的DHCP服务,注意不能和任何一方的局域网段重复,保证唯一性。ifconfig-pool-persist staticip.txt //绑定IP的设置;ifconfig-pool 202.96.17.2 202.96.17.254 //DHCP分配的地址池#为客户端创建对应的路由,以另其到达公司内网服务器。但记住,公司内网服务器也需要有可用路由返回到客户端。push “route 192.168.1.0 255.255.255.0” //VPN用户连接过来后推送的路由信息push “route 192.168.75.0 255.255.255.0″#若客户端希望所有的流量都通过VPN传输,则可以使用该语句,其会自动改变客户端的网关为VPN服务器,,推荐关闭。一旦设置,请小心服务端的DHCP设置问题。;push”redirect-gateway def1 bypass-dhcp”;push”dhcp-option DNS 208.67.222.222″ //VPN用户连接过来后的DNS设置;push”dhcp-option WINS 208.67.220.220″ //VPN用户连接过来后的WINS设置;duplicate-cnkeepalive 10 120 //设置服务端检测的间隔和超时时间comp-lzo //启用LZO 压缩技术,客户端服务器端都必须设置;max-clients 200 //VPN服务器最多允许连接的有用户数;user nobody //出于安全考虑,初始化后UID 和GID 权限将降为 “nobody”;group nobodypersist-key //通过keepalive检测超时后,重新启动VPN,不重新读取keys,保留第一次使用的keyspersist-tun //通过keepalive检测超时后,重新启动VPN,一直保持tun或者tap设备是linkup的,否则网络连接会先linkdown然后linkupClient-to-client //允许客户端之间进行互访Duplicate-cn //允许一个用户多次访问status openvpn-status.log //输出短日志,每分钟刷新一次以显示当前的客户端,重启系统后记录丢失# 缺省日志会记录在系统日志中,但也可以设置到其它位置;log/var/log/openvpn/openvpn.log;log-append /var/log/openvpn/openvpn.log# 日志记录的记录等级# 0 — 除非发生致命错误,否则保持安静。# 1 — 非常安静,但会显示一些非致命网络错误。# 3 — 中等输出,通常情况下的很好选择。# 9 — 非常详细,用于诊断错误。verb 3 //设置日志记录的级别为3级,默认有4个级别。mute 10reneg-sec 1800 //设置最大超时时间为1800秒

8)配置LDAP配置文件ldap.conf

或许是某座闻名遐迩的文化古城。我们可以沿途用镜头记录彼此的笑脸,

CentOS6.5 基于AD域账号联动认证的OpenVPN服务器配置

相关文章:

你感兴趣的文章:

标签云: