AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-98656

Jordan Rieger's questions

Martin Hope
Jordan Rieger
Asked: 2017-02-17 17:46:31 +0800 CST

为什么 IIS 不允许通过 NLB 从外部 IP 进行 TCP 连接

  • 1

我有一个开发 Web 服务器环境,由 2 个配置有 NLB(多播模式)的 Windows 2012 VM 组成。它们每个都使用一个分配有 2 个 IP 的网络适配器:共享 NLB IP 和它们的非共享单独 IP。我们的使用模式是在其中一个 VM 处于活动 NLB 池之外时运行构建和部署。构建完成后,将新更新的服务器添加回池中,并删除另一台。这样我们就可以保持恒定的正常运行时间。

我的问题是,在 2 台服务器中的 1 台上,IIS 不允许通过 NLB 从我们网络外部的 IP 地址进行连接。因此,如果该服务器是 NLB 池中唯一活动的服务器,则内部 PC 可以连接,但我们网络外部的主机无法连接。他们得到一个超时。我可以看到使用 Wireshark 的 TCP SYN,并且没有任何 ACK 被发回。如果我将 NLB 配置翻转到另一台服务器,它允许内部和外部 IP 连接。我从我控制的外部主机验证了这一点:我尝试了使用 NLB IP 的 HTTP 请求并得到了相同的结果。

我检查过的事情:

  • 据我所知,两台服务器上的 NLB 和 IIS 配置/绑定是相同的。
  • IIS 中没有 IP 过滤规则。
  • Windows 防火墙已关闭。
  • 我尝试切换到单播 NLB 模式,但这破坏了一切。
  • 我尝试将 NLB 主机优先级更改为 4 和 3 而不是 1 和 2,但没有效果。
  • 我还通过在端口 80 上通过 IP 地址的简单请求来重现问题,从而从等式中消除了主机标头和 SSL。

如何解决 IIS 未从外部 IP 确认 SYN 的问题?它可以记录这种事情吗?

如果我无法解决为什么 IIS 不允许服务器 2 上的连接,我唯一的办法就是从头开始重建整个 VM 并重试...

windows iis nlb windows-server-2012 iis-8
  • 1 个回答
  • 648 Views
Martin Hope
Jordan Rieger
Asked: 2016-09-29 13:11:01 +0800 CST

在 Tomcat 8 上启用 javax.net.debug=all 会破坏 HTTPS,并显示“EC AlgorithmParameters not available”

  • 1

