我正在尝试设置 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 连接的站点。希望这对您有所帮助。