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 にインストールする方法を学びました。
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。