在对我的 Tomcat servlet 问题进行故障排除时,我决定通过/var/apache-tomcat-8.5.5/bin/setenv.sh将行编辑并更改export JAVA_OPTS="-Xms512m -Xmx1536m -XX:MaxPermSize=256m"为export JAVA_OPTS="-Xms512m -Xmx1536m -XX:MaxPermSize=256m -Djavax.net.debug=all". 保存文件并重新启动 Tomcat(通过 catalina.sh start/stop)后,我发现我无法再通过 HTTPS连接到 Tomcat 管理器应用程序( https://10.9.9.236:8443/manager/html/ ) . 铬 说:

“无法访问此站点”(ERR_CONNECTION_CLOSED)

在完全停止和取消部署我的 web 应用程序后,我重现了这种行为。(现在只安装了默认的 Tomcat 管理器应用程序。)所以我知道只有一个 Java 选项会导致 HTTPS 失败。

为什么启用调试会破坏 HTTPS?

这是来自 catalina.out 日志文件的可能线索:

https-jsse-nio-8443-exec-4, fatal error: 80: problem unwrapping net record
java.lang.RuntimeException: java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available
https-jsse-nio-8443-exec-4, SEND TLSv1.2 ALERT:  fatal, description = internal_error
https-jsse-nio-8443-exec-4, WRITE: TLSv1.2 Alert, length = 2
28-Sep-2016 14:01:00.576 SEVERE [https-jsse-nio-8443-exec-4] org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun 
 java.lang.RuntimeException: java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available
    at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1429)
    at sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:535)
    at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:813)
    at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
    at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
    at org.apache.tomcat.util.net.SecureNioChannel.handshakeUnwrap(SecureNioChannel.java:449)
    at org.apache.tomcat.util.net.SecureNioChannel.handshake(SecureNioChannel.java:227)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1387)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available
    at sun.security.util.ECUtil.getECParameters(ECUtil.java:100)
    at sun.security.util.ECUtil.getECParameterSpec(ECUtil.java:149)
    at sun.security.ssl.JsseJce.getECParameterSpec(JsseJce.java:385)
    at sun.security.ssl.SupportedEllipticCurvesExtension.toString(SupportedEllipticCurvesExtension.java:127)
    at sun.security.ssl.HelloExtensions.print(HelloExtensions.java:150)
    at sun.security.ssl.HandshakeMessage$ClientHello.print(HandshakeMessage.java:323)
    at sun.security.ssl.ServerHandshaker.clientHello(ServerHandshaker.java:340)
    at sun.security.ssl.ServerHandshaker.processMessage(ServerHandshaker.java:221)
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
    at sun.security.ssl.Handshaker$1.run(Handshaker.java:919)
    at sun.security.ssl.Handshaker$1.run(Handshaker.java:916)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.security.ssl.Handshaker$DelegatedTask.run(Handshaker.java:1369)
    at org.apache.tomcat.util.net.SecureNioChannel.tasks(SecureNioChannel.java:397)
    at org.apache.tomcat.util.net.SecureNioChannel.handshakeUnwrap(SecureNioChannel.java:457)
    ... 7 more
Caused by: java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available
    at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
    at java.security.Security.getImpl(Security.java:695)
    at java.security.AlgorithmParameters.getInstance(AlgorithmParameters.java:146)
    at sun.security.util.ECUtil.getECParameters(ECUtil.java:98)
    ... 21 more

当我擦除日志并恢复为默认 JAVA_OPTS 时,不会发生异常。

环境:

CentOS Linux release 7.2.1511 (Core)
uname -r: 3.10.0-327.10.1.el7.x86_64

Using CATALINA_BASE:   /var/apache-tomcat-8.5.5
Using CATALINA_HOME:   /var/apache-tomcat-8.5.5
Using CATALINA_TMPDIR: /var/apache-tomcat-8.5.5/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-3.b13.el7_2.x86_64/jre
Using CLASSPATH:       /var/apache-tomcat-8.5.5/bin/bootstrap.jar:/var/apache-tomcat-8.5.5/bin/tomcat-juli.jar
Using CATALINA_PID:    /var/apache-tomcat-8.5.5/tomcat.pid

我应该补充一点,即使对 servlet 的 HTTPS 访问被破坏,我仍然可以通过 HTTP 访问它,例如http://10.9.9.236:8080/manager/html/。

tomcat java debug tomcat8
  • 1 个回答
  • 6132 Views
Martin Hope
Jordan Rieger
Asked: 2015-09-30 13:46:26 +0800 CST

名称服务器是否需要发布自己的 IP 地址?

  • 0

假设我在 ns1.example.com 上设置了一个新的名称服务器,并且我已经在我的注册商处正确地创建了粘合记录,以告诉注册表 ns1.example.com 应该指向我的名称服务器的 IP 地址 77.77.77.77。我的名称服务器配置中是否有任何内容需要在区域中发布此 IP 地址?即为自己发布 NS 或 A 记录?

如果名称服务器没有发布它自己的 IP 地址(除了在注册表粘合记录中),客户端是否仍然能够成功地向我查询其他记录?

domain-name-system
  • 1 个回答
  • 38 Views
Martin Hope
Jordan Rieger
Asked: 2012-11-05 23:41:40 +0800 CST

在 Windows 2003 上浏览非应用程序 IIS 网站中的静态 HTML 页面时出现“服务不可用”(可能与 SharePoint WSS 2.0 相关?)

  • 0

