Articles of ssl

让我们encryptionArch Linux上的Apache 2.4.23产生“无法连接”的错误

我有一个完全更新的运行Apache 2.4.23的Arch Linux服务器。 在过去,我已经成功地使用StartSSL在我的Apache Web服务器上启用HTTPS。 但是现在我想切换到Let's Encrypt。 使用certbot standalone,我已经产生了这些文件: /etc/letsencrypt/live/[my domain]/cert.pem /etc/letsencrypt/live/[my domain]/chain.pem /etc/letsencrypt/live/[my domain]/fullchain.pem /etc/letsencrypt/live/[my domain]/privkey.pem 这里是我的Apache SSL指令: SSLEngine on SSLCertificateKeyFile /etc/letsencrypt/live/[my domain]/privkey.pem SSLCertificateFile /etc/letsencrypt/live/[my domain]/cert.pem SSLCertificateChainFile /etc/letsencrypt/live/[my domain]/chain.pem # HSTS (mod_headers is required) (15768000 seconds = 6 months) Header always set Strict-Transport-Security "max-age=15768000" SSLProtocol +TLSv1.2 我仔细检查了[我的域名]是否正确,并重新启动Apache没有产生任何错误,但试图到达我的服务器,现在我的networking浏览器给我“无法连接”错误。 我错过了什么吗? 谢谢!

通过SSL使用Apache时,POST请求随机丢弃

我遇到的问题与这个问题差不多 。 不过,我使用的是Apache 2.4.6的CentOS 7。 我的网站是在WordPress的。 有时当我或其他用户提交表单时,浏览器会说服务器意外地断开了连接。 我在Google上已经找不到这个了。 在浏览器端,我听说删除cookie和其他网站数据有帮助,但我想知道如何防止这个问题的其他用户。 这也在SSL上。 这是我的SSLconfiguration: <VirtualHost _default_:443> DocumentRoot "/var/www/html" ServerName cocreationcoaching.org:443 ErrorLog logs/ssl_error_log TransferLog logs/ssl_access_log LogLevel warn SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLHonorCipherOrder on SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH Header always set Strict-Transport-Security "max-age=63072000; preload" Header always set X-Frame-Options DENY Header always set X-Content-Type-Options nosniff SSLCompression off SSLUseStapling on SSLCertificateFile /root/cocreationcoaching.org.crt […]

configurationSSL后无法访问Nginx Web服务器

我有一个开发版本的Django网站,域名为“mysite.com”,我曾经通过URL“ http://web01.mysite.com ”访问我的网站。 我刚刚安装了通配符数字证书,现在我无法访问该网站。 如果我使用“ https://web01.mysite.com ”或“ http://web01.mysite.com ”,我会得到一个快速的“ERR_CONNECTION_REFUSED”消息。 我已经阅读了Nginx的SSL文档,在Nginx上设置了许多关于SSL的博客文章,并且研究了这个错误,但我无法弄清楚什么是错的。 我的服务器是Debian 8.7。 我正在运行Nginx 1.6.2,“–with-http_ssl_module”是configuration参数之一。 我也使用默认的nginx.conf文件。 nginx进程在默认帐户“www-data”下运行。 我的证书和私钥文件位于以下目录中: drwr-xr-x root root /srv/ssl/mysite.com/ 这里是我的捆绑证书和私钥文件驻留在上述目录中: -r–r—– root www-data ssl-bundle.crt -r–r—– root www-data mysite.com.key 当我configuration通配符证书时,我指定“* .mysite.com”作为通用名称。 这是我的/etc/nginx/sites-enabled/mysite.conf文件: server_tokens off; upstream gunicorn { server 127.0.0.1:8000 fail_timeout=0; } server { #listen 80; listen 443 ssl; server_name web01.mysite.com; ssl_certificate /srv/ssl/mysite.com/ssl-bundle.crt; ssl_certificate_key /srv/ssl/mysite.com/mysite.com.key; […]

随机HTTPS失败,要求服务器重新启动 – 证书问题? RRAS /防火墙问题?

我想知道是否可以从我们网站上的HTTPS页面看到一些令人难以置信的奇怪和令人沮丧的行为, 我们的服务器是Windows Server 2003,在完全随机的时间,HTTPS将停止在我们的网站上工作。 解决这个问题的唯一方法是重启服务器。 没有其他影响(包括HTTP页面 – 这些仍然正常工作)。 可能一天发生5次,然后可以连续两天,但我估计一周平均15次。 我有一个第三方网站监控服务打到我们的HTTPS页面,并通知我是否closures。 我经常在凌晨3点,凌晨4点醒来…重新启动服务器,拉着我的头发试图find解决scheme。 错误/事件日志中没有任何内容 当发生这种情况时,我不能通过外部IP将RDC导入到它,但是如果我将RDC导入域中的另一台服务器,则可以使用本地IP将RDC导入问题服务器。 所以我想在技术上,当这种情况发生的时候,它会杀死我们的HTTPS页面,并使用外部IP来实现RDC的function 发生这种情况时,我已经通过本地IP进入RDC,并完成了位于此处的所有步骤( https://www.iis.net/learn/troubleshoot/security-issues/troubleshooting-ssl-related-issues-server-证书 ),没有什么不寻常的 我也试图在IIS中重新启动站点,回收应用程序池,…除了完全重新启动服务器之外,没有任何工作。 我注意到的一个奇怪的事情是,如果我RDC到域中的另一台服务器,并通过IP在浏览器中访问该站点,并使用HTTPS,它可以工作(即https://10.176.1.1 )。 我得到了典型的浏览器警告,说证书不符合该网站,但如果我点击该选项继续,它然后工作。 当问题发生时: HTTPS访问该网站不能通过域名和外部IP工作 HTTPS访问该网站是否可以通过本地IP工作 所有对该网站的HTTP访问都能正常工作 RDC通过外部IP进入服务器不起作用 RDC通过内部IP(从域上的另一台服务器)进入服务器是否正常工作 服务器重新启动后,上面列出的所有东西都可以使 有谁知道这可能是什么? 或者我的方法来确定问题是什么? 我们的HTTPS证书来自GD,我正在考虑的一个select是从另一个提供商获得新的证书,看看是否有所作为。 但是,这似乎是在黑暗中的全面镜头。 其他说明…我们正在努力淘汰这台服务器,并把所有的东西都搬到我们最新的东西上,但是我们被一些运行在它上面的软件铐住了,我们正在升级

在Apache上使用SSL之后意外的内存使用情况

我们最近将我们的网站转换为https 。 证书安装和testing之后,我们在.htaccess中创build了301redirect。 事情进展良好,几乎没有明显的性能影响。 第三天或第四天,我们遇到了OOM问题。 在接下来的几天里,我们会看到相同的模式重复。 在上午9点15分左右(当我们的服务器开始看到增加的负载),我们的内存使用率会上升,并经常导致服务器终止memcached或mysql。 这很难理解,因为我们今天晚些时候会看到更多的使用情况(每次谷歌分析),而且根本没有任何问题。 Server Version: Apache/2.4.25 (Unix) OpenSSL/1.0.1e-fips mod_bwlimited/1.4 PHP/5.5.38 Server MPM: prefork Start servers: 10 Min spare servers: 5 server limit: 256 max request workers: 256 max connections per child: 2500* keep alive: on keep alive timeout: 1 我降低了最大连接数,因为我们注意到在问题期间,每个孩子的内存使用量似乎大大增加了。 每个孩子的每个RES通常为25000k。 在压力期间,它超过50000K。 所以我有一个想法,我想增加新的孩subprocess产生的频率。 不清楚这是否有所作为。 我们已经检查了所有的cron工作,以确保在压力期间没有特别的计划。 添加ssl是否会为apache创build更多的mem用法? 为什么只在这个特定的时间 – 甚至不在我们最繁忙的时间附近(尽pipe可能是使用量增长最多的时间)。 更新。 […]

有没有一种特定的方式自动更新让encryption证书?

我正在尝试以下内容: [~/letsencrypt]# ./certbot-auto renew No renewals were attempted. [~/letsencrypt]# ./certbot-auto renew –force-renewal No renewals were attempted. 但是,我没有任何一个成功。 服务器正在运行Apache。

net :: ERR_CONTENT_LENGTH_MISMATCH在Nginx和SSL上

我遇到了一个我无法解决的服务器问题。 我一直在Chrome浏览器中获取net :: ERR_CONTENT_LENGTH_MISMATCH或css / js脚本。 Nginx不是代理,它只是自己提供文件。 错误不会每次都出现,而且在我刷新页面后,它就会消失。 它出现在计算机与服务器的快速互联网连接(testing多个networking)。 它也出现在Firefox中,但有一个不同的错误信息。 Iv'e试图禁用服务器上的gzip,禁用文件metdatacaching,没有任何工作。 过了一段时间,我发现这个错误只出现在https上,而不是http。 所以我试图改变SSL密码,将SSL证书从Letsencrypt更改为Comodore,没有任何工作。 我已经更新了nginx,仍然是同样的问题。 user nginx; worker_processes 12; error_log /var/log/nginx/error.log crit; pid /var/run/nginx.pid; events { worker_connections 20000; #use epoll; multi_accept on; } http { include /etc/nginx/mime.types; default_type application/octet-stream; #open_file_cache max=200000 inactive=20s; #open_file_cache_valid 30s; #open_file_cache_min_uses 2; #open_file_cache_errors off; open_file_cache off; log_format main '$remote_addr – $remote_user [$time_local] […]

IIS 7.5 – 如果客户端连接到TLS版本低于1.2,可能会显示友好的错误?

我想检测用户是否使用TLS 1.0或1.1连接到我们的IIS 7.5服务器,然后将其redirect到友好的错误消息。 这可能吗? 如果没有,是否有可能在应用程序级(.Net MVC)中执行?

为什么openssl只能使用内部IP?

我想debugging一个SSL连接,所以我跟着这个问题的答案,并想运行第一个testing: # openssl s_client -connect SERVER_IP:PORT -state -debug 并得到以下输出: socket: Connection refused connect:errno=111 我查了一下,发现它与SSL无关,这意味着服务器没有运行,或者端口被防火墙阻塞。 我login到服务器,并检查,实际上它正在运行,并且端口是开放的监听所有的IP地址: # netstat -plan | grep PORT tcp 0 0 0.0.0.0:PORT 0.0.0.0:* LISTEN PID/java 下面是有趣的部分:当我使用我的服务器的内部IP来运行上面的openssl命令时,我得到了预期的输出。 无论我尝试从客户端还是从服务器本身连接到服务器,行为都是相同的。 我添加了端口到iptables。 以下是他们现在的样子: # iptables -L -v | grep PORT 40 4252 ACCEPT tcp — any any anywhere anywhere tcp dpt:PORT 0 0 ACCEPT tcp — […]

通过DNS代理强制HTTPS /如何使用HTTPS“智能DNS”?

我想通过在VPS上运行的代理强制HTTP(S)stream量通过我家networking中的某些网站。 我在VPS上安装了tinyproxy ,在8080端口上运行。 在我的电脑上,我正在运行 sudo ssh -i /home/user/.ssh/id_rsa -nNT -L 80:localhost:8080 -L 443:localhost:8080 remoteuser@vps 在本地访问代理。 当我configurationlocalhost:80作为代理在Firefox的设置一切工作正常(HTTP和HTTPS)。 但是因为我不希望所有的stream量通过这个代理,所以我把它添加到了我的电脑的/etc/hosts : 127.0.0.1 server.example server.example是为HTTP和HTTPSconfiguration的Web服务器的名称。 访问http://server.example工作,而在Firefox中打开https://server.example失败,错误 SSL_ERROR_RX_RECORD_TOO_LONG 还通过HTTPS curl页面失败: curl: (35) error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol 据我所知,这个问题是由tinyproxy响应HTTPS请求与普通的HTTP引起的。 首先,理论上可以实现我想要的吗? 那些所谓的“智能DNS”服务似乎正是这样做的。 这是我的设置造成的问题还是tinyproxy而不是不能做到这一点? 是否有一个不同的代理服务器是有能力的? 编辑:目前我正在我的PC上运行SSH隧道和DNS修改也是本地,但我想稍后部署在我的路由器,以便从我的networking的任何设备的stream量通过此代理。 编辑2:正如@SteffenUllrich在评论中写道,当HTTPS通过HTTP代理路由时,客户端在握手发生之前首先发送未encryption的CONNECT请求。 看到这里(SSH隧道到VPS正在运行在10.0.5.4 ): 这是必要的,否则代理将无法确定请求应该转发到哪个服务器。 但是,这些“智能DNS”代理服务器究竟如何工作呢? (一般信息见这里 ) 因为他们不需要CONNECT请求,他们似乎没有工作。 但是他们怎么能确定请求应该被转发的服务器呢? 这是使用这种“智能DNS”代理(IP为37.xxx)的HTTPS连接的转储。 (DNS被操纵指向该代理): 那么,这是如何工作的? 此外,有没有办法在我的VPS上实现(也许不是用Tinyproxy,而是用其他软件)?