Raspberry Pi を Web サーバーとして設定する方法

Raspberry Pi を Web サーバーとして設定する方法

ベアボーン コンピューターの Raspberry Pi シリーズは畏敬の念を起こさせる小さな獣であり、自宅で独自のサーバーを作成してインターネットに Web ページを提供したり、独自のサイトやサービスのセットを自分で使用するためにホストしたりする場合には、ほぼ完璧です。





外付けUSBドライブが表示されない

ただし、シングルボード コンピューターをどこから始めればよいかわからない場合は、以下をお読みください。Raspberry Pi をあらゆる目的に対応できる万能サーバーとして準備する方法を学習します。





今日のメイク動画

Raspberry Pi をサーバーとしてセットアップするために必要なもの:

このプロジェクトを完了するには、次のアイテムが必要です。





  • Raspberry Pi — できればモデル 4B
  • SD カードまたは SSD
  • イーサネット ケーブル
  • 静的 IP アドレス
  • ドメイン名 — まだお持ちでない場合は、こちら ドメイン名の選択に関するいくつかの役立つヒント .
  • 別のPC

サーバーに Raspberry Pi OS をインストールする方法

Raspberry Pi には、Ubuntu、Manjaro、Apertis、RetroPi など、多くのディストリビューションが用意されています。 Pi をセットアップしてコンテンツをインターネットに配信する場合は、Debian Bullseye のポートである Raspberry Pi OS Lite (64 ビット) をお勧めしますが、デスクトップや不要な軽薄さはありません。モニターを使用しないため、デスクトップは必要ありません。

まず、SD カードをデスクトップ PC またはラップトップに挿入します。USB SSD を使用している場合は、ここで挿入します。今、ダウンロード Raspberry Pi イメージャー ツール インストールしてから、デスクトップまたはコマンドラインから開きます。



Imager は、オペレーティング システムとストレージを選択するように求めます。クリック OS を選択 、 それから Raspberry Pi OS (その他) 、 それから ラズベリーパイ OS ライト (64 ビット) .

をクリックすると ストレージを選択 をクリックすると、PC に接続されているすべてのストレージ デバイスのリストが表示されます。 OS をインストールするドライブを選択すると、イメージャのメイン画面に戻ります。





  OS とドライブが選択され、右下に歯車が表示されている rpi イメージャーのメイン画面

画面の右下隅にある歯車をクリックして、設定メニューを開きます。 SSH 経由で Pi に接続するために必要なオプションを設定します。

チェックボックスをオンにします SSH を有効にする ユーザー名とパスワードを設定する 、 と ロケール設定の設定 .好みのユーザー名とパスワードを入力し、ロケールをタイム ゾーンとキーボード レイアウトに設定します (ただし、Pi に直接接続されたキーボードは使用しません)。





  SSH が有効で、ユーザー名とパスワードが設定されている rpi イメージャー設定画面

打つ 保存 その後 書く .選択したストレージ メディアに Raspberry Pi OS が書き込まれます。これには時間がかかる場合があります。

Raspberry Pi の電源を入れ、ローカル ネットワークで見つけます

SD カードを Raspberry Pi の SD カード スロットに挿入するか、USB ストレージを使用している場合は、利用可能な USB ポートのいずれかに挿入します。 Raspberry Pi を電源に接続し、 イーサネット ケーブル 、ルーターに。

Raspberry Pi に接続するには、その IP アドレスを知る必要があります。同じローカル ネットワーク上にあるマシンでブラウザーを開き、ルーターの管理ページに移動します。これは通常、ブラウザのアドレス バーに 192.168.1.1 と入力することで実行できます。これが機能しない場合は、ルーターの取扱説明書で詳細を確認してください。

ルーターの管理ページには、Wi-Fi 経由で接続されているデバイスと、イーサネット ケーブルで接続されているデバイスが別々に表示されるはずです。 Raspberry Pi の IP アドレスが近くに表示されます。そうでない場合は、IP アドレス ラベルにカーソルを合わせると、アドレスを示すツールチップが表示されます (メモしてください)。

  コンピュータ名のリストを表示するルーター管理ページ。ツールチップには単一の IP アドレスが表示されます

Wi-Fi 接続ではなく有線接続をルーターに使用する利点の 1 つは、ローカル IP アドレスが変更されないことです。 Raspberry Pi をシャットダウンし、ルーターを再起動してから、1 週間休暇を取ることができます。戻ったとき、それはまだ同じIPアドレスを持っています。

SSH 経由で Raspberry Pi に接続する

Raspberry Pi のローカル IP アドレスがわかったので、次の方法で接続できます。 セキュア シェル (SSH) Windows と macOS で PuTTY を使用するか、Linux でターミナルを使用します。

