我是网络和 unix 方面的新手,正在尝试调试一个问题,但我能够使用 tshark 捕获数据包,以便分析和检查客户端在初始连接时收到 401 错误的原因。快速解决方案是不强制使用 https,但这是一个生产服务器,不是一个选择。此服务器在 HAProxy 后面运行并使用 https,因此数据包是加密的。我在网上搜索了解密的方法,找到了一些示例,但每个方法都会导致某种无法调试的错误。例如: - 一个建议是创建 RSA 证书和密钥对 - 运行服务器 - 从另一个会话捕获流量
tshark -r ssltest.pcap -V -x -o "ssl.debug_file:ssldebug.log" -o "ssl.desegment_ssl_records: TRUE" -o "ssl.desegment_ssl_application_data: TRUE" -o "ssl.keys_list:127.0.0.1,4443,http,server.pem"
这应该解密数据包,但我发现输出中有更多细节,但没有可读信息,如头信息。
答案1
HTTP 401 响应代码表示资源的 HTTP 基本身份验证失败。因此,您的用户正在请求需要 HTTP 身份验证的资源,但他们没有提供正确的凭据。