背景:

我的客户有一台旧的 Pentium III Windows 2003 服务器,其 16/36 GB 磁盘快要用完了。他在上面有一个数据库驱动的网站和电子邮件应用程序,需要开发人员(我)进一步定制。首先我们需要让它在新服务器上运行。原开发者不再提供系统设置指南。因此,我的客户找了一位技术人员将旧驱动器映像到新服务器并设法让它启动。但是 IIS 驱动的站点不再有效。事实上,IIS 本身似乎不起作用。

问题:

Service Unavailable当尝试从服务器本身浏览到本地网站的 URL 时test,我在 IIS 中将其设置为提供单个静态 index.htm 文件。我这样做是为了隔离问题,并从等式中消除客户的应用程序。该站点设置在端口 80 上,主机标头为“test.myclientsdomain.com”,我使用 etc\hosts 文件将该主机指向本地 IP。我知道主机条目已生效,因为我可以 ping 它。

在执行 iisreset 时,我得到:

Attempting start...
Restart attempt failed.
IIS Admin Service or a service dependent on IIS Admin is not active.  It most likely failed to start, which may mean that it's disabled.

尽管有这条消息,服务都保持在 Started 状态。我发现的唯一相关系统事件日志是:

Event Type: Error
Event Source:   W3SVC
Event Category: None
Event ID:   1002
Date:       11/4/2012
Time:       11:04:47 PM
User:       N/A
Computer:   ALPHA1
Description:
Application pool 'DefaultAppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool.

Event Type: Error
Event Source:   W3SVC
Event Category: None
Event ID:   1039
Date:       11/4/2012
Time:       11:13:12 PM
User:       N/A
Computer:   ALPHA1
Description:
A process serving application pool 'DefaultAppPool' reported a failure. The process id was '5636'.  The data field contains the error number.

Data:
0000: 7e 00 07 80               ~..    

和一个应用程序事件日志:

Event Type: Error
Event Source:   Windows SharePoint Services 2.0
Event Category: None
Event ID:   1000
Date:       11/4/2012
Time:       11:34:04 PM
User:       N/A
Computer:   ALPHA1
Description:
#50070: Unable to connect to the database STS_Config on ALPHA2\SharePoint.  Check the database connection information and make sure that the database server is running.

最后一条日志告诉我,技术人员最初可能试图通过将新服务器从 ALPHA1 重命名为 ALPHA2 来同时运行旧服务器和新服务器。也许 SharePoint 抓住了这一变化,现在无法判断机器名称已切换回旧的 ALPHA1。但为什么 SharePoint 会干扰提供单个 HTML 文件的静态 IIS 网站?测试站点甚至不在应用程序池中(我单击了删除按钮。)

我尝试/消除的内容:

  • 似乎没有相关服务被禁用:IIS Admin、WWW Publishing、Sharepoint Timer
  • 在为我的测试站点提供服务的 c:\inetpub\test 文件夹上授予所有用户/所有人完全控制权。
  • ALPHA1\SHAREPOINT\STS_CONFIG我可以从 SSMS连接到并查询本地 SharePoint 配置数据库 ( )。但是当我尝试这样做时, stsadm -o setconfigdb -connect -databaseserver ALPHA1\SHAREPOINT它告诉我The SharePoint admininstration port does not exist. Please use stsadm.exe to create it.当我这样做时,使用 IIS SharePoint 管理站点配置中指定的端口 9487,它告诉我该端口已被使用。不用说,只需浏览到管理站点就会给我一个类似的错误,即无法访问配置数据库。我不想继续 SharePoint 路径,因为它可能已完成,与我的 IIS 问题无关,而且我什至不知道此应用程序是否需要 SharePoint 才能工作。该应用程序本身是 ASP.Net/C#/Silverlight 和一点 MS Word 集成(也许这就是 SharePoint 的用武之地。)
windows-server-2003
  • 1 个回答
  • 1221 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve