记住用户名密码
在生产环境中,有一些服务是不能对外提供访问权限的,例如Hadoop、Hbase等集群页面,当然可以使用Nginx转发并且配置仅公司网络可以访问,这个也是可以,但是页面一多或者需要跳转就很麻烦,并且还有在家办公就访问不了了,所以在对于这种需求,建议采用VPN方式访问。
部署OpenVpn服务的方式有很多,可以采用编译安装、二进制安装,也可以使用Docker安装,本次将基于Docker部署OpenVpn,具体操作步骤如下:
#创建OpenVpn数据持久化目录 mkdir /data/openvpn -p #生成OpenVpn配置文件,走udp协议,其中IP为公网IP,生成的配置文件可以修改端口等参数 docker run -v /data/openvpn:/etc/openvpn --rm kylemanna/openvpn:latest ovpn_genconfig -u udp://115.159.91.148 #生成密钥文件 docker run -v /data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn:latest ovpn_initpki 输入私钥密码(输入时是看不见的): Enter PEM pass phrase:123456 再输入一遍 Verifying - Enter PEM pass phrase:123456 输入一个CA名称(我这里直接回车) Common Name (eg: your user, host, or server name) [Easy-RSA CA]: 输入刚才设置的私钥密码(输入完成后会再让输入一次) Enter pass phrase for /etc/openvpn/pki/private/ca.key:123456 #生成客户端证书,例如:likun docker run -v /data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn:latest easyrsa build-client-full likun nopass #导出客户端配置 mkdir -p /data/openvpn/conf docker run -v /data/openvpn:/etc/openvpn --rm kylemanna/openvpn:latest ovpn_getclient likun > /data/openvpn/conf/likun.ovpn #启动OpenVpn服务程序 docker run --name openvpn -v /data/openvpn:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn:latest #查看OpenVpn服务程序是否启动正常 docker ps |grep openvpn
将生成的客户端配置导入OpenVpn即可。至此,Docker构建OpenVpn服务程序完成!
按照上述操作部署,并且使用OpenVpn客户端连接之后发现是全局代理,也就是出现如下图所示:
为了防止全局代理,可修改客户端配置,修改如下:
# 在remote ip port 这行后面加入 route 192.168.255.0 255.255.255.0 # 文件末尾注释掉,防止所有网络都走VPN服务器, 如果想全部流量通过VPN则添加这一行。 # redirect-gateway def1 # 添加下面一行,不从服务器拉取路由表 route-nopull
客户端配置修改完成,重新导入OpenVpn客户端之后,即可实现局部代理。
目前有 0 条留言 其中:访客:0 条, 博主:0 条