我想使用使用拆分隧道和子网外寻址的 SSTP VPN 配置 Windows Server 2012 及其 Windows 7 和 Windows 8 VPN 客户端,但我遇到了一个问题:RRAS 服务器不会向 VPN 发送数据包来自除自身之外的任何机器的客户端。
我的 VPN 服务器在 Amazon 的“虚拟私有云”上运行,因此它只有一个 NIC,其 IP 地址位于与我所有其他 Amazon VPC 服务器共享的私有 RFC1918 网络上,以及一个将所有流量转发到该私有地址的公共 IP通过 NAT(亚马逊称之为“弹性 IP”)。
我已经安装了 RRAS 并设置了 VPN。Amazon 上的私有子网是 172.16.0.0/17(这就是我所说的“Amazon LAN”),但我希望所有 VPN 客户端都使用范围 10.128.0.0/20(我称之为“ VPN 局域网”)。
在我的亚马逊控制面板中,我完成了以下操作:
在路由和远程访问 MMC 中,在服务器名称的属性菜单中,我完成了以下操作:
在我的客户端和我所有的服务器上,我已经确保在防火墙中明确允许 …
我的计算机中有两个以太网接口,运行 Ubuntu 9.04。两个接口都使用静态 IP,但使用单独的网关。我的/etc/network/interfaces文件看起来像这样:
自动 eth0 eth1 iface eth0 inet 静态 地址 10.0.0.5 网络掩码 255.255.255.0 网关 10.0.0.1 iface eth1 inet 静态 地址 192.168.2.5 网络掩码 255.255.255.0 网关 192.168.2.1
我想让所有进入互联网的流量都通过eth0,但它似乎想要通过eth1。有没有一种方法可以让我的一般出站流量通过eth0而不是仅用eth1于其子网的流量?
答案应该是持久的;也就是说,它应该在重新启动后存活下来,而无需超级用户在重新启动后运行命令。
编辑:根据要求,这是我的route -n命令的输出:
内核IP路由表 目标网关 Genmask Flags Metric Ref Use Iface 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth1 0.0.0.0 192.168.2.1 0.0.0.0 UG …
我最近在我的 Ubuntu VPS 上安装了 OpenVPN。每当我尝试连接到它时,我都可以很好地建立连接。
但是,我尝试连接的所有内容都超时。
如果我尝试 ping 某些东西,它会解析 IP,但会在解析 IP 后超时。(所以 DNS 服务器似乎工作正常)
我的 server.conf 有这个相关信息(至少我认为它是相关的。我不确定你是否需要更多)
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
;push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
;client-to-client
;duplicate-cn
keepalive 10 120
;tls-auth ta.key 0 # This file is secret
comp-lzo
persist-key
persist-tun
status openvpn-status.log
# Set the …Run Code Online (Sandbox Code Playgroud) 有人通过描述如何使用源策略路由创建新的路由表来回答我之前的问题:
echo 13 eth3 >> /etc/iproute2/rt_tables
ip route add default via 10.20.0.1 table eth3
ip rule add from 10.20.0.2 lookup eth3
Run Code Online (Sandbox Code Playgroud)
如何使这些“ip”命令在重新启动后持续存在?我假设有一些适当的行要添加到/etc/network/interfaces. 这是马上(向界面添加“向上”行),还是有其他方法可以做到?
iface eth3 inet static
address 10.20.0.2
netmask 255.255.255.0
up ip route add default via 10.20.0.1 table eth3
up ip rule add from 10.20.0.2 lookup eth3
down ip rule del from 10.20.0.2 lookup eth3
down ip route del default via 10.20.0.1 table eth3
Run Code Online (Sandbox Code Playgroud)
(我在 Ubuntu 12.04 上)。
在将网络设备从我的数据中心网络移动到我的家庭 LAN 之前,我忘记更改网络设备的静态 IP。由于它没有为我的 LAN 网络正确配置,我不确定如何访问它。
限制条件:它是 NAS(LaCie Network Space MAX)并且只能通过 Web 控制台访问。我知道它试图使用什么 IP 地址、网关、掩码等。我不想将其重置为出厂设置,这可能会产生令人讨厌的后果。我也不想重新安排我的 LAN 网络以假装成为数据中心网络只是为了访问此设备。
基本上,一旦我达到可以 ping 其静态 IP 的程度,我就应该能够完全访问它。
我的理论是我可以使用路由来访问设备,但我不确定如何配置路由。我有一个 LAN 路由器,它具有“动态路由”(RIP1) 功能,并通过设置目标 LAN IP、子网掩码、默认网关、跳数和接口(LAN 或 WAN)来允许静态路由。我可以使用静态路由到达我的设备吗?如果是这样,我使用什么设置?
我们的网络有一个位于办公网络内部的专用 VPN 设备。我们有一个带有静态路由的 Cisco ASA,可将 VPN 子网路由到 VPN 设备。因此,从客户端到远程站点 ( 192.168.161.28 -> 192.168.101.28)的典型请求是:
客户端 ASA 本地 VPN 远程 VPN 远程服务器 192.168.161.28 -> 192.168.161.17 -> 192.168.161.10 -> 192.168.101.1 -> 192.168.101.28
使用此路由,192.168.101.1 远程 VPN 端点上的防火墙拒绝 3 次 TCP 握手:
Status: A TCP packet was rejected because it has an invalid sequence number or an invalid acknowledgement number
但是,如果我绕过 ASA(直接在客户端计算机上使用静态路由):
客户端 本地 VPN 远程 VPN 远程服务器 192.168.161.28 -> 192.168.161.10 -> 192.168.101.1 -> 192.168.101.28
TCP 流正确握手,一切顺利。
会是什么呢?ASA 上是否有一些检查规则可能会破坏这一点?我怀疑这是因为流量的返回路由与发送路由不同(即数据包将直接从 VPN 端点发送到客户端,而不是通过 ASA,因为它们位于同一 LAN 上)。
任何在 Linux 和网络方面都有丰富背景的人可以帮助我吗?我已经在互联网上搜索了一个明确的答案,我什至比较了一个我可以访问的具有相同设置的盒子,但我无法让我的盒子工作。
基本情况是这样的:
============================
RHEL 6 Linux 机器有两个以太网接口:
eth0 = 10.10.5.10/24
eth1 = 10.10.6.10/24
[root@box ~]# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
10.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.10.6.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 10.10.5.254 0.0.0.0 UG 0 0 0 eth0
Run Code Online (Sandbox Code Playgroud)
ip 转发已启用并处于活动状态。
问题:
与 eth1 或 10.10.6.x 网络位于同一子网上的客户端可以 ping 和 telnet 到此机器上 eth1 上运行的资源。
但是,任何其他子网上的客户端都不能。所以从我的工作站,我可以整天 ping 和 telnet 到盒子的 eth0 上的资源,但在 eth1 上什么也没有......
将此设置与我环境中的另一个类似性质的盒子进行比较,没有发现明显的差异。
以下是一些文件: …
我没有路由器,所以我将 Linux 系统变成了一个具有 CentOS 6.4 的路由器,用于将公共网络流量转发到我的本地 LAN。它有两个 NIC 卡。一个用于公共 IP 地址 (eth1),另一个用于私有 IP 地址 (eth2)。
我有一台连接到本地 LAN 的服务器,假设为 192.168.1.2。
xxxx 是公网 IP 地址(这个 IP 地址在 eth1 上)。
Linux系统路由器IP地址假设为192.168.1.1(该IP地址在eth2上)。
我希望当来自任何地方的任何网络的人使用它时,即,
ssh x.x..x.x(公共 IP 地址)或使用PuTTY
它将转到服务器。
我禁用了服务器上的 SELinux 和 iptables 防火墙。
我在 Linux 系统路由器上做了一些 Iptables 修改,但它本身作为路由器工作,而不是来自其他网络和同一网络的主服务器。
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.1 --dport 22 -j DNAT --to-destination 192.168.1.2:22
Run Code Online (Sandbox Code Playgroud)
但它不起作用。
我想再次使用来自同一 Linux 系统路由器的 iptables 将所有 HTTP (80) 流量转发到我的内部服务器。
解决这个问题的方法是什么?
我偶然发现了AWS 中路由传播的想法。文档中说:
路由传播允许虚拟专用网关自动将路由传播到路由表,这样您就无需手动将 VPN 路由输入到路由表中。您可以启用或禁用路由传播。
可能这是一个不言自明的功能,但我完全不明白它的含义。特别是我对以下内容感到困惑:这是否意味着我不需要显式添加具有某些目的地和目标作为 VPWG 的路线?虚拟专用网关是否会自动将其 VPN 连接中的所有 CIDR 块添加到路由表中?
我正在寻找一些傻瓜的例子来说明这个功能给我带来了什么。
我有一台运行Ubuntu 20.04和wireguard 1.0.20200513-1~20.04.2的服务器。我在手机(Android Samsung S20+)上安装了wireguard应用程序并禁用了WIFI并连接到4G。当 VPN 处于活动状态时,我可以访问服务器,而无法访问家庭网络 (192.168.1.X) 或互联网上的其他内容。服务器具有 10.0.0.1 (VPN) 和 192.168.1.171 (LAN) 接口。电话获得 10.0.0.2 接口。我想我需要设置一条路线。服务器防火墙(ufw 状态)处于非活动状态。任何帮助将非常感激。
/etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.1/24
Address = <MAC>::1/64
SaveConfig = true
ListenPort = 51820
PrivateKey = <SERVER_KEY>
[Peer]
PublicKey = <CELL_PUB_KEY>
AllowedIPs = 10.0.0.2/32,
Endpoint = <EXTERNAL_IP>:8598
Run Code Online (Sandbox Code Playgroud)
客户端配置
Cellphone config
[Interface]
PrivateKey =<CELL_KEY>
Address = 10.0.0.2/24
DNS = 1.1.1.1, 1.0.0.1
[Peer]
PublicKey = <SERVER_PUB_KEY>
AllowedIPs = 10.0.0.0/24, 192.168.1.0/24
Endpoint = <EXTERNAL_IP>:51820
Run Code Online (Sandbox Code Playgroud)
/etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
Run Code Online (Sandbox Code Playgroud)
路线-n
Destination Gateway Genmask Flags Metric Ref Use …Run Code Online (Sandbox Code Playgroud)