OpenVPN客户端定制IP和路由

公司用的 OpenVPN ,研发部门和普通员工的权限不一样,技术部门需要访问服务器,普通员工则不需要

这样的话就需要根据用户定制路由了,技术部门推送特定的路由,普通员工不推送。

那么做法如下,在 server.conf 做如下设定:

1ifconfig-pool-persist /etc/openvpn/conf/ipp.txt
2client-config-dir /etc/openvpn/conf/static

第一行是指定记录 ip 地址的文件,作用是如果服务器进程重启了,重启后会读取这个文件,客户端重新拨号后获得的 IP 就不会变,还是重启前的 IP。

第二行是指定了客户端的单独配置

我们假设一个用户是 zhangranrui,那么就去 /etc/openvpn/conf/static 下建立一个 zhangranrui 的文本文件,内容如下:

 1# 前面是客户端固定IP地址,后面是网关地址
 2ifconfig-push 172.18.0.10 172.18.0.9
 3
 4# 推送路由,后面是掩码
 5push "route 10.10.0.0 255.255.0.0"
 6
 7# 重定向客户端的所有流量,否则访问服务端内网要像上面一样推送路由
 8# push "redirect-gateway def1"
 9
10# 推送给客户端的DNS解析地址
11# push "dhcp-option DNS 223.5.5.5"
12# push "dhcp-option DNS 114.114.114.114"

上面我们固定了IP,也推送了特定路由,那么怎么知道一个客户的 ip 呢,去看 ipp 文件:

1cat /etc/openvpn/conf/ipp.txt
2zhangranrui,172.18.0.8

注意,上面文件里的 172.18.0.8 不是 ip ,是 网段 地址

172.18.0.9 是网关地址,172.18.0.10才是真正的 IP 地址,所以不要搞错了

也可以针对用户推送一些其他选项。


英语的符号表达
MySQL数据库的备份和恢复之一
comments powered by Disqus