模拟生产环境使用的vpn,方便自己连接内部主机,避免暴露内部主机端口。
安装 步骤:
- 安装扩展源,epel扩展源包含了openvpn
yum install epel-realease -y 安装之后需要更改一下epel源 ,baseurl加个注释,下面mirrorlist的去掉注释,在yum clean all && yum makecahe 就可以了 CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo epel.repo epel-testing.repo [[email protected] yum.repos.d]# pwd /etc/yum.repos.d [[email protected] yum.repos.d]# cat epel.repo [epel] name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 [epel-debuginfo] name=Extra Packages for Enterprise Linux 7 - $basearch - Debug #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 gpgcheck=1 [epel-source] name=Extra Packages for Enterprise Linux 7 - $basearch - Source #baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 gpgcheck=1
2.安装openvpn 和 easy-rsa 加密认证。
yum install openvpn easy-rsa -y
3.拷贝需要的openvpn的配置文件及修改。
rpm -ql openvpn /usr/share/doc/openvpn-2.3.13/sample/sample-config-files/server.conf 拷贝到 /etc/openvpn/目录下
4.修改vpn的配置文件,默认的修改就好,有需要在添加。
[[email protected] openvpn]# egrep -v "^#|^$|^;" server.conf port 1194 #默认端口 proto tcp #走的协议 dev tun ca /etc/openvpn/easy-rsa/keys/ca.crt cert /etc/openvpn/easy-rsa/keys/server.crt key /etc/openvpn/easy-rsa/keys/server.key # This file should be kept secret dh /etc/openvpn/easy-rsa/keys/dh2048.pem server 192.168.168.0 255.255.255.0 #vpn提供给你的vpn地址,想改什么改什么,私有地址,不和你内网冲突即可 ifconfig-pool-persist ipp.txt #提供给你获取地址指定ip push "route 192.168.80.0 255.255.255.0" #添加的路由 client-to-client keepalive 10 120 cipher AES-256-CBC persist-key persist-tun status openvpn-status.log verb 3
5.我们开始添加CA证书了,就是上面server.conf配置文件指定的证书。这个玩意你自己保存好哦。
rpm -ql easy-rsa 需要的东西都在 /usr/share/easy-rsa/2.0/这个下面 首先我们要编辑一下vars文件,生成证书设置个模板。 export EASY_RSA="`pwd`" export OPENSSL="openssl" export PKCS11TOOL="pkcs11-tool" export GREP="grep" export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA` export KEY_DIR="$EASY_RSA/keys" echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR export PKCS11_MODULE_PATH="dummy" export PKCS11_PIN="dummy" export KEY_SIZE=2048 export CA_EXPIRE=3650 export KEY_EXPIRE=3650 下面改为你的即可 export KEY_COUNTRY="US" export KEY_PROVINCE="CA" export KEY_CITY="SanFrancisco" export KEY_ORG="Fort-Funston" export KEY_EMAIL="[email protected]" export KEY_OU="MyOrganizationalUnit" export KEY_NAME="EasyRSA" 开始生成 ca证书 source vars ./clean-all ./build-ca #生成ca证书 ./build-key-server server #生成服务端证书 ./build-key client #生成客户端证书,以后需要多少弄多少 ./build-dh #生成交换密码 拷贝相应到/etc/openvpn/目录下。 或者像我上面直接指定全路径 即可。
6.客户端安装
去openvpn官网下载客户端软件 客户端登录的话需要拷贝 ca.crt client.crt client.key 客户端配置文件即可。放到openvpn的安装目录conf个文件建立一个文件夹,方便以后多个vpn连接。 /usr/share/doc/openvpn-2.3.13/sample/sample-config-files/client.conf 修改文件后缀为ovpn就好 配置文件需要改的内容 remote 你vpn的ip,后面端口也可以改你们自己设定的server.conf一直。 1194 ca ca.crt cert client.crt key client.key
7.修改主机参数
这里修改的参数包括防火墙 和 ip转发 cat /etc/sysctl.conf net.ipv4.ip_forward = 1 #添加一行永久生效 关闭centos自带的防火墙 systemctl stop firewalld 取消开机启动 systemctl disable firewalld 安装iptables,这个用的习惯 yum install iptables-server -y 设置转发,不然你就不能连内部其他主机咯。好多人这个不设置,然后就只能访问这一台机器。 下面方法你也可以使用其他的。然后端口哪些需要开放的,你自己考虑你自己需求了。 /sbin/iptables -t nat -I POSTROUTING -s 192.168.168.0/255.255.255.0 -j MASQUERADE
时间: 2024-10-06 06:52:21