Articles of 代理

试图运行1个vps的2个dante服务器

我购买了一个vps用于与dante socks5代理的目的,我的vps在接口venet0上有第二个ip:1,我想知道如何使用该ip作为代理与venet0上的ip一起: 0。 这是我的danted.conf文件 logoutput: /var/log/socks.log internal: venet0:0 port = 1080 external: 111.111.111.111 // actual ip is here method: username none #rfc931 clientmethod: none user.privileged: root user.notprivileged: nobody user.libwrap: nobody client pass { from: 0.0.0.0/0 port 1-65535 to: 0.0.0.0/0 log: connect disconnect error } pass { from: 0.0.0.0/0 to: 0.0.0.0/0 protocol: tcp udp }

是不是一个好主意,使用长期的最大年龄和改变的url,而不是正常的caching方法

我试图通过设置适当的caching标题来提高我所服务的某些网站的速度。 我已经阅读了一些教程,当在服务器上生成它们时,让资产的URI反映它们的新鲜感并不是一个坏主意。 例如,我可能将main.js作为main.js ,其中<md5>被main.js文件的校验和replace。 我可以看到为什么这是有益的:当Cache-control的max-age参数被设置为将来的一个date时,这个资源在caching它的浏览器/代理的眼中总是保持“新鲜”。 每当需要一个新的资源时,它只是有另一个md5总和,因此会出现一个新的资源。 这比使用ETag更有效,因为不需要服务器检查资产是否已经改变,它的URI是显式的。 因为我试图自己设置一个代理caching内存的代理,但是我想知道:这个scheme是不是意味着浏览器/代理的沉重负担,因为它们会caching所有版本的资产(因为它们认为他们是不同的资产,因为他们有不同的URI)。 这是一个负责任的事情吗? 或者我会溢出代理/浏览器。 在处理具有大量可caching资源的服务时(如分配指定数量的空间并丢弃每个主机的LRU / LFUcaching条目),有没有某种定义的行为代理?

HAProxy重置后端连接

我正在设置一系列服务器作为我们的应用服务器的代理,主要是为了模糊应用服务器的IP作为一套反DDOS措施的一部分。 我的目标是让HAProxy接受短暂的HTTP / 1.0连接,并通过持续连接将它们转发到后端,从而显着减less连接过程中的开销,缓慢启动等。 我有这个configuration部分工作,但仍然看到比预期更高的后端连接速度 – 调查显示,每个后端连接正在服务1到5个请求,然后由HAProxy方复位。 这些重置数据包总是在服务器完全接收到响应之后发生,在发送任何进一步的请求之前,它们在看似随机的延迟之后发生 – 有时短至0.1s,有时长达20s。 改变HAProxy的超时设置似乎没有效果。 有谁知道什么会导致HAProxy展示这种行为,或者我可能会更好地去debugging它? 编辑:忘了提及,我无法得到后端生成任何有意义的日志,即使使用tcplog configuration(redacted): global log /dev/log local0 log /dev/log local1 notice stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s maxconn 16384 chroot /var/lib/haproxy user haproxy group haproxy daemon defaults log global mode http option httplog option dontlognull option http-keep-alive timeout connect 5s […]

奇怪的代理行为

我最近在一个代理服务器后面的networking中安装了一台计算机,我configuration了一个反向的ssh隧道来连接它,然后用squid连接到开瓶器来连接服务器,这个工作没有问题,但奇怪的是它只能连接到一个服务器,这是完全无关的代理本身。 当我尝试通过SSH连接到服务器,我得到: Proxy could not open connnection to <hostname>: Forbidden ssh_exchange_identification: Connection closed by remote host 其他连接,如HTML本身,可以build立任何服务器没有任何问题的连接,例如,通过HTTP 1.1连接隧道(与ssh相同的方法)获得login,但被丢弃之前,能够列出的文件与同样的错误,并且netcat给出与ssh相同的行为,出现以下错误: getaddrinfo: Name or service not known 我的问题是为什么我只能连接到一个特定的服务器,不是因为位置,因为我没有访问同一个数据中心或域中的其他服务器。 我也没有运气与我的个人IP,并无法访问代理本身

代理参数与nginx

我试图用nginx代理一个带有参数的请求到shoutcaststream。 我已经尝试了一些事情,但似乎无法得到正确的工作。 首先是这个 location /music/ { proxy_pass http://dest.server.net/$1$is_args$args; } 这导致了以下日志: 2015/02/25 17:37:32 [error] 12183#0:* 1 no resolver defined to dest.server.net,client:1.2.3.4,server:myserver.org,request:“GET / full / path /1/foo/bar.pls?p1=1&p2=2 HTTP / 1.1“,主机:”myserver.org“ 当我添加一个parsing器: location /music/ { resolver 8.8.8.8; proxy_pass http://dest.server.net/$1$is_args$args; } 它似乎没有尝试代理请求: 2015/02/25 17:42:34 [error] 12106#0:* 3 open()“/full/path/1/foo/bar.pls”failed(2:No such file or directory),client:1.2 .3.4,server:myserver.org,请求:“GET /full/path/1/foo/bar.pls?p1=1&p2=2 HTTP / 1.1”,主机:“myserver.org” 如果需要在我的服务器上访问完整的path/参数,那么只需要将它们传递给真实的服务器即可。 任何build议,使这项工作?

用Vagrant / CoreOS / Docker创build一个本地集群

我正在尝试创build一个testing目的的本地环境,组成如下: Vagrant CoreOS集群(3个节点) 在一个节点上启动一个启动了Nginx镜像的Docker容器 我已经成功安装了Vagrant和CoreOS。 Etcd已经开始运行了,我和Fleet玩了很多。 我也推出了一个Nginx容器扔舰队服务。 我无法弄清楚的是: 如何路由特定容器上的stream量? 我希望将本地浏览器指向本地地址(例如example.dev),集群将使用正确的Nginx容器(放置在集群某处)进行回应。 代理是一个合适的解决scheme吗? 如果没有 – 是否有为此目的而创造的东西? 预先感谢,随时提出更多的细节,我可能已经忘记了!

鱿鱼拦截代理卡住转发循环

我试图build立一个使用Squid的debugging代理,主要是testing我们自己的客户端通信库的各种代理types(我们的客户端的一种可能性,是连接到外部拦截和过滤代理服务)。 我们的networking设置如下所示: [客户端设备/浏览器] – [代理,公共IP只] – [目标网站,例如Google,Facebook等] 在testing设置时,从Linux客户端执行此操作可以正常工作(因为端口8991没有设置拦截): $ curl –proxy http://<squidserverip>:8991 http://www.example.com/ 然而,这个版本从Squid发出一个拒绝访问的错误页面(因为端口8990被设置了拦截): $ curl –proxy http://<squidserverip>:8990 http://www.example.com/ 在Squid服务器上,我在cache.log中看到以下内容: 2015/03/11 20:10:44 kid1| WARNING: Forwarding loop detected for: GET / HTTP/1.1 User-Agent: curl/7.26.0 Host: www.example.com Accept: */* Via: 1.1 <servername> (squid/3.4.8) X-Forwarded-For: <client-source-ip> Cache-Control: max-age=259200 Connection: keep-alive 在这些例子中,出于安全原因,我已经混淆了实际的请求(带有占位符名称/标题)。 我的squid.conf目前看起来像这样(删除了注释行和空行): acl SSL_ports port 443 acl SSL_ports […]

无法设置透明代理

我一直试图没有成功,像在电脑上设置一个透明的代理服务器。 我发现的大多数例子都没有在同一台计算机上的网关和代理,所以我可能会看到错误的例子。 这是我的'路由器'电脑如何设置: 它充当无线AP,并具有两个LAN端口(目前仅使用一个LAN端口) 它有一个DHCP和DNS服务器上设置 Dansguardian和鱿鱼是完全安装(我已经用telnet和squidclienttesting) 通过iptables NAT是所有设置和工作正常。 我目前的iptables安装脚本(是的,这是非常简单的,并允许太多。我得到透明代理工作后,我会更好地locking它): LAN="wlp4s0" WAN="enp3s0" PROXY_PORT="8080" iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X #handle unmatched traffic iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -A INPUT -m state –state INVALID -j […]

Nginx的proxy_cache /光油 – 并行请求触发多个请求后端?

我正在寻找一个HTTP反向代理,将以高性能的方式处理HTTP实时stream媒体用例。 假设文件/碎片大小高达4MB,同一文件的客户请求的持续负载非常接近(请求到达,而后端满足第一个请求)。 CDN服务将不会在这里使用。 在下面的每个Nginx和Varnish的事件中发生了什么(请插入你认为更合适的另一个解决scheme)? 客户端1请求反向代理(proxy_cache或Varnish),文件不被高速caching(MISS)。 代理向后端发出请求,并尝试填充本地caching并将响应传递给Client1 当Client1的请求正在被服务(在代理完成之前)时,其他客户对同一个文件的并发请求。 目标是: 代理将在从后端检索文件时阻止其他请求。 代理将在数据到达时同时为所有正在等待的客户端提供服务(当数据到达时,不是在整个文件被缓冲后)。 对于特定的文件,在任何给定时间只有一个后端请求会被创build。 所有的客户端都应该由来自后端的共享响应来提供服务。 例外情况是,如果客户端针对不同的范围进行HTTP范围请求。 哪种解决scheme最适合在像这样要求更大的文件? 如果有任何关键的configuration设置,以达到预期的效果,请分享。 谢谢!

Openshift代理超时

我有一个与Openshift托pipe的应用程序,我需要它来生成一些Excel报告。 报告生成过程可能需要很长时间(超过5分钟)。 这会导致客户端看到502错误,请求超时。 怎样才能在哪里configuration我的Openshift栈(这是一个从Tomcat6运行的Java web应用程序)来增加超时时间?