ssh user@local.pi.ip.address

最初の接続では、「ホストの信頼性を確立できません」という警告が表示され、接続を続行するかどうか尋ねられます。単語を入力してください はい そしてヒットリターン。

  という端末警告

これで Raspberry Pi にログインし、システムを完全に制御できるようになりました。

Raspberry Pi をインターネットに公開するためのポート フォワーディング

Raspberry Pi を Web サーバーにしたい場合は、インターネットからアクセスできるようにする必要があります。

ルーターの管理ページを開き、次のいずれかのセクションを見つけます ポート転送 ポート マッピング 、 また ポート管理 、次に 2 つの新しいエントリを作成します。

最初は HTTP (安全でない) トラフィック。ローカル ポートとパブリック ポートの両方を 80 、ローカル IP アドレスを Raspberry Pi の IP アドレスに置き換えます。

2番目は HTTPS (安全な) トラフィック。ローカル ポートとパブリック ポートの両方を 443 、ローカル IP アドレスを Raspberry Pi の IP アドレスに維持します。

  HTTP リクエストが 80 に転送され、HTTPS リクエストが 443 に転送されていることを示すルーター管理ページのスクリーンショット

Raspberry Pi に不可欠なサーバー ソフトウェア

Raspberry Pi は、展開したいサーバー関連のソフトウェアを処理できる必要があります。そのためには、最初にいくつかの重要なソフトウェアをインストールする必要があります。

将来すべてがスムーズに実行されるようにするためにインストールする必要があるソフトウェア ツールには、次のものがあります。

ベッドから出る目覚まし時計
  • アパッチ: Web サーバーとリバース プロキシ。
  • マリアDB: MySQL データベース。
  • PHP : Web 向けのスクリプト言語。
  • ドッカー : オープンソースのコンテナ化プラットフォーム。
  • Docker-compose : Docker コンテナーの管理を簡素化するツール。
  • 証明書ボット: からの SSL キーと証明書の取得とインストールを処理します。 暗号化しましょう .

まず、パッケージを更新してアップグレードします

sudo apt update 
sudo apt upgrade

次のように入力して、Apache をインストールします。

sudo apt install apache2

次に、次のコマンドで Apache を起動して有効にします。

sudo systemctl start apache2 
sudo systemctl enable apache2

ブラウザでパブリック IP アドレスにアクセスすると、デフォルトの Apache インストール ページが表示されます。

  ブラウザに表示されるデフォルトのApacheページ

これは、ポート 80 のルーターへのリクエストが Raspberry Pi に正常に転送され、Apache が意図したとおりに実行されていることを意味します。

以下のコード行を入力して、PHP をインストールします。

sudo apt install php

次に、以下のコマンド ラインを使用して MariaDB をインストールします。

sudo apt install mariadb-server

次に、次のように入力します。

sudo mysql_secure_installation

root パスワードの入力を求められたら Return キーを押して、 いいえ 「unix_socket認証に切り替える」かどうか尋ねられたとき。

もう一度、選択 いいえ 「ルートパスワードを変更する」ように求められたら、 はい 「匿名ユーザーを削除する」。

また、選択 はい 「リモートでのルートログインを禁止する」および はい 「テストデータベースを削除してそれにアクセスする」。

アップルのiphoneがアップルのロゴに貼り付いています

ここで、プロンプトが表示されたら特権テーブルをリロードすると、安全なインストールが完了し、成功メッセージが表示されます。

  mariadb 成功メッセージの読み取り、

次のコマンドで MariaDB にアクセスできます。

sudo mariadb

次に、次のように入力して Docker をインストールします。

sudo apt install docker.io

docker を起動して有効にします。

sudo systemctl start docker 
sudo systemctl enable docker

software-properties-common をインストールし、更新してから、Docker-compose のリポジトリを追加します

sudo apt install software-properties-common 
sudo apt update
sudo add-apt-repository ppa:certbot/certbot

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

sudo apt-get install python3-certbot-apache

Raspberry Pi がサーバーとして機能する準備が整いました。

おめでとうございます。デプロイ方法に関係なく、Raspberry Pi がほぼすべての種類のコンテンツを安全に表示できるようにするための前提条件となるソフトウェアがすべてインストールされました。さらに、インターネットから簡単にアクセスできます。

シンプルな静的ページから WordPress サイト、ストリーミング メディア サーバー、オンライン オフィス スイートまで、あらゆるものをホストできるといううらやましい立場にあります。そのため、Raspberry Pi からどのサイトやサービスを実行したいかを考えてみてください。