当前位置首页 > Debian知识

树莓派/Debian“无法定位软件包mod_ssl”问题解决方案

阅读次数:299 次  来源:admin  发布时间:

一、前言

对于使用 OpenSSL 来加载第三方 SSL 证书来实现 HTTPS 安全连接实现的方法来说,CentOS、Ubuntu 等与 Debian 的实现方法并不一样。

对 CentOS、Ubuntu 等 Linux 发行版来说,使用 OpenSSL 来加载第三方 SSL 证书来实现 HTTPS 安全连接,可以参考 ownCloud 社区的文档:

Configure Apache with Let’s Encrypt

问题描述:

yogile@debyogile:~$ SSLOpenSSLConfCmd DHParameters /etc/apache2/dh4096.pem
sudo: SSLOpenSSLConfCmd:找不到命令

yogile@debyogile:~$ sudo apt install mod_ssl
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 无法定位软件包 mod_ssl

二、问题回答

如前言所述:对于使用 OpenSSL 来加载第三方 SSL 证书来实现 HTTPS 安全连接实现的方法来说,CentOS、Ubuntu 等与 Debian 的实现方法并不一样,也在于对于 Apache 模块的管理两方不一样。

在 CentOS、Ubuntu 等之中,SSLOpenSSLConfCmd 命令依赖于 Apache 的模块 mod_ssl 。

但是对于 Apache 模块,管理其模块是通过 yum 实现的,而不是 Debian 的 apt 。

三、解决方案

通过以下命令加载 ssl 模块:

sudo a2enmod ssl

再通过重启 Apache 启用 ssl 模块:

sudo /etc/init.d/apache2 restart
或
sudo service apache2 restart

Debian 下 Apache 其实已经准备好了类似 mod_ssl 的模块:ssl 。

在 /etc/apache2/mods-available/ 文件夹下,有着非常多的 Apache 模块,只是没有加载启用。而已经启用的模块软链接到 /etc/apache2/mods-enabled/ 文件夹下。

这时,输入 ls /etc/apache2/mods-enabled/ 就可以看到 ssl 模块被加载:

yogile@debyogile~$ ls /etc/apache2/mods-enabled
access_compat.load  autoindex.conf  mime.load         setenvif.conf
alias.conf          autoindex.load  mpm_prefork.conf  setenvif.load
alias.load          deflate.conf    mpm_prefork.load  socache_shmcb.load
auth_basic.load     deflate.load    negotiation.conf  ssl.conf
authn_core.load     dir.conf        negotiation.load  ssl.load
authn_file.load     dir.load        php7.3.conf       status.conf
authz_core.load     env.load        php7.3.load       status.load
authz_host.load     filter.load     reqtimeout.conf
authz_user.load     mime.conf       reqtimeout.load
上一篇:VirtualBox下安装Fedora1864-bit全程实录
下一篇:Ubuntu添加新分区