我使用 CentOS 7 。我想在我的机器上创建 VPN 服务器。我正在遵循完美的 VPN 教程,直到我到达这部分,编辑/etc/openvpn/server.conf
:
local x.x.x.x
port 1194
proto udp
dev tun
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so /etc/pam.d/login
client-cert-not-required
username-as-common-name
server ? ?
push "redirect-gateway def1"
push "dhcp-option DNS ?"
push "dhcp-option DNS ?"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status server-tcp.log
verb 3
有几个部分我不明白。请帮我解释一下它是如何工作的。网上有很多教程,但他们只是输入自己的网络,所以我什么都不明白。
这是我的本地网络信息:http://imgur.com/a/cgJkW。
我应该为 s 输入什么?
?
- 我在哪里可以找到要输入的 DNS
push "dhcp-option
? - 在哪里可以找到要输入的 IP
server
?
我做对了吗?我需要解决什么问题?
答案1
仅在客户端配置中需要“服务器”行;它告诉客户端要与哪个服务器通信。
DNS 条目是您希望客户端使用的 DNS 服务器的 IP 地址。如果您不需要使用特定的 DNS 条目(例如,您的网络上没有“内部 DNS”),那么您根本不需要推送任何 DNS 值。
答案2
例如写:
server 10.8.0.0 255.255.255.0
您可以在此处定义 OpenVPN 网络的子网。你在某个地方找不到它,你选择它。上面将服务一个/24
子网,VPN服务器的IP将是10.8.0.1
,第一个客户端10.8.0.2
。查看联机帮助页了解更多信息。该指令将展开,如联机帮助页所示:
--server network netmask ['nopool']
旨在简化 OpenVPN 服务器模式配置的帮助指令。该指令将设置一个 OpenVPN 服务器,该服务器将向给定网络/网络掩码之外的客户端分配地址。服务器本身将采用给定网络的“.1”地址作为本地 TUN/TAP 接口的服务器端端点。例如--server 10.8.0.0 255.255.255.0
展开如下:mode server tls-server push "topology [topology]" if dev tun AND (topology == net30 OR topology == p2p): ifconfig 10.8.0.1 10.8.0.2 if !nopool: ifconfig-pool 10.8.0.4 10.8.0.251 route 10.8.0.0 255.255.255.0 if client-to-client: push "route 10.8.0.0 255.255.255.0" else if topology == net30: push "route 10.8.0.1" if dev tap OR (dev tun AND topology == subnet): ifconfig 10.8.0.1 255.255.255.0 if !nopool: ifconfig-pool 10.8.0.2 10.8.0.254 255.255.255.0 push "route-gateway 10.8.0.1" if route-gateway unset: route-gateway 10.8.0.2
要将 dns 服务器配置推送到您的客户端,请写入以下内容:
push "dhcp-option DNS 10.8.0.1"
或者,例如,如果您决定希望您的客户使用 google 的 DNS 服务器:
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
没有任何特殊配置的基本示例server.conf
文件将如下所示(我删除了所有可选指令,在非常基本的设置中不应需要这些指令):
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
server 10.8.0.0 255.255.255.0
keepalive 10 60
comp-lzo
persist-key
persist-tun
status server-status.log
verb 3