我试图在Debian Wheezy中运行stunnel-4.53-1.1。 我的configuration(/etc/stunnel/stunnel.conf)的重要部分如下所示: [https] cert = /etc/ssl/certs/mydomain.pem key = /etc/ssl/private/mydomain.key accept = 443 connect = localhost:80 pty = no [host1] connect = localhost:80 sni = https:host1.mydomain.com cert = /etc/ssl/certs/host1.mydomain.pem key = /etc/ssl/private/host1.mydomain.key [host2] connect = localhost:81 sni = https:host2.mydomain.com cert = /etc/ssl/certs/host2.mydomain.pem key = /etc/ssl/private/host2.mydomain.key 当我访问host1(使用最近的firefox)时,这个configuration工作正常。 但是,如果我访问host2,我得到了host1提供的证书,导致在Firefox中发出警告。 如果我接受错误的证书stunnel反正连接我localhost:80而不是本地主机:81。 我用两个虚拟apache主机来检查一般的SSL / SNI设置。 这里一切都按预期工作。 任何人都可以解释stunnel的这种行为,甚至可能知道如何解决它? 提前谢谢了
我在Stupnel上运行了一个Raspberry Pi,它是apache2服务器的TLS包装器。 我已经configuration它使用TLS-PSK (正确的,我认为),但是当我尝试完成TLS握手时,日志显示如下: 2016.04.11 21:05:53 LOG7[0]: Service [PSK_server] started 2016.04.11 21:05:53 LOG5[0]: Service [PSK_server] accepted connection from 192.168.42.10:4097 2016.04.11 21:05:53 LOG7[0]: SSL state (accept): before/accept initialization 2016.04.11 21:05:53 LOG7[0]: SNI: no virtual services defined 2016.04.11 21:05:53 LOG7[0]: SSL alert (write): fatal: protocol version 2016.04.11 21:05:53 LOG3[0]: SSL_accept: 1408F10B: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number 2016.04.11 21:05:53 […]
我试图在同一个IP上使用两个域的stunnel。 我的conf是这样的: ;key = /etc/ssl/private/namecheap/server.key # See this link http://www.sysadminworld.com/2011/how-do-i-use-an-intermediate-certificate-with-stunnel/ # The intermediatev.pem is comodo-rsa-domain-validation-sha-2-w-root.ca-bundle # Restart /etc/init.d/stunnel4 restart cert = /etc/ssl/private/namecheap/stunnel.pem ;CApath = /etc/ssl/private/namecheap/www_soinfit_com.ca-bundle socket = l:TCP_NODELAY=1 socket = r:TCP_NODELAY=1 debug = 7 output = /var/log/stunnel4/stunnel.log ; Protocol version (all, SSLv2, SSLv3, TLSv1) sslVersion = all ; no, we don't want SSLv2 ;options = […]
我有信心为Redis提供SSL。 我有以下configuration: [redis] CAfile= /etc/stunnel/ca.crt accept = 636 cert = /etc/stunnel/server1.crt connect = localhost:6379 key = /etc/stunnel/server1.key verify = 2 我用openssl生成所有的密钥和证书: # generate ca openssl req -new -x509 \ -keyout "/etc/stunnel/ca.crt" \ -out "/etc/stunnel/ca.key" \ -days 365 \ -passout "pass:123456" \ -subj "$subj" 然后我通过openssl genrsa -des3生成密钥然后我通过openssl req -new -key生成csr。 然后我通过openssl x509 -req生成签名证书CA和openssl x509 -req指向ca.crt和ca.key然后我通过openssl rsa解密密钥 […]
很多关于stunnel的教程只显示单一的转发。 它通常只限于通过两端的端口来监听和收听,或者可以通过腻子的方式处理本地和远程转发,我最喜欢的方式是什么? 例如,在putty或者ssh中,你可以做类似于ssh -L xxxx:localhost:yyyyy -L aaa:localhost:bbbbb -R yyyyy:somehost:zzzz [email protected]。 stunnel是通过单个连接来完成的,还是受到SSL的限制?谁需要另外的连接?
我正在寻找将SSL添加到一些网站。 我目前的设置是varnish – > nginx – > python wsgi服务器。 清漆坐在前面,caching静态和dynamic内容。 nginx服务器从磁盘提供静态媒体,并将其他请求代理回python应用程序。 它像一个魅力。 我已经尝试了两种不同的方法来添加SSL,并且都有它们的缺点: 请求在443> stunnel> varnishcaching> nginx> python wsgi应用程序 请求在443> nginx / ssl> varnish cache> python wsgi app 第一种方法有继续caching静态内容的好处。 主要缺点是我不知道如何将“非https”stream量redirect到安全版本,因为一旦stream量到达nginx,它就不encryption。 第二种方法也不错,唯一的缺点是清漆不再处于静态内容的前面,因此不能caching。 你们有什么感想? 有任何想法吗?
我正在使用Stunnel,Varnish和nginx与nodejs应用程序,并且在将非https页面( http://manager.domain.com )redirect到它们各自的https页面( https://manager.domain。 com )。 我只是卡在一个redirect循环,因为所有的stream量首先通过清漆。 这个设置的主要原因是使用ssl的套接字。 Stunnel侦听端口443.它终止SSL连接,并将stream量传递给端口80上的Varnish。Varnish侦听端口80,并根据需要拆分81上的Nginx和3000上的Node.js之间的其他stream量.Nginx侦听端口81.它服务静态文件和其他非Node.js页面。 这里是nginx conf文件 upstream nodejs { server 127.0.0.1:3000; server 127.0.0.1:3000; } server { listen 81; server_name www.domain.net; rewrite ^(.*) http://domain.com$1 permanent; } server { listen 81; server_name manager.domain.com; rewrite ^(.*) https://manager.domain.com$1 permanent; } server { listen 81; server_name domain.com manager.domain.com help.domain.com; access_log /srv/www/domain.com/logs/access.log timed; error_log /srv/www/domain.com/logs/error.log info; […]
我试图设置stunnel来提供对nntp服务器的安全访问。 按照这里的说明,我创build了一个自签名密钥和证书。 我跑的命令是: openssl genrsa -des3 -out server.key 1024 openssl req -new -key server.key -out server.csr openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt 我的stunnelconfiguration有这些选项: ; A copy of some devices and system files is needed within the chroot jail ; Chroot conflicts with configuration file reload and many other features chroot […]
我有stunnel监听端口80和作为一个客户端连接到端口443监听Apache。configuration如下。 我发现如果我尝试连接到本地主机:80连接是好的,但如果我连接到127.0.0.1:80 当我检查Apache的日志时,它表示stunnel同时使用localhost作为SNI,但是HTTP请求列出了localhost,一个是127.0.0.1,另一个是127.0.0.1。 是否有可能告诉stunnel使用HTTP请求中的任何内容,或者以某种方式configuration两个客户端,每个客户端具有不同的SNI值? stunnel.conf: debug = 7 options = NO_SSLv2 [xmlrpc-httpd] client = yes accept = 80 connect = 443 Apache error.log: [error] Hostname localhost provided via SNI and hostname 127.0.0.1 provided via HTTP are different Apache access.log: "GET / HTTP/1.1" 200 2138 "-" "Wget/1.13.4 (linux-gnu)" "GET / HTTP/1.1" 400 743 "-" "Wget/1.13.4 (linux-gnu)" […]
我有一些在AWS上运行的前端服务器(运行英镑SSL端接和清漆进行caching)。 我的后端位于远程位置(不在AWS上)。 我正在寻找安全地将AWS与后端连接的最佳/最快的方式。 我认为最好的select是设置OpenVPN(但是这也需要相当多的工作/configuration)。 对于这种特殊的情况,通道是否足够了? 还是有人有其他build议?