当我重新启动 httpd 时,出现以下错误。我错过了什么?
[root@localhost ~]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: Syntax error on line 22 of /etc/httpd/conf.d/sites.conf:
Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration
Run Code Online (Sandbox Code Playgroud)
我已经使用安装了 mod_ssl yum install mod_ssl openssh
Package 1:mod_ssl-2.2.15-15.el6.centos.x86_64 already installed and latest version
Package openssh-5.3p1-70.el6_2.2.x86_64 already installed and latest version
Run Code Online (Sandbox Code Playgroud)
我的sites.conf 看起来像这样
<VirtualHost *:80>
# ServerName shop.itmanx.com
ServerAdmin webmaster@itmanx.com
DocumentRoot /var/www/html/magento
<Directory /var/www/html>
Options -Indexes
AllowOverride All
</Directory>
ErrorLog logs/shop-error.log
CustomLog logs/shop-access.log …
Run Code Online (Sandbox Code Playgroud) 我已经为我的构建服务器生成了一个自签名证书,我想在我的机器上全局信任该证书,因为我自己创建了密钥并且我厌倦了看到警告。
我在 Ubuntu 12.04 上。如何获取证书并在全球范围内信任它,以便浏览器(Google Chrome)、CLI 实用程序(wget、curl)和编程语言(Python、Java 等)信任与https://mysite.com的连接,而无需询问问题?
今天似乎每个人都在谈论POODLE 漏洞。每个人都建议使用以下配置指令在 Apache 中禁用 SSLv3:
SSLProtocol All -SSLv2 -SSLv3
Run Code Online (Sandbox Code Playgroud)
而不是默认
SSLProtocol All -SSLv2
Run Code Online (Sandbox Code Playgroud)
我已经这样做了,但并不高兴 – 在使用各种工具(这里是一个快速工具)反复测试之后,我发现 SSLv3 很高兴地被我的服务器接受了。
是的,我确实重新启动了 Apache。是的,我grep
对所有配置文件进行了递归,并且在任何地方都没有任何覆盖。不,我没有使用某些古老版本的 Apache:
[root@server ~]# apachectl -v
Server version: Apache/2.2.15 (Unix)
Server built: Jul 23 2014 14:17:29
Run Code Online (Sandbox Code Playgroud)
那么,什么给?如何在 Apache 中真正禁用 SSLv3?
我正在尝试验证/验证存储在此处的 rsa 密钥、ca-bundle 和证书是否正常。它们不是由网络服务器提供的。我如何验证它们?
我有一个终端实体/服务器证书,它有一个中间证书和根证书。当我cat
在最终实体证书上时,我只看到一个BEGIN
和END
标签。它是唯一的最终实体证书。
有什么办法可以查看中间证书和根证书内容。我只需要BEGIN
和END
标签的内容。
在 Windows 中,我可以从“认证路径”中看到完整的证书链。下面是 Stack Exchange 证书的示例。
从那里我可以执行查看证书并导出它们。我可以在 Windows 中为 root 和中级用户做到这一点。我正在 Linux 中寻找相同的方法。
所以我正在设置一个启用了 SSL 的 nginx 服务器,服务器定义类似于:
server {
listen :80;
listen [::]:80;
server_name example.org;
root /foo/bar;
ssl on;
ssl_certificate /path/to/public/certificate;
ssl_certificate_key /path/to/private/key;
...
}
Run Code Online (Sandbox Code Playgroud)
你明白了(请原谅任何错别字)。
无论如何,我想知道的是;如果我更新我的证书,有没有办法安装它们而不必重新启动 nginx?
例如,如果我要使用来自/path/to/public/certificate
和 的符号链接/path/to/private/key
,指向我当前的证书,nginx
如果我只是将它们更改为指向新的(更新的)证书,我是否还需要重新启动?有替代品吗?
我正在尝试编译一个程序,根据文档,该程序需要“OpenSSL 库”。我已经安装了 OpenSSL,但它仍然给我错误openssl/sha.h: No such file or directory
。是否有其他一些必须安装的库?
我想默默地,非交互地,创建一个 SSL 证书。即,没有得到任何数据的提示。
我创建证书的正常方式是:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 \
-keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
openssl genrsa -out server.key 2048
touch openssl.cnf
cat >> openssl.cnf <<EOF
[ req ]
prompt = no
distinguished_name = req_distinguished_name
[ req_distinguished_name ]
C = GB
ST = Test State
L = Test Locality
O = Org Name
OU = Org Unit Name
CN = Common Name
emailAddress = test@email.com
EOF
openssl req -x509 -config openssl.cnf -nodes -days 7300 \
-signkey server.key …
Run Code Online (Sandbox Code Playgroud) 我正在尝试通过以下方式卷曲 HTTPS 网站:
$ curl -v https://thepiratebay.se/
Run Code Online (Sandbox Code Playgroud)
但是它失败并出现错误:
* About to connect() to thepiratebay.se port 443 (#0)
* Trying 173.245.61.146...
* connected
* Connected to thepiratebay.se (173.245.61.146) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS alert, Server hello (2):
* error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
* Closing connection #0
curl: (35) error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Run Code Online (Sandbox Code Playgroud)
使用-k
/--insecure
或添加insecure
到 my~/.curlrc
没有任何区别。
如何使用curl
命令行忽略或强制证书?
使用时wget
似乎工作正常。也适用openssl
于以下测试:
$ …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的 apache2 网络服务器上设置 SSL,但它似乎根本不起作用。
我已经按照教程使用 openssl 创建证书文件并/etc/apache2/sites-available/default-ssl.conf
正确配置。
每次我尝试使用 https 打开我的网站时,由于安全问题,我的浏览器拒绝连接。它说我没有正确配置我的网站。
在我的/var/log/apache2/error.log
我收到警告,说我的服务器证书不包含与服务器名称匹配的 ID。
[Mon Apr 10 11:03:24.041813 2017] [mpm_prefork:notice] [pid 1222] AH00169: caught SIGTERM, shutting down
[Mon Apr 10 11:03:30.566578 2017] [ssl:warn] [pid 661] AH01909: 127.0.0.1:443:0 server certificate does NOT include an ID which matches the server name
[Mon Apr 10 11:03:31.579088 2017] [ssl:warn] [pid 1194] AH01909: 127.0.0.1:443:0 server certificate does NOT include an ID which matches the server name
[Mon Apr 10 11:03:31.592958 2017] [mpm_prefork:notice] [pid …
Run Code Online (Sandbox Code Playgroud) ssl ×10
openssl ×4
apache-httpd ×3
certificates ×2
command-line ×2
curl ×1
debian ×1
https ×1
make ×1
nginx ×1
osx ×1
scripting ×1
webserver ×1