GNU/Linux >> Linux の 問題 >  >> Linux

Debian 11 に Let’s Encrypt SSL を Apache でインストールする方法

Debian 11 に Let’s Encrypt SSL を Apache でインストールする方法。また、Apache で仮想ホストを構成し、HTTPS リダイレクトでセットアップを保護する方法も学びます。

このセットアップは Google クラウドでテストされているため、AWS、Azure、VPS、Debian 11 を実行する専用サーバーなど、すべてのクラウド ホスティング サービスで動作します。

前提条件

  • サーバーまたは sudo ユーザーへの root アクセス
  • Let’sEncrypt SSL をインストールするためのサーバー IP を指すドメイン

ステップ 1:セットアップの初期化

次のコマンドを使用して、利用可能な最新バージョンにパッケージを更新することから始めます。

sudo apt update
sudo apt upgrade

wget パッケージをインストールします。

sudo apt install wget

セットアップを更新したら、セットアップを開始できます。

ステップ 2:Apache をインストールする

次のコマンドを使用して Apache をインストールします。

sudo apt install apache2

apache2 がインストールされます および必要なすべての依存関係。

ステップ 3:ファイアウォールをセットアップする

HTTP のデフォルト Web ポートでのパブリック アクセスを許可するために、Apache で複雑でないファイアウォール (UFW) をセットアップできるようになりました。 と HTTPS

sudo ufw app list

リストされたすべてのアプリケーションが表示されます。

Output
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
  • アパッチ :このプロファイルはポート 80 を開きます (通常の暗号化されていない Web トラフィック)
  • Apache フル :このプロファイルは両方のポート 80 を開きます (通常の暗号化されていない Web トラフィック) およびポート 443 (TLS/SSL 暗号化トラフィック)
  • Apache セキュア :このプロファイルは、ポート 443 のみを開きます (TLS/SSL 暗号化トラフィック)
  • OpenSSH :このプロファイルはポート 22 を開きます SSH アクセス用

SSL を使用しない場合は、Apache プロファイルのみを有効にする必要があります。

次に、Apache Full を有効にします。

sudo uff allow OpenSSH
sudo ufw allow 'Apache Full'

このコマンドを使用すると、UFW のステータスを表示できます。

sudo ufw status

次のような出力が表示されます。

Output
Status: active
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)

ステップ:4 Apache のインストールを確認する

Apache がインストールされると、自動的に開始され、すでに稼働しています。

Apache のすべてのプロセスは systemctl で管理されます 指図。次のコマンドで Apache のステータスを確認してください。

sudo systemctl status apache2
Output
● apache2.service - The Apache HTTP Server
    Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
   Drop-In: /lib/systemd/system/apache2.service.d
            └─apache2-systemd.conf
    Active: active (running) since Tue 2022-02-02 10:29:51 UTC; 5min ago
  Main PID: 10617 (apache2)
     Tasks: 55 (limit: 667)
    CGroup: /system.slice/apache2.service
            ├─10617 /usr/sbin/apache2 -k start
            ├─10619 /usr/sbin/apache2 -k start
            └─10620 /usr/sbin/apache2 -k start
 Feb 02 10:29:51 apache systemd[1]: Starting The Apache HTTP Server…
 Feb 02 10:29:51 apache systemd[1]: Started The Apache HTTP Server.

これで、Apache がインストールされ、ファイアウォールが構成されました。

ステップ 5:Apache を構成する

デフォルトの Apache 構成を無効にします。

sudo a2dissite 000-default

Web サイト ディレクトリを作成します。

sudo mkdir -p /var/www/html/domainname/public

正しい権限を設定してください。

sudo chmod -R 755 /var/www/html/domainname
sudo chown -R www-data:www-data /var/www/html/domainname

新しい仮想ホスト構成を作成します。

sudo nano /etc/apache2/sites-available/domainname.conf

次の構成を新しいファイルに貼り付けます。

<VirtualHost *:80>
     ServerAdmin [email protected]
     ServerName domainname.com
     ServerAlias www.domainname.com

     DocumentRoot /var/www/html/domainname/public

     <Directory /var/www/html/domainname/public>
         Options Indexes FollowSymLinks
         AllowOverride All
         Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log 
     CustomLog ${APACHE_LOG_DIR}/access.log combined 
 </VirtualHost>

新しい構成を有効にします。

sudo a2ensite domainname.conf

ステップ 6:Let’s Encrypt SSL をインストールする

HTTPS は、サーバー (インスタンス) とクライアント (Web ブラウザー) 間の安全な通信のためのプロトコルです。無料の SSL 証明書を提供する Let’s Encrypt の導入により、HTTPS はすべての人に採用され、視聴者にも信頼をもたらします。

ここでは、Certbot をインストールして、Snap を使用して Let’sEncrypt SSL をインストールします。

sudo apt update
sudo apt install snapd -y
sudo snap install core
sudo snap refresh core

Certbot ツールをインストールします。

sudo snap install --classic certbot

Certbot をコマンドとして実行できるように構成します。

sudo ln -s /snap/bin/certbot /usr/bin/certbot

Let’s Encrypt for Debian 11 をインストールするための Certbot をインストールしました。

次のコマンドを実行して、証明書をインストールします。

sudo certbot --apache --agree-tos --redirect -m [email protected] -d domainname.com -d www.domainname.com

適切なオプションを選択し、Enter を押します

このコマンドは、無料の SSL をインストールし、HTTPS へのリダイレクトを構成し、Apache サーバーを再起動します。

ステップ 7:SSL 証明書の更新

Let’s Encrypt が提供する証明書は 90 日間のみ有効であるため、頻繁に更新する必要があります。それでは、次のコマンドを使用して更新機能をテストしましょう。

sudo certbot renew --dry-run

このコマンドは、証明書の有効期限をテストし、自動更新機能を構成します。

ステップ:8:セットアップをテストする

適切な手順を実行したら、Web ディレクトリに新しいテスト HTML ファイルを作成できます。

sudo nano /var/www/html/domainname/public/index.html

以下のコードをファイル内に貼り付けます。

<!DOCTYPE html>
<html>
    <body>
        <h1>Test page with HTTPS</h1>
   </body>
</html>

ファイルを保存します。

ブラウザでドメイン名を確認してください (domainname.com ).

ドメインが HTTPS にリダイレクトされ、HTML 出力が表示されることがわかります。

完了したトレーニング コースで Linux 管理のキャリアを強化し、夢の仕事に就きましょう。

結論

これで、Let’s Encrypt Free SSL を Apache で Debian 11 にインストールする方法を学びました。

御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。


Linux
  1. CentOS7にApacheでLet'sEncryptをインストールする方法

  2. Apacheを使用してUbuntu20.04にLet’sEncryptをインストールする方法

  3. Debian 11 に Let’s Encrypt SSL を Apache でインストールする方法

  1. Debian9にApacheをインストールする方法

  2. Debian10でLetsEncryptを使用してApacheを保護する

  3. ApacheでJoomlaをインストールし、Debian10でSSLを暗号化する方法

  1. DrupalをApacheでインストールし、Debian11でSSLを暗号化する方法

  2. LetsEncryptSSLを使用してDokuWikiをDebian11にインストールする方法

  3. Apacheを使用してWordPressをインストールし、Debian11でSSLを暗号化する方法