樹莓派/Debian “無法定位軟件包 mod_ssl” 問題解決方案


樹莓派/Debian “無法定位軟件包 mod_ssl” 問題解決方案

一、前言

對於使用 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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM