我正在运行一个应用程序服务器并记录所有请求以供稍后分析。我昨晚注意到的一个有趣趋势是,我有一位来自德克萨斯州的访客在 FIOS 上与加利福尼亚的 bluecoat 共享相同的流量。
什么会导致流量相同?对于访问者提出的每一个请求,bluecoat 都会在他请求的几毫秒内做出一个。如果是缓存,为什么会有相同的请求?它不会通过缓存/代理,而我只会看到代理请求吗?
我只是好奇,这是一个有趣的模式,它显示了 DDoS 攻击的相似之处,但资源要少得多。访问者的计算机上是否有可能存在恶意软件?
还有其他想法吗?
我有一个在我的服务器上使用 privoxy 运行的小代理,基本上是为了利用我服务器的静态 IP 连接到我办公室的 VPN。
我在一个没有身份验证的不常见端口上使用它,一个开放代理。正如我的系统管理员所说,Security Through Obscurity这不是我想要中继的东西。
我在 privoxy 文档上进行了搜索,但无法找到与用户身份验证相关的任何内容,我的问题是:有一种方法可以使用 privoxy 对其进行存档吗?如果没有,任何人都可以提出一些易于配置和简化隐私的建议吗?
谢谢。
截至 2 天前,nginx 开始支持 websocket 连接,因此我试图让我的 nginx-nodejs-socket.io 应用程序在没有 HAproxy 等的情况下工作(虽然运气不好)。
我真正想要实现的是 nginx 仅将 websocket 连接请求发送到支持的服务器,或者更准确地说是 websocket 服务器,socket.io,同时 nginx 将提供 php 文件,以及包括 html 文件在内的所有静态内容.我根本不想 express 提供静态内容(如果可能的话)。
这是我的 nginx.conf
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip …Run Code Online (Sandbox Code Playgroud) 我正在查看来自我们一些中国客户的流量,他们的 X-Forwarded-For 看起来像:
REALIP, 127.0.0.1, REALIP, etc
Run Code Online (Sandbox Code Playgroud)
有趣的是,环回 IP 始终是列表中的第二个 IP 地址。这意味着连接来自工作站 -> 代理 -> 同一主机上的代理 -> 另一个代理。
这意味着流量正在某处本地机器上通过代理。
这是防火长城吗?我一直认为这将是一个透明的代理。还有什么?有没有人见过这个?
谢谢。
我有一台 Linux Debian 机器,有许多运行 Squid 的网络接口(venet0:1 到 venet0:5)。如果我连接到接口 venet0:2,squid 使用 venet0:0 进行传出流量,但我希望 Squid 使用相同的网络接口进行连接。因此,如果我连接到 venet0:1 的 IP 地址,代理也应该使用相同的接口进行传出流量。
目前我使用以下配置:
http_port 200
forwarded_for off
uri_whitespace encode
visible_hostname localhost
via off
collapsed_forwarding on
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/users
auth_param basic children 5
auth_param basic realm Proxy
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl ncsa_users proxy_auth REQUIRED
access_log none
cache_store_log none
cache_log /dev/null
acl all src all
http_access allow ncsa_users
header_access From deny all
header_access Referer deny all …Run Code Online (Sandbox Code Playgroud) 从特定域名为 docker 容器提供服务的“最佳实践”是什么?
例如:
然后你可以,例如:
但哪个更好?是否有其他首选选项,还是真的取决于个人喜好?
选项 1 符合单一职责原则,允许您在容器中运行您的 1 个应用程序,并让主机处理代理。它还允许 Nginx 处理 SSL,但除了“docker run”之外还需要额外的设置和配置。
我知道我可以使用 ssh 隧道在我的机器上创建一个“代理”,这样我就可以让本地生成的所有流量通过远程服务器。像这样:
$ ssh -D 12345 myuser@remote_ssh_server
Run Code Online (Sandbox Code Playgroud)
但是如果我需要在远程服务器上创建一个“代理”,以便我发送的所有流量都将通过我的本地机器呢?这可以通过 ssh 实现吗?
本质上,我想使用我的本地互联网连接和一些特定命令来远程运行,因为服务器无法直接访问互联网。
我们有 QA 版本、UAT 版本和 webapp 的 DEV 版本。用户需要通过访问这些http://uat.company.com:41002/webapp,http://qa.company.com:41002/webapp和http://dev.company.com:41002/webapp。在端口 41001 和端口 8080 上还有一个不同的 webapp,它们需要访问。
这些 url 必须在公司外部可用,而且我们只有一个可以访问它们的公共 IP 地址。因此,DNS 记录需要所有 3 个地址指向一个 IP。在那个单一的 IP 地址上,有一台服务器运行着 nginx。在后台,我需要每个 url 指向不同的服务器
http://uat.company.com --> 123.123.123.1
http://qa.company.com --> 123.123.123.2
http://dev.company.com --> 123.123.123.3
Run Code Online (Sandbox Code Playgroud)
恐怕我不知道正确的术语,但是 URI 的其余部分和端口也必须转移到 IP 地址。即如果有人访问
http://uat.company.com:41002/webapp/somepage`
Run Code Online (Sandbox Code Playgroud)
看起来好像那是他们访问过的页面,但实际上他们会查看
http://123.123.123.1:41002/webapp/somepage
Run Code Online (Sandbox Code Playgroud)
或者如果他们访问过
http://qa.company.com:8080/static/home.html
Run Code Online (Sandbox Code Playgroud)
他们真的会看
http://123.123.123.2:8080/static/home.html
Run Code Online (Sandbox Code Playgroud)
但他们的浏览器仍然会说 http://qa.company.com:8080/static/home.html
我试过了
server {
server_name uat.company.com;
listen 41001;
listen 41002;
listen 8080;
location / {
proxy_pass http://123.123.123.1:$server_port$uri;
proxy_set_header Host $host;
}
Run Code Online (Sandbox Code Playgroud)
}
但是,这给了我一个带有日志的错误网关 502 页面: …
我在 Debian 上使用 Squid 3.4,我想知道如何在禁止其他子 URL 的同时允许某些子 URL。
特别是,我想禁止访问 reddit.com/* 但允许访问 reddit.com/r/foo/* 和 reddit.com/r/foo/
acl bad url_regex reddit\.com.*
acl good url_regex reddit\.com.*foo*
http_access deny bad
http_access allow good
...
http_access allow localnet
http_access allow localhost
http_access deny all
Run Code Online (Sandbox Code Playgroud)
这段代码似乎不起作用,reddit.com 上的所有内容最终都被屏蔽了。我怎样才能得到我想要的配置?
编辑:更新的配置仍然不起作用:
acl good url_regex http(s)?://(www\.)?reddit\.com/r/foo.*
acl bad url_regex http(s)?://(www\.)?reddit\.com.*
http_access allow good
http_access deny bad
...
http_access allow localnet
http_access allow localhost
http_access deny all
Run Code Online (Sandbox Code Playgroud)
这与前面的代码有相反的效果;它允许访问所有 reddit.com(我不想要)。
我需要设置一个连接到我们中央 Active Directory 服务器的本地 LDAP 代理缓存。OpenLDAP 代理缓存看起来很像。但是尽可能地遵循联机帮助页,我无法使其正常工作。
我能够通过 localhost 将请求代理到远程服务器,但它们没有被缓存(或者至少没有检索到缓存)。
我做的步骤:
openldap-servers和openldap-clients打包slapd.conf配置文件(详细信息如下)slapd -d -1命令启动服务器ldapwhoami -vvv -h localhost -D "CN=Melka Martin,OU=(...),DC=int,DC=ourdomain,DC=com" -x -w <password>结果是成功。但是嗅探网络流量显示查询是从中央 LDAP 服务器汇集的。
该slapd输出是非常详细,但它确实在一个点状态
QUERY NOT ANSWERABLE
QUERY CACHEABLE
Run Code Online (Sandbox Code Playgroud)
唉,如果它确实被缓存了,它永远不会被回答。任何想法可能是错误的?
"cn=admin,dc=int,dc=ourdomain,dc=com"是远程 LDAP 服务器中管理员用户的 DN。<something>是他的密码。
配置文件
database ldap
suffix "dc=int,dc=ourdomain,dc=com"
rootdn "cn=admin,dc=int,dc=ourdomain,dc=com"
rootpw <something>
uri ldap://dc-04.int.ourdomain.com:389
overlay pcache
pcache hdb 100000 1 1000 100
pcacheAttrset 0 …Run Code Online (Sandbox Code Playgroud)