我的设置如下:
eth0 Link encap:Ethernet
inet addr:XXX.XXX.XXX.XXX
eth1 Link encap:Ethernet
inet addr:10.10.20.20
lo Link encap:Local Loopback
tun0 inet addr:10.8.0.1
我想将我的网络邮件设置为仅通过 VPN 连接时才可访问。目前,VirtualHost 指令是 *:443。我假设要将 * 替换为 eth1 地址。
但是我是否也必须设置 iptables 路由?如果是,该怎么做?
答案1
在 OpenVPN 服务器上,添加以下行:
push "route web.mail.ip.address"
在虚拟主机部分,您可以根据 IP 地址限制访问,如下所示:
<Directory "/your/virtual/host/directory">
Order allow,deny
Allow from vpn.server.ip.address
ErrorDocument 403 http://google.com
</Directory>
答案2
Destination Gateway Genmask Flags Metric Ref Use Iface
10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
10.180.160.0 0.0.0.0 255.255.224.0 U 0 0 0 eth1
网络邮件的 IP 地址与我的服务器相同,假设为 XXXX
VPN 服务器位于同一台机器上,并具有一个配置文件,其中包含以下内容:
server 10.8.0.0 255.255.255.0
当我添加:推送“路线XXXX”
我无法访问网络邮件地址。
奇怪的是,即使我已连接到 VPN,我的 IP 地址http://www.whatismyip.com显示了我服务器的 IP 地址,网络邮件日志显示我正尝试从我的 ISP 的 IP 地址进行连接。