问题标签 [firewall]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
performance - 跨防火墙的 HTTP 版本性能
我们有一个通过代理调用 Web 服务的系统。这是用 C# 编码的,使用 HttpWebRequest。很长一段时间以来,我们一直在处理这些呼叫的速度问题,我一直在努力追查。一次不相关的对话导致其中一位操作人员提到我们一直在使用的端口使用防火墙软件,该软件在移植 HTTP 1.1 调用方面具有不太理想的(阅读:错误)实现。果然,我放弃了使用 HTTP 1.0 而不是 1.1 的 Web 请求,速度瞬间翻了一番。我们已经禁用了keep-alive,因为它太不稳定了。
所以,问题:在短期内,除了 keep-alive 和 HTTP 版本之外,是否还有其他变量可以通过更改 HttpWebRequest 调用的各个方面来进一步提高速度?我想如果不知道防火墙软件的来龙去脉,就很难说清楚,我还不知道。
更重要的是,他们在不同的端口上有一个更新版本的软件,显然要好得多,并且完全支持 HTTP 1.1。我是否应该期望通过切换到 HTTP 1.1 和 keep-alives 来显着增加响应时间?
ssl - 通过 SSL 与防火墙的 C# Web 服务
我们允许用户拨入我们的系统。
我们在拨入系统上运行防火墙,默认情况下会阻止所有访问,并且我们只允许通过添加特定规则来访问某些服务器。
我们有一个与我们的服务器联系的网络服务。服务调用通过 SSL 进行。
SSL 证书来自 GoDaddy。
我们发现,当第一次连接到服务时,某些东西会尝试验证 SSL 证书。我们看到通过端口 80 丢弃到 Microsoft IP 地址的数据包。
如果我们允许访问 Microsoft IP,则该软件可以完美运行。
问题是 IP 是随机的,所以我一直在添加一些不同的 IP 主机。
看起来像是某种类型的 SSL 验证系统或其他东西……有人遇到过这样的事情吗?或者知道我可以在防火墙中允许的 IP 或主机名块?
web-services - BizTalk Web 服务调用:无法连接到远程服务器
我正在尝试从 BizTalk (2006) 编排中调用 Web 服务。
掌握了基础知识后,我一直在关注本教程(从第 74 页开始),其中我有一个对外部 Web 服务的 Web 引用(我使用的是这个 Web 服务而不是本教程中的那个),我有我的发送组件中的 web 消息,并为 web 服务调用设置了请求/响应端口。
我相当确定一切都已正确设置,但我的编排无法调用 Web 服务并出现以下错误:
适配器无法传输要发送端口“My_Order_Processor.Orchestration-CurrencyConvertPort-36c122f41c5596ae”且 URL 为“ http://www.webservicex/net/CurrencyConvertor.asmx ”的消息。
WebException:无法连接到远程服务器。
SocketException:一个现有的连接被远程主机209.162.186.60:80强行关闭
IP 209.162.186.60 是我尝试连接的 Web 服务的地址。我正在尝试缩小错误的原因,例如:
- 防火墙问题
- 代理服务器问题(我不知道如何配置 BizTalk 以使用代理服务器)
- 别的东西
BizTalk服务器可以ping web服务,我可以访问互联网(通过IE),我可以成功地将WebReference添加到项目中(这意味着至少编排设计者可以访问web服务好了)。我还尝试了不同的 Web 服务,结果相同。
关于找出为什么会发生这种情况或如何找到更多信息的任何想法?(我是 BizTalk 的新手)
networking - 两台防火墙计算机的网络连接
比如说,我在防火墙、路由器等后面有两台计算机(即没有传入连接)。有什么方法可以通过 TCP/UDP 协议将两者连接起来,而无需通过某处的特殊服务器?我知道 Skype 会做类似的事情,也许并不完全如此。
谢谢。
objective-c - 阻止应用程序通过 Cocoa API (LittleSnitch APIs) 访问网络?
我正在使用 OS X 10.5,并且正在寻找一种方法来检测应用程序是否尝试访问 Internet。在这一点上,如果应用程序符合我将定义的一组规则,我想阻止它。
我意识到有ipfw Unix 命令可用于阻止对某些端口的访问,但这会影响所有应用程序。我阅读了手册页并没有看到使用 ipfw 阻止访问但将其限制为特定应用程序的方法。
我的主要问题在于检测哪个应用程序试图获得对网络的外部访问。以编程方式必须有一种方法可以做到这一点,无论是通过使用一些 Mac OS X API 还是 Unix 命令如何实现?
更新: 本质上我想做小飞贼所做的,但我想自己从头开始写,因为我不喜欢小飞贼。我只需要知道哪些 API 可以让我完成应用程序网络沙盒以及 Little Snitch 究竟是如何做到的?
java - 如何使用 Tomcat 隧道 RMI
我想将 RMI 设置为通过 java servlet 上的端口 80 ..(通过防火墙)我有一个 Tomcat 服务器,我正在寻找能够捕获 RMI http 请求并将其传递给服务器机器上的 RMI 层。我读过 RMI 会自动处理它。
有分步指南吗?或者只是一个要安装在服务器上的战争文件?
谢谢。
mysql - 连接/隧道到远程服务器以绕过防火墙
我想在工作中开发的 MySQL Db 上试用一些 MySQL 软件,例如 Workbench。在多次尝试建立连接失败后,我终于询问了一位服务器管理员是否做错了什么,并被告知 Db 位于防火墙后面。所以我可以使用 phpMyAdmin,因为它安装在服务器端,而不是 Excel、Workbench 等(来自我的机器)。
所以我想知道是否有一种相当标准的方法可以与服务器建立类似 VPN 的连接。目前我使用 SSH 客户端连接没有问题。但显然这不是将我的本地应用程序链接到服务器。那么我能否以我的整个系统(可以这么说)被认为已登录到服务器的方式进行连接?VPN 是我能做的最接近的类比,但这不是一个选择。
和....
这被认为是相当“黑帽”还是只是我不知道该怎么做但所有酷孩子都在合法地做的事情?
谢谢
networking - 通过 SSH 隧道访问 LDAP
我通过 SSH(root 访问)访问了我客户办公室网络内的一台机器。
我正在我的计算机中编写一个需要集成到 LDAP 的 PHP 应用程序。LDAP 服务器位于我客户端网络的另一台服务器中,无法从外部访问,但是我可以通过可以通过 SSH 连接的服务器完美访问它。
我的问题是:无论如何我可以在我的计算机中建立一个隧道并设置一个端口,以使用我的 SSH 连接到网络上的一台计算机将流量转发到 LDAP 服务器?
谢谢!!!!
git - 通过 SSH 隧道连接到 gitosis 服务器
我在我的 macbook 上设置了 SSH 隧道,就像这样......
所以我可以 ssh 到 localhost:22222 并最终在防火墙后面的 gitosis-server 上。
我创建了一个本地 id_rsa.pub 文件,将其复制到 gitosis 服务器(运行 Centos5),然后使用...将其导入 gitosis
所以......我认为这个命令应该工作......
然而,当它要求输入密码时,它不会......当公钥应该工作时。
关于让 git 通过防火墙后的 gitosis 服务器工作的任何想法?
谢谢,
马特
编辑 - 从 SSH 尝试添加调试
我做了这个命令,'ssh -vvv gitosis@gitosis-server'。我得到了一些调试,它似乎不喜欢我的身份。
编辑 2
好的...肯定是一个坏键。我再次检查了所有的密钥,当然发现 gitosis-server 在 authorized_keys 文件中持有一个错误的密钥。
debug1:用户 gitosis 服务 ssh 连接方法的 userauth-request 无 debug1:尝试 0 次失败 0 debug1: PAM: 为“gitosis”初始化 debug1:PAM:将 PAM_RHOST 设置为“firewall.domain.com” debug1:PAM:将 PAM_TTY 设置为“ssh” debug1: userauth-request 用户 gitosis 服务 ssh-connection 方法 publickey debug1:尝试 1 失败 1 debug1:测试 pkalg/pkblob 是否可以接受 debug1:temporary_use_uid:102/103(e=0/0) debug1:尝试公钥文件 /var/lib/gitosis/.ssh/authorized_keys 调试1:restore_uid:0/0 debug1:temporary_use_uid:102/103(e=0/0) debug1:尝试公钥文件 /var/lib/gitosis/.ssh/authorized_keys2 调试1:restore_uid:0/0 来自 FIRE.WALL.IP.ADDRESS 端口 52453 ssh2 的 gitosis 公钥失败
我仔细查看了 gitosis 服务器上的 authorized_keys 文件……它是不正确的。我仔细检查了我从工作站复制到 /tmp 的公钥文件,它是正确的,但与authorized_keys 中的不同。我删除了服务器上的 authorized_keys 文件并重新运行了“sudo -H -u gitosis gitosis-init < /tmp/id_rsa.gitosis.pub”。再次检查了authorized_keys文件......仍然是错误的。
我通过编辑authorized_keys 并添加正确的密钥来手动更新它,然后我通过隧道从我的工作站工作一两次尝试。然后它像以前一样停止工作。我回到了 gitosis 服务器上的 authorized_keys 文件,果然……gitosis 已将其恢复为不起作用的旧密钥。
为什么这样做....恢复到一个错误的公钥....即使在我尝试使用上述命令添加它之后...它未能更改它....然后手动更改它....这有效,但 git 然后又恢复到坏的状态。
就像 gitosis 一直记得我放在那里的第一个键......并且不会让我将其更改为更正的键。
令人沮丧...
马特
networking - 如何在防火墙后面连接两个客户端?
在使用 Live Messenger 等即时消息应用程序或 Google Talk 的桌面客户端时,计算机可以在彼此之间传输文件。我不能肯定地说,但我相当肯定计算机之间传输的数据不会通过微软或谷歌的 IM 服务器,而是两台装有 IM 软件的计算机直接相互通信。我想知道客户端之间的这种直接连接是否或如何建立,以及我将如何自己实现类似的东西。
我有一些使用个人网络的经验,但我只了解客户端-服务器关系,其中服务器始终在侦听(并且端口不会被防火墙阻止)并且客户端在需要数据时向服务器发出请求。