缺少 SSL 认证

缺少 SSL 认证

我正在尝试设置 SSL SVN。我得到了教程,但当我尝试运行以下命令时,apache2-ssl-certificate我收到command not found错误消息。我的问题是如何解决这个问题?

答案1

不幸的是,您找到的教程太旧了。要生成 SSL 证书,请运行以下命令:

mkdir -p /etc/apache2/ssl
openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem
ln -sf /etc/apache2/ssl/apache.pem /etc/apache2/ssl/`/usr/bin/openssl x509 -noout -hash < /etc/apache2/ssl/apache.pem`.0
chmod 600 /etc/apache2/ssl/apache.pem 

这将创建一个 365 天后过期的 SSL 证书。要调整有效期,只需更改参数-days 365
确保/etc/apache2/ports.conf包含以下内容:

<IfModule mod_ssl.c>
    Listen 443
</IfModule>

假设您仍启用 SSL ( sudo a2enmod ssl),则需要创建一个新的虚拟主机。例如,创建一个文件/etc/apache2/sites-available/svn,其中包含以下内容:

NameVirtualHost *:443
<virtualhost *:443>
        ...
        SSLEngine On
        SSLCertificateFile /etc/apache2/ssl/apache.pem
        ...
</virtualhost>

并使用 启用此站点sudo a2ensite svn。这样您就拥有一个可以监听 SSL 连接的站点。希望这对您有所帮助。

答案2

这是因为错误 #77675一个办法评论中提到了这一点。我自己没有尝试过,所以我不知道这是否正确。无论如何,解决方案应该是执行以下操作:

apt-get install apache2
a2enmod ssl
a2ensite default-ssl
make-ssl-cert generate-default-snakeoil --force-overwrite
/etc/init.d/apache2 restart

相关内容