1.系统环境: CentOS 6.5 64位 2.进行安装前先按照:https://help.aliyun.com/knowledge_detail/5974184.html 更新yum源为阿里云的内网yum源。 3.安装依赖的软件包; yum install -y lzo lzo-devel openssl openssl-devel pam pam-devel yum install -y pkcs11-helper pkcs11-helper-devel 确认已经安装完成 rpm -qa lzolzo-devel openssl openssl-devel pam pam-devel pkcs11-helper pkcs11-helper-devel
4.安装openvpn服务 (1)下载openvpn的源码包 wget http://oss.aliyuncs.com/aliyunecs/openvpn-2.2.2.tar.gz (2)使用rpmbuild将源码包编译成rpm包来进行安装 rpmbuild -tb openvpn-2.2.2.tar.gz 执行这条命令以后就会正常开始编译了,编译完成以后会在/root/rpmbuild/RPMS/x86_64目录下生成openvpn-2.2.2-1.x86_64.rpm安装文件 (3) 执行rpm -ivh openvpn-2.2.2-1.x86_64.rpm 以rpm包的方式安装
5.配置OPENVPN服务(服务端) (1)初始化PKI cd /usr/share/doc/openvpn-2.2.2/easy-rsa/2.0 进入到/usr/share/doc/openvpn-2.2.2/easy-rsa/2.0目录下,找到vars证书环境文件,修改以下几行export定义的参数值 exportKEY_COUNTRY="CN" 所在的国家 export KEY_PROVINCE="BJ" 所在的省份 exportKEY_CITY="Hangzhou" 所在的城市 exportKEY_ORG="aliyun" 所属的组织 export KEY_EMAIL=my@test.com 邮件地址 上述参数的值可以自定义设置,对配置无影响。 (2)生成服务端的证书: ln -s openssl-1.0.0.cnf openssl.cnf 做个软链接到openssl-1.0.0.cnf配置文件 source ./vars ./clean-all 清除并删除keys目录下的所有key ./build-ca 生成CA证书,刚刚已经在vars文件中配置了默认参数值,多次回车完成就可以
./build-key-server aliyuntest 生成服务器证书,其中aliyuntest是自定义的名字,一直回车,到最后会有两次交互,输入y确认,完成后会在keys目录下保存了aliyuntest.key、aliyuntest.csr和aliyuntest.crt三个文件。
(3)创建用户秘钥与证书 ./build-key aliyunuser 创建用户名为aliyunuser的秘钥和证书,一直回车,到最后会有两次确认,只要按y确认即可。完成后,在keys目录下生成1024位RSA服务器密钥aliyunuser.key、aliyunuser.crt和aliyunuser.csr三个文件。 (4) 生成Diffie Hellman参数 ./build-dh 执行了./build-dh后,会在keys目录下生成dh参数文件dh1024.pem,dh1024.pem文件客户端验证的时候会用到。 (5)将/usr/share/doc/openvpn-2.2.2/easy-rsa/2.0/keys目录下的所有文件复制到/etc/openvpn下 cp -a /usr/share/doc/openvpn-2.2.2/easy-rsa/2.0/keys/* /etc/openvpn/ (6)复制openvpn服务端配置文件server.conf文件到/etc/openvpn/目录下 cp -a /usr/share/doc/openvpn-2.2.2/sample-config-files/server.conf /etc/openvpn/ (7)server.conf配置 配置完成后的内容如下: [root@test openvpn]#egrep -v "^$|^#|^;" server.conf local 1.1.1.1 此处请填写用户自己的云服务器的公网IP地址 port 1194 proto udp dev tun ca ca.crt cert aliyuntest.crt 此处crt以及下一行的key,请填写生成服务器端证书时用户自定义的名称 key aliyuntest.key dh dh1024.pem server 172.16.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 223.5.5.5" client-to-client keepalive 10 120 comp-lzo user nobody group nobody persist-key persist-tun status openvpn-status.log log openvpn.log verb 3
(8)设置iptables(设置前请确保iptables已经开启,以及/etc/sysconfig/iptables文件存在) 开启转发 vi /etc/sysctl.conf 修改以下内容: net.ipv4.ip_forward = 1 然后使内核参数生效: sysctl -p 添加iptables规则确保服务器可以转发数据包到阿里云内外网 iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE 保存iptables service iptables save 6.启动openvpn /etc/init.d/openvpn start 通过netstat -ano | grep 1194 查看1194端口在监听,确保openvpn在运行中
7.Windows PC客户端的配置 (1)下载openvpn客户端:http://oss.aliyuncs.com/aliyunecs/openvpn-2.1.3-install.rar windows系统下安装,按照默认设置安装完成。 (2)将云服务器中/etc/openvpn/目录下的aliyunuser.key、aliyunuser.crt和aliyunuser.csr三个文件下载到需要连接openvpn的Windows客户端上(可以使用ftp或者xftp工具下载),保存到openvpn软件的安装路径下的\OpenVPN\config目录下。 (3)配置client.opvn 将openvpn安装路径下的\OpenVPN\sample-config\目录中下的client.opvn复制到openvpn安装路径下的\OpenVPN\config目录下,然后修配置文件中的如下参数; proto udp 去掉前面的分号,采用与服务器端相同的udp协议 remote 1.1.1.1 1194 此处将1.1.1.1修改为用户的云服务器的公网IP地址,同时将该行前面的注释分号去掉 cert aliyunuser.crt key aliyunuser.key (4)到C:\Program Files (x86)\OpenVPN\bin的目录下,找到openvpn-gui-1.0.3.exe文件,右键选择以管理员权限运行(避免普通用户运行导致添加路由失败)
8.连接成功后,通过访问阿里云的内网镜像源http://mirrors.aliyuncs.com/确认可以通过openvpn访问阿里云内网
同时访问ip.cn,可以查看到此时Windows PC端的出口公网IP已经变为了云服务器的公网IP地址
(责任编辑:IT) |