标签: proxy

通过 SSH 隧道使用服务器的 IP

首先,我的设置是一台 Ubuntu 笔记本电脑和一台 Ubuntu 服务器。

我的本地笔记本电脑上有一个程序需要访问某个 Web 服务(我们称之为http://someserver.com/someservice123)。现在这个服务有一个防火墙,它只允许从我服务器的 IP 访问。

我可以在笔记本电脑和服务器之间使用某种类型的 SSH 隧道,以便当笔记本电脑上的 python 脚本向http://someserver.com/someservice123发送请求时,该服务会看到来自我服务器 IP 的请求?

我知道它看起来像:

ssh -N -R 80:localhost:80 user@myserver
Run Code Online (Sandbox Code Playgroud)

但我不确定。

linux ssh proxy service tunnel

4
推荐指数
1
解决办法
1451
查看次数

阻止 Google Analytics 会破坏一些应用程序

我们阻止了 Google Analytics(公司政策)。我们有一些 3rd 方 Windows 应用程序可以在用户登录或打开帮助时 ping Google Analytics。不幸的是,由于我们阻止了 Google Analytics,这些功能不起作用......

我已经联系了供应商 (AutoDesk),但到目前为止,他们唯一的解决方案是取消阻止 Google Analytics。

我正在寻找一种方法来欺骗应用程序认为 Google Analytics 正在工作,即使它被阻止。想法?

firewall proxy google-analytics

4
推荐指数
1
解决办法
2760
查看次数

嗅探移动流量数据

我现在正在为我们的移动部门准备一个自动化测试实验室,主要由安卓设备组成。

对于第一阶段,我需要 HTTP 设备嗅探,我无法在设备上执行此操作,因为它们并非全部扎根,并且并非所有设备都是 4.0 及更高版本,因此它们可以使用基于 VPN 的解决方案。

我正在考虑一个将在设备 wifi“高级设置”中定义的代理,并且应该使用请求响应头 + 正文创建 .txt 文件(因为它没有特殊格式并且是纯文本应该对我来说很好用) .

如果需要,我将在稍后解决 HTTPS。

我的问题是哪个代理服务器可以最快地为此类操作设置和编写脚本?我想一次可以发出请求的设备不会超过 10-15 个,在我的设置中负载不会有太大问题,但确保每个设备都有自己的数据打印到文件中。

我知道squid 存在,tinyproxy 我知道apache 有一个proxy_mod 可以做到这一点,不确定它是否适合我的需要。服务器机器是 linux,所以没有提琴手会来帮助我。

automation linux proxy sniffing

4
推荐指数
1
解决办法
565
查看次数

使用 nginx 反向代理进行重定向

我有a.b域(例如)并希望username.github.io/projecta.b/c. 这意味着我还想将我的浏览器 url 保留a.b/cusername.github.io/project.

我在 nginx 模块中有以下设置

location /c {       
    proxy_pass http://username.github.io/project;
    proxy_redirect http://username.github.io http://a.b;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_buffering off;
}
Run Code Online (Sandbox Code Playgroud)

如果我更改proxy_set_header Host $http_hostproxy_set_header Host $proxy_hostor $host,它只是重定向到http://username.github.io/project我不想要的。我能怎么做?

nginx proxy reverse-proxy redirect

4
推荐指数
1
解决办法
6万
查看次数

nginx:理解auth_http(IMAP代理)的用途

我想通过 nginx 代理将 IMAP 客户端请求发送到 IMAP 后端。根据mail_auth_http模块,auth_http必须使用指令来验证客户端。但究竟是什么目的auth_http,为什么不能简单地将认证过程转发到IMAP后端?

据我所知,auth_http指向一个使用自定义 HTTP 协议的身份验证脚本,以确定将使用哪个后端等,并完全跳过基于 IMAP 的实际身份验证。我对么?

如果有人可以发布一个实际示例,我将不胜感激。

email nginx proxy authentication imap

4
推荐指数
1
解决办法
8857
查看次数

在 HTTP 中,最初请求的域名是否有任何相似之处,后 DNS 解析?

DNS 解析和 Web 浏览器如何工作的理解如下:

  1. 您的浏览器使用最终将其连接到您的注册商名称服务器的 DNS 系统
  2. 然后,您的注册商的名称服务器最终将映射的 IP 地址发送回您的浏览器
  3. 然后,您的浏览器与注册商的名称服务器返回的 IP 地址建立直接 HTTP 连接

如果我到目前为止所说的任何内容不准确或具有误导性,或者遗漏了任何主要组件,首先纠正我!

假设我对 DNS 解析和 IP 地址查找的理解或多或少处于正轨,那么我有以下问题:

浏览器将域名解析为 IP 地址(通过 DNS)后,会与该 IP 地址建立直接 HTTP 连接。 这样做时,有没有参考任何最初请求的URL?

换句话说, sayblah.example.com被解析为一个 IPv4 地址1.2.3.4。对 的请求http://blah.example.com/fizz将被转换为对 的请求http://1.2.3.4:80/fizz。我的问题是:在第二个请求(直接引用 IP 地址)中,是否有任何标头/元数据引用blah.example.com

我查看了Wikipedia 的标准 HTTP 请求标头列表,令我沮丧的是,找不到任何突出的标头。我想我有点希望像这样的标题Requested-URL,等等。

必须有某种方式将第二个 HTTP 请求绑定到最初请求的名称,否则我认为代理或负载平衡器永远无法工作。

domain-name-system http proxy

4
推荐指数
1
解决办法
313
查看次数

Apache 代理可以向多台服务器发送一个请求吗?

我们想将 Apache 代理收到的请求发送到所有一组下游服务器(实际上,也是代理,但我认为这并不重要)。

我们知道,由于各种原因(该 IP 上的服务器不存在、未在正确的端口上侦听或凭据错误),除最多一个之外的所有请求都会失败。

我们知道,对于一台服务器,请求应该可以工作(但可能不会 - 服务器可能已关闭电源、无法正常工作、过载等)。我们不知道这将用于任何一个请求的服务器。

所以我们想返回一个正确的响应,如果它发生,或者如果不应该返回任何错误响应(或固定的失败响应)。

有任何想法吗?如果我们需要从头开始编写,它并不是最复杂的应用程序,但如果可以,我们更愿意使用 Apache(我们的解决方案中已经有了它)。

proxy apache-2.2

4
推荐指数
2
解决办法
4226
查看次数

如何绕过每个应用程序的 OpenVPN

我有一台 linux 机器,它通过 openVPN 连接路由其整个互联网流量。它被明确配置为以这种方式工作。

但是,该机器有一些应用程序不应使用 VPN 连接 (tun+) 并通过开放连接 (eth0)。

由于它不是基于目标 ip 的路由,我的第一个不过是创建一个本地 socks5 代理,应用程序应该使用它来避免 openVPN 通道。但是,我使用 ssh -D 或其他 sw) 执行此操作的尝试失败了(可能是我的错),我现在想知道是否有其他更好的解决方案。

