一、项目准备
1.1、VMware ESXi
1.2、Ubuntu镜像
1.3、OpenVPN客户端
1.4、SSH工具
二、部署Ubuntu
2.1、安装Ubuntu
2.2、配置Ubuntu
2.2.1、进入root权限
sudo -i
2.2.2、禁用 CD-ROM 软件源
sudo nano /etc/apt/sources.list
2.2.3、更新系统软件列表
sudo apt update
2.2.4、升级系统软件列表
sudo apt upgrade -y
2.2.5、安装网络工具
sudo apt install net-tools
2.2.6、安装SSH工具
sudo apt install openssh-server
2.2.7、设置root密码
sudo passwd root
2.2.8、开启root登录
sudo nano /etc/ssh/sshd_config
PermitRootLogin yes
2.2.9、重启ssh服务
sudo systemctl restart ssh
2.2.10、用root登录删除user账户
userdel -r user
三、安装OpenVPN
3.1、安装openvpn和openssl
sudo apt-get -y install openvpn libssl-dev openssl
3.2、安装easy-rsa
sudo apt-get -y install easy-rsa
3.3、创建easy-rsa目录
sudo mkdir /etc/openvpn/easy-rsa/ && cd /etc/openvpn/easy-rsa/
3.4、把刚刚安装好的easy-rsa目录下的所有文件拷贝到创建的easy-ras目前下
sudo cp -r /usr/share/easy-rsa/* ./
3.5、复制vars.example文件
cp vars.example vars
3.6、修改vars文件
nano vars
export KEY_NAME="yydyvpn"
3.7、初始化PKI
./easyrsa init-pki && ll
3.8、创建无密码证书
./easyrsa build-ca nopass && ll pki/
3.9、创建Server证书
ls pki/issued/ && ls pki/private/
./easyrsa build-server-full yydyvpn nopass
ls pki/issued/ && ls pki/private/
3.10、创建Client证书
ls pki/issued/ && ls pki/private/
./easyrsa build-client-full yydy nopass
ls pki/issued/ && ls pki/private/
3.11、创建DH
./easyrsa gen-dh
3.12、退回openvpn目录
cd ..
3.13、拷贝默认配置文件conf以及证书密码以及DH文件到oepnvpn目录
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf ./
cp easy-rsa/pki/ca.crt ./
cp easy-rsa/pki/issued/yydyvpn.crt ./
cp easy-rsa/pki/private/yydyvpn.key ./
cp easy-rsa/pki/dh.pem ./
cp easy-rsa/pki/dh.pem ./dh2048.pem
3.14、配置Server端
nano server.conf
port 1194
proto udp
dev tun
ca ca.crt
cert yydyvpn.crt #替换自己的
key yydyvpn.key #替换自己的
dh dh2048.pem
server 100.255.255.0 255.255.255.0
ifconfig-pool-persist /etc/openvpn/server/ipp.txt
keepalive 30 1000
cipher AES-256-CBC
persist-key
persist-tun
status /etc/openvpn/server/openvpn-status.log
log-append /etc/openvpn/server/openvpn.log
verb 3
topology subnet
data-ciphers AES-256-CBC:AES-256-GCM:AES-128-GCM
push "redirect-gateway def1 bypass-dhcp" #客户端路由全局走VPN,但不从VPN服务器端获取IP地址
push "redirect-gateway def1 bypass-dns" #客户端路由全局走VPN,但不从VPN服务器端获取DNS解析
3.15、启动服务端
nohup /usr/sbin/openvpn --config /etc/openvpn/server.conf &
ip addr
netstat -au
lsof -i:1194
3.16、配置客户端
cd /etc/openvpn/client/
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ./
cp /etc/openvpn/easy-rsa/pki/issued/yydy.crt ./
cp /etc/openvpn/easy-rsa/pki/private/yydy.key ./
cp /etc/openvpn/easy-rsa/pki/ca.crt ./ && ll
nano client.conf
client
dev tun
proto udp
remote 192.168.6.105 1194 #如果需要外网访问进来,这个IP端口需要填写映射后的
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
data-ciphers AES-256-CBC:AES-256-GCM:AES-128-GCM
verb 3
max-routes 5550
<ca>
</ca>
<cert>
</cert>
<key>
</key>
3.17、完善client.conf
cp client.conf yydy.ovpn
四、下载配置
五、测试连接
六、配置上网
6.1、开启路由转发
sed -i '/net.ipv4.ip_forward/s/0/1/' /etc/sysctl.conf
sed -i '/net.ipv4.ip_forward/s/#//' /etc/sysctl.conf
sysctl -p
6.2、配置iptables
iptables -I INPUT -p tcp --dport 1194 -m comment --comment "openvpn" -j ACCEPT
iptables -t nat -A POSTROUTING -s 100.255.255.0/24 -j MASQUERADE
6.3、安装iptables-persistent
sudo apt-get install -y iptables-persistent
sudo service netfilter-persistent save
6.4、关闭防火墙
ufw disable
6.5、启动OpenVPN
/etc/init.d/openvpn start
systemctl enable openvpn@server