如何为我的 Mac 设置 linux 代理

oky*_*eni 3 server ssh firewall proxy

正如我的标题所暗示的,我想在 linux 中设置一个代理。我使用的客户端是 mac osx lion。我想我理解这个理论,但我一直遇到障碍。

我开始在这里使用设置代理服务器 ubuntu linux教程。我已经找到了一台备用电脑并在其上安装了 ubuntu 12。根据文章,我必须从如何使用 ssh文章隧道传输流量来创建 ssh 隧道。

在 ubuntu 中,我确保我有 ssh 服务器,所以我做了一个 apt-get install ssh。

然后,是时候将路由器上的端口转发到单个机器了。我假设单个机器是我的 ubuntu 机器,它将充当 ssh 服务器。我的路由器是 Cisco Linksys E3000。

当我尝试设置端口转发时,我看到了这篇文章。这是让我困惑的地方:

输入您的应用程序名称。有关应用程序可能使用哪些端口的列表,请参阅下面的来源和引用部分。

似乎我必须知道他们使用哪个应用程序和什么端口来访问互联网???例如,如果我在 OSX 中使用终端,我需要将“终端”指定为应用程序并知道它使用什么端口?我需要对 Chrome、firefox、App Store、暗黑破坏神 3 等重复一遍...?

这是通过代理引导您的互联网流量以便绕过防火墙的标准方式吗?

如何设置我的代理,以便我的所有互联网连接都通过我的 ubuntu 服务器并将其引导回我的客户端 (Mac OSX)。

如果有人感兴趣,我想这样做,因为当我使用 heroku 进行 Web 应用程序部署时,我在工作场所、旅行等时不断遇到防火墙......

谢谢!!!

ade*_*lff 6

使用 SSH 隧道:路由器上的端口和端口转发:

使用 ssh 隧道作为代理涉及在默认的 socks5 端口 ( 1080)上设置本地代理。然后,所有应用程序都会将其 Web 流量发送到该端口,然后通过加密的 ssh 隧道将其发送到您的服务器,然后再发送到 Internet。

您的路由器需要为其转发端口的唯一应用程序是 ssh 客户端/服务器——将所有传入的 TCP 请求通过 port 路由22到本地网络上您的服务器的 IP 地址。

这是一张说明这一点的图片:

袜子5sshtunnel

让我们看一下用于创建 SSH 隧道的命令,以了解它是如何工作的。

ssh -ND 1080 user@11.11.11.111 -p 22
Run Code Online (Sandbox Code Playgroud)

上面的命令是创建从客户端到服务器的隧道。 -D 1080设置在本地端口设置socks5 代理以1080供您的应用程序使用。这一切都在您的本地机器上。端口1080不需要使用路由器路由到任何地方。

user是您在服务器上的用户名。 11.11.11.111是你服务器的ip地址。 -p 22是 ssh 客户端尝试使用的端口连接到您的 ssh 服务器(端口22是默认值,因此-p 22如果您没有更改默认值,您实际上不需要包含在您的命令中,我只是为了解释目的而添加了它)。 这是确保路由器转发到服务器所需的端口。 如果您选择不使用默认的 ssh 端口 ( 22),您还需要配置 ssh 服务器以侦听不同的端口。

要使应用程序使用此隧道...

你只需要修改他们的代理设置(或使用全局代理——我不熟悉 OS X 是如何做到这一点的)在localhost:1080或使用socks5 代理127.0.0.1:1080。例如,这是如何使用 Firefox 执行此操作:

使用菜单转到 Edit:Preferences:Advanced:Network:(connection)Settings

火狐代理

在 OS X 上设置全局代理

我不使用 OS X,但 OP 确认这有效(见评论)。您可以尝试为 OS X安装GUI 工具,导航到服务器和端口System Preferences -> Network -> Advanced... -> Proxies并输入。127.0.0.11080

希望这可以帮助。