搭建内网环境
-
本次实验环境
-
ubuntu 22.04 64位UEFI版
-
-
实验步骤
-
拿到新机,首先执行
apt-get update
-
使用
apt-get install easy-rsa openvpn
安装本次所需要的包 -
创建安装目录,这里以
/opt/easy-rsa
为例-
mkdir -p /opt/easy-rsa cd /opt/easy-rsa cp -r /usr/share/easy-rsa/* .
-
-
初始化pki环境
-
./easy-rsa init-pki
-
-
构建 CA (证书授权)
-
./easy-rsa build-ca
-
根据提示输入 CA 的详细信息,如国家、组织等。直接敲回车也行。它会生成
pki/ca.crt
和pki/private/ca.key
文件。
-
-
生成服务器证书和密钥
-
./easyrsa build-server-full server nopass
-
在这个步骤会生成
pki/issued/server.crt
和pki/private/server.key
文件
-
-
生成客户端证书和密钥
-
./easyrsa build-client-full client1 nopass
-
-
生成 Diffie-Hellman 参数
-
./easyrsa gen-dh
-
-
生成 HMAC 签名密钥
-
openvpn --genkey --secret pki/ta.key
-
这条命令要看情况,如果显示命令弃用,用后面这个
openvpn --genkey secret pki/ta.key
-
-
创建用于openvpn的
server.conf
-
详细步骤
-
cd /etc/openvpn vim server.conf # ================ 将一下内容输入 ================= port 1194 proto udp dev tun ca /opt/easy-rsa/pki/ca.crt cert /opt/easy-rsa/pki/issued/server.crt key /opt/easy-rsa/pki/private/server.key dh /opt/easy-rsa/dh.pem tls-auth /opt/easy-rsa/ta.key 0 server 10.8.0.0 255.255.255.0 ifconfig-pool-persist /var/log/openvpn/ipp.txt keepalive 10 120 cipher AES-256-CBC auth SHA256 comp-lzo persist-key persist-tun status /var/log/openvpn/openvpn-status.log verb 3
-
-
启动openvpn服务端
-
sudo systemctl start openvpn@server sudo systemctl enable openvpn@server # 可选,开机自启
-
-
防火墙配置
-
一般购买云服务,机器防火墙默认为关闭状态,可通过一下命令查看
-
ufw status #. Status: inactive 这个结果直接跳过这一段
-
配置防火墙
-
sudo ufw allow 1194/udp sudo ufw allow OpenSSH sudo ufw enable
-
-
-
-
安全组放行
-
在云厂商放行
1194
端口,规则选择UDP
-
-
客户端配置创建配置文件
-
-
如下拷贝,本次以MacOS系统为例,保存为
client.ovpn
需要以ovpn结尾 -
client dev tun proto udp remote YOUR_SERVER_IP 1194 # YOUR_SERVER_IP 需要改成服务器IP resolv-retry infinite nobind persist-key persist-tun remote-cert-tls server cipher AES-256-CBC auth SHA256 comp-lzo verb 3 # 一下四个对应上面复制的四个文件,需要下载下来,与client.ovpn同级即可 ca ca.crt cert client1.crt key client1.key tls-auth ta.key 1
-
软件打开,选择client.ovpn 链接
-
-
-
端口转发
-
如果需要端口转发,执行一下操作
-
sudo nano /etc/sysctl.conf # ==== 有就更改,没有就添加 ==== net.ipv4.ip_forward=1 # =========================== sudo sysctl -p sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # NAT配置 sudo apt install iptables-persistent # 选Yes | sudo netfilter-persistent save # 在服务端 server.conf 中追加 push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" # ========================== sudo systemctl restart openvpn@server # 客户端追加 redirect-gateway def1
-
-
-