草庐IT

ssl_accept

全部标签

ServerSocket.accept() 返回的 Java 客户端套接字

这更像是一个一般的套接字问题。在Java中,如果我有一个绑定(bind)到特定端口的ServerSocket,比如4444,我知道它正在监听连接请求。accept()方法会阻塞,直到收到连接请求并返回一个新的Socket以与客户端通信。返回的Socket的远程端点是客户端的IP地址和端口。但是,让我感到困惑的是,返回的Socket的本地端口与正在监听请求的ServerSocket的端口号相同(在本例中为4444)。我以为两个套接字不能绑定(bind)到同一个端口?返回的Socket不会是服务器上的另一个端口吗? 最佳答案 两个Ser

ssl - 如何使用 nginx 从 http 负载均衡器迁移到 https 负载均衡器

所以我的负载均衡器看起来像这样:upstreammyapp1{server192.168.0.20;server8.8.8.8backup;}server{listen80default;location/{proxy_passhttp://myapp1;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;}}集群上的许多域配置之一(192.168.0.20)如下所示:server{listen8

c++ - OpenSSL SSL_read 失败(错误 :00000005:lib(0):func(0):DH lib)

我正在使用OpenSSL1.1.0f版来加密我的客户端和我无权访问的中继服务器之间的连接。有时,客户端的连接会因客户端的readLine故障而突然终止。错误代码如下:readLine:readStringreturned-1,ErrorMsg-error:00000005:lib(0):func(0):DHlib我确实搜索了这种错误代码的适当原因,每个人(示例this线程)都说在连接建立期间Diffie-Hellmankey交换似乎有问题。但是连接在几分钟内都很好(有时它甚至可能不会发生,并且可能在连接成功后2到3分钟后非常频繁地发生一次)直到它突然终止。这是我的日志中的更多错误SSL

java - accept() 方法和 tcp/ip 握手

我将javaServerSocket类用于服务器应用程序。accept()方法是否参与tcp/ip握手?正如我在tcp/ip转储和命令netstat中看到的那样,客户端在调用accept方法并返回Socket对象之前建立连接。是java问题,还是我不理解accept()语义? 最佳答案 通常在Unix中,如果您用listen()标记套接字,操作系统就会开始接受连接。当您调用accept()函数时,操作系统只是交出已经打开的连接。Listen采用一个参数,该参数允许您指定操作系统允许的“未接受”打开连接数(即队列的大小)。

.net - 如何在 .NET 中为 SSL 连接指定密码?

如何指定在SSL连接中使用的密码套件?我知道MentalisSeclib得到了这个功能但是他们不维护项目(并且在x64操作系统的库中存在问题)因为他们说.NETFramework2.0引入了这些功能,但是我找不到在.NETFramework3.5中执行此操作的方法.更具体地说,我想使用NULL密码连接HTTPS服务,我将使用以下命令对OpenSSL做同样的事情:openssls_client-connectwww.example.com:443-cipherNULL我如何在.NET中执行此操作?也欢迎商业或商业友好的许可库建议。 最佳答案

c# - 将 SSL 添加到 TcpListen 服务器?

我已经使用TcpListener制作了一个简单的服务器,它工作得很好,但现在我希望连接是安全的。连接的客户端将是Web服务器,那么证书是否受信任或仅适用于Web浏览器是否重要?我发现了一些不直接的答案!已更新当我共享此应用程序时,用户是否也必须制作证书,或者所有用户都可以使用同一个证书吗?使用相同的证书不会导致安全问题,或者您能否将证书绑定(bind)到应用程序以使其不可见?换句话说,什么是最佳实践? 最佳答案 使用SslStream类:Typically,theSslStreamclassisusedwiththeTcpClien

ruby - 如何在 Ruby 中建立启用 SSL 的 TCP/IP 连接

我需要与我的服务器建立TCP连接,该连接具有我需要访问的启用SSL的端口。我需要发送一个XML文件并从服务器获取响应。在启用SSL之前,我能够使用下面提到的代码从服务器获取数据。require'socket'myXML='test_xml'host='myhost.com'port=12482socket=TCPSocket.open(host,port)#Connecttoserversocket.send(myXML,0)response=socket.recvfrom(port)putsresponsesocket.close现在我有一个“certi.pfx”,我需要用它建立连接

c - 套接字编程 - listen() 和 accept() 有什么区别?

我一直在阅读thistutorial了解套接字编程。似乎listen()和accept()系统调用都做同样的事情,即阻塞并等待客户端连接到使用创建的套接字socket()系统调用。为什么为此需要两个单独的步骤?为什么不只使用一个系统调用?顺便说一句,我搜索了这个问题并找到了类似的问题,但没有一个答案令人满意。例如,其中一个说accept()创建套接字,这是没有意义的,因为我知道套接字是由socket()创建的。 最佳答案 listen()函数基本上在内部套接字结构中设置一个标志,将套接字标记为被动监听套接字,您可以在该套接字上调用a

sockets - 同时使用 accept() 和 select() ?

我有一个事件驱动的网络服务器程序。该程序接受来自其他主机上其他进程的连接。同一远程IP上的不同端口可能有许多短暂的连接。目前,我有一个while(1)调用accept()的循环然后生成一个线程来处理新连接。读取消息后关闭每个连接。在远程端,发送消息后关闭连接。我想通过缓存打开的套接字FD来消除建立和拆除连接的开销。在发件人方面,这很简单-我只是不关闭连接,并保持它们在身边。在接收端,有点难。我知道我可以存储accept()返回的FD在结构中并使用poll()监听所有此类套接字中的消息或select(),但我想同时通过accept()监听新连接和监听所有缓存的连接。如果我使用两个线程,一

ssl - 如何避免 libmproxy 中的 'tlsv1 alert unknown ca' 错误?

目前正在使用libmproxy,它又使用telnetlib,向HTTPS网页发出请求。但是,出现以下错误:Error:[('SSLroutines','SSL3_READ_BYTES','tlsv1alertunknownca')]我认为这与无法验证为页面使用的证书提供担保的CA的身份有关。我认为应该有一个我可以打开(或关闭)的设置来绕过验证——我对验证数字签名者的身份不感兴趣。我认为一种可能的、有点丑陋的解决方案是修补代码以捕获异常并忽略它,但我宁愿有一种更干净、更受支持的方法来做到这一点。避免/解决这个问题的好方法是什么?非常感谢! 最佳答案