linux vpn proxy iptables openvpn

4
推荐指数
1
解决办法
5778
查看次数

SSH 配置 ProxyCommand 要求提供公钥

我正在尝试通过网关连接到 EC2 实例。

如果我连接到网关

local> ssh gateway
Run Code Online (Sandbox Code Playgroud)

然后我可以在没有密码的情况下连接到 EC2

gateway> ssh ec2  # works
Run Code Online (Sandbox Code Playgroud)

但是,尝试通过代理连接似乎需要身份文件。

Host gateway
    HostName <gateway>

Host ec2
    HostName ec2-<ec2>.compute.amazonaws.com
    ProxyCommand ssh gateway -W %h:%p


local> ssh ec2
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)

我认为 ProxyCommand 基本上是将我登录到网关,然后登录到最终目的地。如果是这样,当网关设置为不需要公钥时,为什么它会要求我提供公钥?如何以与 ssh 进入网关然后 ssh 进入 ec2 相同的方式连接到 ec2 实例?

编辑:rsync 正常工作(不要求提供密钥文件)

rsync -pthrvz  --rsync-path=/usr/bin/rsync --rsh='ssh gateway ssh' . ec2:/path
Run Code Online (Sandbox Code Playgroud)

ssh -v 输出 gateway> ssh ec2

gateway> ssh -v ec2
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for …
Run Code Online (Sandbox Code Playgroud)

ssh proxy ssh-tunnel

4
推荐指数
1
解决办法
3691
查看次数

如何在 nginx 中为我的代理添加后备?

我正在尝试通过 nginx 为我的节点应用程序构建一个代理,认为如果节点应用程序失败或在端口上不可用,这会给我错误页面。

节点应用程序继续运行127.0.0.1:1337,我正在收听mydomain:8080并转发它。

server {
    listen       8080;
    server_name  mydomain;
    access_log   /log/path/logging.log;
    root         /path/to/root/;
    error_page   400 401 402 403 404 500 501 502 503 504  /error/index.html;

    location / {
        proxy_redirect          off;
        proxy_pass_header       Server;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        X-Scheme $scheme;
        proxy_set_header        Host $http_host;
        proxy_set_header        X-NginX-Proxy true;
        proxy_connect_timeout   5;
        proxy_read_timeout      240;
        proxy_intercept_errors  on;

        proxy_pass              http://127.0.0.1:1337;
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我关闭节点应用程序并请求mydomain:8080. 不过,这是 nginx 的预期行为。我想要的是一个我可以定义的页面,该页面将在节点应用程序的服务关闭时显示。

任何想法如何做到这一点?

nginx proxy 502-error

4
推荐指数
1
解决办法
1万
查看次数