如何通过SSH隧道共享WiFi /热点

我在连接到LAN的笔记本电脑上创建了一个SSH隧道。 我想通过WiFi /热点共享互联网,但通过SSH隧道。 我的意思是任何使用这种无线的计算机都应该通过SSH隧道连接到互联网(自动无需设置代理)。

换句话说,我只想在我的笔记本电脑上设置代理设置(例如,127.0.0.1:1028),任何使用笔记本电脑上的WiFi /热点的计算机应该能够在没有任何代理设置的情况下使用互联网。

使用纯SSH(即创建穷人VPN的-D代理选项)无法实现所需。

不过,这里有两个选项可行:

  1. 使用sshuttle (在存储库中可用)并告诉它通过“VPN”转发来自热点子网的所有流量。 有关详细信息,请参阅联机帮助页 。
  2. 在远程系统和本地系统上设置OpenVPN 。 默认情况下,已连接的热点用户的流量应通过VPN。 您可能还想查看此serverfault问题 。

如果将redsocksiptables添加到混合中,可以使用纯ssh -D 。 这比配置OpenVPN简单得多,尤其是如果您没有远程计算机的权限。

为了在Ubuntu上创建热点,我推荐http://ubuntuhandbook.org/index.php/2014/09/3-ways-create-wifi-hotspot-ubuntu/ ,它使用内置的默认network-manager

安装并配置了redsocks ,可以使用iptables将所有流量从wifi热点重定向到redsocks ,然后将其传递给socks代理。

例如,如果您的wifi热点位于10.42.0.1/24子网上,并且传入的redsocks端口是12345问题:

 sudo iptables -F sudo iptables -t nat -F sudo iptables -t nat -A PREROUTING -s 10.42.0.0/24 -p tcp -j REDIRECT --to-ports 12345 

有关详细说明,请访问http://abidmujtaba.blogspot.com/2016/07/ubuntu-create-wifi-hotspot-access-point.html