はじめに

第1編でホームサーバーの概念とハードウェアについて学んだなら、今回の第2編では本格的にOS(オペレーティングシステム)をインストールしていきます。ハードウェアが体だとすれば、OSは魂です。どのOSを選択するかによって、できることも管理方法も大きく変わります。

今回の記事では、ホームサーバー用としてよく使われるOSを比較し、最も汎用的なUbuntu Serverのインストール過程を詳しく説明していきます。

1. ホームサーバー用OSの種類と比較

ホームサーバー用OSは大きく2つに分けられます。汎用Linuxディストリビューションと特殊目的OSです。

1.1 Ubuntu Server

おそらく最もよくおすすめされるOSでしょう。私も最初に始めた時はUbuntu Serverで始めました。

長所:

  • 資料が本当に多い - 検索すればたいていの問題は解決策が見つかる
  • LTS(長期サポート)バージョンは5年間セキュリティアップデート提供
  • Docker、各種サーバーソフトウェアとの互換性最高
  • 初心者でもアプローチしやすい

短所:

  • Snapパッケージシステムは好みが分かれる
  • Canonical社のポリシー変更の影響を受ける可能性がある

おすすめ対象:ホームサーバー入門者、Dockerベースのサービス運用者

1.2 Debian

Ubuntuの基盤となるディストリビューションです。Ubuntuより安定的で保守的です。

長所:

  • 極めて安定的 - サーバー用として検証されたパッケージのみ含む
  • 軽量で無駄がない
  • 完全なオープンソース、企業の影響なし
  • Ubuntuの資料のほとんどが互換

短所:

  • パッケージバージョンがやや古い
  • インストール過程がUbuntuより少し複雑

おすすめ対象:安定性を重視するユーザー、Linux経験者

1.3 Proxmox VE

仮想化専門OSです。一台のサーバーで複数の仮想マシン(VM)やコンテナ(LXC)を動かしたい時に選択します。

長所:

  • Web UIで仮想マシン管理が可能
  • KVM仮想化 + LXCコンテナ両方サポート
  • 無料で使用可能(サブスクリプションは任意)
  • スナップショット、バックアップ、クラスタリング機能内蔵

短所:

  • 仮想化オーバーヘッドによる性能低下
  • 学習曲線がある
  • 低スペックシステムでは非効率的

おすすめ対象:複数のOSを同時にテストしたいユーザー、ホームラボ構築者

1.4 TrueNAS(Core/Scale)

ストレージ専門OSです。ファイルサーバー、NAS用途に特化しています。

TrueNAS Core(FreeBSD基盤):

  • ZFSファイルシステムでデータ整合性保証
  • 成熟して安定的
  • プラグイン(Jail)でサービス拡張

TrueNAS Scale(Linux基盤):

  • Docker/Kubernetesネイティブサポート
  • Linux互換性でより多くのアプリが使用可能
  • 比較的最近リリースされ、まだ成熟中

おすすめ対象:大容量ストレージ管理が主目的のユーザー

1.5 Unraid

有料OSですが、ホームサーバーコミュニティでとても人気があります。

長所:

  • 異なる容量のHDDを一つのプールにまとめられる
  • Web UIが直感的で美しい
  • Docker、VM管理が簡単
  • コミュニティアプリストアが活発

短所:

  • 有料(Basic $59、Plus $89、Pro $129)
  • パリティ基盤なので性能がやや低い

おすすめ対象:様々な容量のHDDを活用したいユーザー、GUI好み

1.6 OS比較要約表

OS 難易度 主な用途 費用 推奨RAM
Ubuntu Server 易しい 汎用 無料 2GB+
Debian 普通 汎用 無料 1GB+
Proxmox VE 普通 仮想化 無料 8GB+
TrueNAS 普通 ストレージ 無料 8GB+(ECC推奨)
Unraid 易しい 汎用/ストレージ 有料 4GB+

2. Ubuntu Server インストール準備

このガイドではUbuntu Server 24.04 LTSを基準に説明します。最も汎用的で資料が多いので、入門者におすすめです。

