松実のStudy Knowledge

松実のStudy Knowledge

背景

知り合いにホームページの代理作成をお願いされました。普段はデータ基盤や分析などが本業なので完全に畑違いではあったのですが、IT技術者を名乗る手前引き受けてしまったのが始まりです。
(ITをひとまとめにするのはマジやめてくれ...

目的

  • ローカルネットワーク内でWebのデモ環境を整える

※ 本手順はローカル学習目的です。本番公開をする場合は追加のセキュリティ対策(鍵認証、ユーザ制限、SSLなど)を必ず行ってください。

手順

Raspberry Pi 4に64bit Raspberry Pi OS(Raspberry Pi Imagerを使用)をインストールし、 ローカルネットワーク内でApacheによる静的なサイトを公開するまでの最小構成をまとめました。
基本はターミナル操作(SSH経由)で完結します。

1. ラズベリーパイに64bit Raspberry Pi OSを入れる

Raspberry Pi Imagerを使ってmicroSDにOSを書き込みます。64bitイメージ(Raspberry Pi OS (64-bit))を選択してください。

こちらで解説しています。
ラズベリーパイ(Raspberry Pi:ラズパイ)を初期起動するには

2. ユーザーの作成

もし必要であれば管理者権限で新しいユーザーを作成します。

sudo adduser yourusersudo usermod -aG sudo youruser

初回起動時に作成したユーザーで対応してもOKです

3. SSHの有効化

raspi-config で有効化、またはmicroSDのbootパーティションに空の ssh ファイルを作成します。

sudo raspi-config

※以降は別のPCからSSHで接続し、作業を行ってもOKです。もし行う場合は

①ローカルIPの把握

hostname -I

→192.168.x.xがローカルIPです。

②別のPCのターミナルでSSHを実行

ssh youruser@192.168.x.x

→パスワードは入力です。

4. GUI → CLIで起動する設定に変更

raspi-configの「System Options」→「Boot / Auto Login」→「Console」を選択します。

sudo raspi-config

5. Apacheを入れる(Webサーバー)

Apacheをインストールし、ブラウザからアクセスして動作を確認します。

sudo apt updatesudo apt install -y apache2

6. ufw(ファイアウォール)を入れる

シンプルなファイアウォールを導入します。

sudo apt install -y ufwsudo ufw status verbose

7. ポートを開く

HTTP (80) とSSH (22) を許可します。

sudo ufw allow OpenSSHsudo ufw allow 80/tcpsudo ufw enable

8. 別PCから接続する

ラズパイのIPアドレスを確認し、別PCから接続します。

hostname -I

→192.168.x.xをブラウザのURLへ入力し、アクセスできることが出来たら成功です。

/var/www/htmlにHTMLファイルを配置すると作成したHTMLを確認することができます

ただHTMLを編集しようとするとエラーが出ると思うので、以下のリンクの内容を行ってみてください

Webサーバー用ディレクトリの安全な編集設定

Advertisement