2.1 必要なもの

  • USBメモリ(8GB以上)
  • Ubuntu Server ISOファイル
  • ブータブルUSB作成プログラム(RufusまたはbalenaEtcher)
  • キーボード、モニター(インストール時のみ必要)

2.2 ISOダウンロード

Ubuntu公式サイトからISOをダウンロードします:

  1. ubuntu.com/download/serverにアクセス
  2. 「Ubuntu Server 24.04 LTS」を選択
  3. ダウンロード(約2GB)

2.3 ブータブルUSB作成

WindowsでRufusを使用:

  1. Rufusをダウンロードして実行(rufus.ie
  2. デバイス:USBメモリを選択
  3. ブート種別:ダウンロードしたISOファイルを選択
  4. パーティション方式:GPTを選択(UEFIブート用)
  5. 「スタート」をクリック

Mac/LinuxでbalenaEtcherを使用:

  1. balenaEtcherをダウンロードして実行(etcher.balena.io
  2. 「Flash from file」→ ISOを選択
  3. 「Select target」→ USBを選択
  4. 「Flash!」をクリック

3. Ubuntu Server インストール過程

3.1 ブート順序変更

  1. USBをサーバーに挿して電源オン
  2. BIOS/UEFIに入る(通常F2、F12、Delキー)
  3. ブート順序でUSBを最初に設定
  4. 保存して再起動

3.2 インストールウィザード進行

1. 言語選択

Englishを選択することをおすすめします。日本語を選択するとターミナルで文字化けする場合があります。

2. キーボードレイアウト

Japanese → Japanese(またはお使いのキーボードに合わせて)を選択

3. インストールタイプ

「Ubuntu Server」を選択(minimizedバージョンではない)

4. ネットワーク設定

有線接続されていれば自動でDHCP IPを取得します。一旦デフォルトで進行し、後で固定IPに変更する予定です。

5. プロキシ設定

特別な場合でなければ空白のまま進行

6. ミラーサーバー

デフォルト値で進行。お住まいの地域に近いミラーが選択されます。

7. ディスク設定

最も重要な段階です:

  • Use an entire disk:ディスク全体をUbuntuに使用(推奨)
  • LVM設定はデフォルト値を維持
  • 暗号化が必要なら「Encrypt the LVM group」をチェック

8. ユーザー設定

  • Your name:表示名
  • Your server's name:ホスト名(例:homeserver)
  • Username:ログインID(小文字、英語)
  • Password:強力なパスワードを設定

9. Ubuntu Pro

Skip for nowを選択(個人使用は無料登録可能ですが、後でも大丈夫です)

10. SSH設定

「Install OpenSSH server」を必ずチェック!これをインストールしてこそリモートで接続できます。

11. Featured Server Snaps

今は何も選択せずに進行。Dockerなどは後で直接インストールするのが良いです。

12. インストール完了

インストールが完了したら「Reboot Now」を選択。USBを取り外すよう求められたら取り外してEnter。

4. 初期設定

4.1 初回ログイン

再起動後、インストール時に作成したアカウントでログインします。

homeserver login: ユーザー名
Password: (パスワード入力、画面には表示されません)

4.2 システムアップデート

まずシステムを最新状態にアップデートします:

sudo apt update && sudo apt upgrade -y

少し時間がかかる場合があります。コーヒーでも飲んでお待ちください。

4.3 タイムゾーン設定

サーバーのタイムゾーンを設定します:

# 現在のタイムゾーン確認
timedatectl

# 東京タイムゾーンに変更
sudo timedatectl set-timezone Asia/Tokyo

# 変更確認
date

4.4 ホスト名変更(必要時)

インストール時に設定したホスト名を変更したい場合:

# 現在のホスト名確認
hostname

# ホスト名変更
sudo hostnamectl set-hostname 新しい名前

# /etc/hosts ファイルも修正
sudo nano /etc/hosts

hostsファイルで127.0.1.1行のホスト名も変更してください。

4.5 固定IP設定

サーバーはIPが変わってはいけないので、固定IP設定が必須です。

方法1:ルーターでDHCP予約

最も簡単な方法です。ルーターの管理ページでサーバーのMACアドレスに特定のIPを予約しておけばOKです。

方法2:サーバーで直接固定IP設定

Ubuntu 18.04からはNetplanを使用します:

# ネットワークインターフェース名確認
ip a

通常enp0s3eth0eno1のような名前が見えるはずです。

# Netplan設定ファイル編集
sudo nano /etc/netplan/00-installer-config.yaml

以下のように修正します(例):

network:
  ethernets:
    enp0s3:  # インターフェース名に合わせて修正
      dhcp4: no
      addresses:
        - 192.168.0.100/24  # 希望するIP
      routes:
        - to: default
          via: 192.168.0.1  # ルーターIP(ゲートウェイ)
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.4.4
  version: 2

設定適用:

sudo netplan apply

注意:IP設定を間違えるとネットワーク接続が切れる可能性があります。モニターとキーボードが接続された状態で作業してください。

5. SSHサーバー設定

SSHはリモートでサーバーに接続するための必須ツールです。インストール時にOpenSSHをインストールしていれば、すでに動作しているはずです。

5.1 SSH状態確認

# SSHサービス状態確認
sudo systemctl status ssh

# 有効化されていなければ
sudo systemctl enable ssh
sudo systemctl start ssh

5.2 他のPCからSSH接続

Windows 10/11:

コマンドプロンプトまたはPowerShellで:

ssh ユーザー名@サーバーIP

Mac/Linux:

ターミナルで:

ssh ユーザー名@サーバーIP

例:ssh admin@192.168.0.100

初回接続時にfingerprintの確認メッセージが出たらyesと入力。

5.3 SSHセキュリティ強化(オプション)

デフォルト設定でも十分ですが、セキュリティを強化したい場合:

sudo nano /etc/ssh/sshd_config

推奨設定変更:

# デフォルトポート変更(22 → 別の番号)
Port 2222

# root直接ログイン無効化
PermitRootLogin no

# パスワードの代わりにキー認証のみ許可(キー設定後)
# PasswordAuthentication no

設定変更後SSHを再起動:

sudo systemctl restart ssh

注意:ポートを変更するとssh -p 2222 ユーザー名@サーバーIPで接続する必要があります。

5.4 SSHキー認証設定(推奨)

パスワードの代わりにSSHキーを使用するとより安全です。

クライアント(PC)でキー生成:

# Windows PowerShell または Mac/Linux ターミナル
ssh-keygen -t ed25519 -C "your_email@example.com"

Enterを数回押すとキーが生成されます。

サーバーに公開キーを登録:

# 自動でコピー
ssh-copy-id ユーザー名@サーバーIP

# または手動で
# クライアントの ~/.ssh/id_ed25519.pub の内容を
# サーバーの ~/.ssh/authorized_keys ファイルに追加

6. 基本パッケージインストール

これからよく使うユーティリティを事前にインストールしておきます:

sudo apt install -y \
    curl \
    wget \
    git \
    htop \
    neofetch \
    net-tools \
    ufw
  • curlwget:ファイルダウンロード
  • git:バージョン管理(設定ファイルのバックアップなど)
  • htop:システムモニタリング(topの上位互換)
  • neofetch:システム情報表示(きれいに)
  • net-tools:ifconfigなどネットワークツール
  • ufw:ファイアウォール管理ツール

6.1 ファイアウォール基本設定

# SSH許可(これをしないと接続が切れます!)
sudo ufw allow ssh

# またはポートを変更した場合
sudo ufw allow 2222/tcp

# ファイアウォール有効化
sudo ufw enable

# 状態確認
sudo ufw status

まとめ

お疲れ様でした!これでUbuntu Serverがインストールされ、基本設定が完了しました。まとめると:

  • Ubuntu Server 24.04 LTS インストール完了
  • タイムゾーン、ホスト名設定
  • 固定IP設定
  • SSHサーバー設定およびセキュリティ強化
  • 基本ユーティリティおよびファイアウォール設定

これでモニターとキーボードなしでも、他のPCからSSHでサーバーに接続して管理できます。サーバーを隅にきちんと配置してください!

次の第3編では、ネットワーク設定と外部からのアクセス方法について詳しく見ていきます。ポートフォワーディング、DDNS、VPN設定などを扱う予定です。

ご質問があればコメントでお気軽にどうぞ!