Ubuntu 22.04

最初に

  • このページは 「さくらの専用サーバ PHY」 の 「Ubuntu 22.04」 の出荷時の基本情報や提供状態、知っておくと便利な情報をまとめたサーバー運用経験者向けの資料マニュアルです。
  • このページを読む前に、必ず「 最初にお読みください 」をお読みください。
  • このページで表現している「出荷」とは、以下の状態を指します。

    • 契約したサーバー(またはサービス)をユーザーの手にお届けしたときの状態・設定

    • OSまたは該当のアプリケーションをインストール(再インストールを含む)したときの状態・設定

  • 提供するサーバーやOS、機材やオプションの「販売終了・提供終了」以降は、対象のマニュアルの改定・更新は停止します。
    更新が停止してから一定の期間経過した時点で、インターネットでの公開を終了します。 詳しくは マニュアルの情報凍結とライフサイクル をご覧ください。
  • インターネットでの閲覧が終了したマニュアルが必要になったときは、カスタマーセンターへお問い合わせください。
  • 弊社の都合により、予告なく閲覧の取り下げ、または公開を終了する場合があります。
  • 一部のOS/ハードウェアの組み合わせにおいて、意図しない仮想ディスクにOSがインストールされる場合があります。
    複数の仮想ディスクを作ってOSをインストールする際はご注意ください。

基本情報

概要

提供サービス名称

さくらの専用サーバ PHY

システム名称

Ubuntu 22.04

提供開始

2023/02

提供終了

--

パーティション

インストールのパーティション指定を「自動」にした場合は、以下の条件でパーティションを作成します。

パーティション割り当て

マウントポイント

容量

ファイルシステム

マウントオプション

/boot/efi

512MB

vfat

umask=0077

/

残り全て

ext4

errors=remount-ro

  • スワップ領域は「/swap.img」としてマウントされ、出荷時のサイズはメモリ容量に応じた可変サイズ(最小4GB)です。

ログインアカウントと管理者権限

アカウント名は「ubuntu」です。
このユーザーはサーバー管理用の一般ユーザーです。

管理者権限が必要な作業を行う場合は「sudo」を用いるか、rootユーザーのパスワードを設定してください。
sudoの設定情報(抜粋)

設定ファイル

/etc/sudoers

設定内容

  • ユーザー
    ・root: どこからでも=(すべてのユーザー/グループで) すべてのコマンドを実行できる
  • グループ
    ・admin: どこからでも=(すべてのユーザーで) すべてのコマンドを実行できる
    ・sudo: どこからでも=(すべてのユーザー/グループで) すべてのコマンドを実行できる
  • 新たに作成したユーザーに、管理者権限の実行権限を与える場合は、sudoグループにユーザーを所属させます。新しい管理者アカウント追加 を参照ください。

ブートローダー

ブートローダーは「GRUB2」です。

タイムゾーン

タイムゾーンは「Asia/Tokyo」です。

起動ターゲット(ランレベル)

起動ターゲットは「5」です。

リゾルバー

「Ubuntu 22.04」 の名前解決を行うリゾルバー設定は、ネットワーク設定(netplan)ファイルに集約されています。

従来の「/etc/resolv.conf」はスタブリゾルバーのシンボリックリンクとなっています。

ネットワーク設定(抜粋)

設定ファイル

/etc/netplan/01-netcfg.yaml

設定内容

・サーバー収容拠点(後述)に応じたネームサーバーの設定

サーバー収容拠点毎の設定項目

石狩リージョン

133.242.0.3
133.242.0.4

resolv.conf

設定ファイル

/etc/resolv.conf -> /run/systemd/resolve/stub-resolv.conf

設定内容

・nameserverに「127.0.0.53」を設定
・「DNS拡張のサポート」有効化

サーバーの時刻調整(NTP)

時刻合わせは「systemd-timesyncd」により行われます。

timesyncd

設定ファイル

/etc/systemd/timesyncd.conf

設定内容

・弊社のNTPサーバー「ntp1.sakura.ad.jp」を参照

SSH(Secure shell)

インターネットを介してサーバーを遠隔管理するためにSSHが導入されています。

アプリケーション

OpenSSH

インストール

パッケージインストール

稼働状態

稼働中

設定ファイル

/etc/ssh/sshd_config

設定内容

OSインストールで「パスワードを利用したログイン:許可しない」を選択した場合は以下の項目を変更しています

  • パスワードによるログイン:拒否

  • 空パスワードの設定:拒否

  • rootユーザーのログイン:パスワードによる認証以外を許可

ファイアウォール

「Ubuntu 22.04」 のファイアウォールサービスは「ufw」を使用しています。 ufwは従来のiptablesのラッパーとして機能し、iptablesでは複雑だった設定を簡単に実現することができるツールです。

アプリケーション

ufw

起動状態

・起動中 / 非アクティブ(inactive)

設定内容

・フィルタールール:なし

Note

ufwは起動していますが、通信制御がアクティブになっていません。 フィルタールールを投入し、アクティブにセットしてご利用ください。

ネットワークとインターフェース

「さくらの専用サーバ PHY」 は、最適なネットワーク設定で出荷しています。 オプションサービスを運用するとき以外は、設定の変更は必要ありません。

警告

不適切な設定を行うと「起動時にサーバーへ接続できない」「十分な回線速度が得られない」等の不具合が発生します。マニュアルでご案内している手順以外では、絶対に設定を変更しないようにしてください。

ネットワーク構成

OS出荷時のネットワーク構成は、以下の推奨構成で提供いたします。

  • 共用グローバルネットワークにサーバーを接続しIPアドレスを1つ付与 *1

  • 共用グローバルネットワークを冗長構成(ボンディング)で提供

推奨ネットワーク構成を独自構成に変更して運用するときは、コントロールパネルでインターフェースを変更・切り替えし、サーバーの設定を行いましょう。

Note

OSをインストールすると、共用グローバルネットワークに自動的に構成が切り替わり、グローバルIPアドレスを付与したサーバー設定状態で出荷されます。

デバイス名の固定

出荷時にデバイス名を固定し、最適な設定を行っています。

  • 「udev rules」を用い 明示的にPCIIDにNICを紐付けしています。

NICデバイス名について

NICデバイス名は以下の通りとなります。

接続先ネットワークに対するNICデバイス名称

接続ネットワーク

デバイス名

1G NIC

bond0(eth0, eth1)

10G NIC *1

bond1(eth2, eth3)

  • *1 一部の上位モデルのみ搭載

設定情報

サーバー全体のネットワーク設定(ゲートウェイ、IPv4・IPv6 の有効化など)は以下ファイルで設定しております。

グローバル側論理ネットワーク・インターフェース設定内容

設定ファイル

/etc/netplan/01-netcfg.yaml

設定内容

・ネットワークのボンディングに関する設定
・ネットワークの設定(IPv4アドレス・ゲートウェイなど)
・リゾルバーの設定
  • 出荷時のネットワーク設定を異なる状態に変更するときは、内容に応じて異なるデバイスファイルの作成や編集が必要です。

起動サービス

構成情報

systemdによって起動時に稼働するサービス一覧を紹介します。

この一覧はユニット単位で一覧しています。ロードされていないもの、無効(disable)、一度だけ起動して終了するサービスは除外しています。ほかのサービスから呼び出されて起動するものについても一覧に記載していません。

サービス名

機能説明

Port

cron.service

定期的にスクリプトやジョブを実行するスケジュールサービス

--

dbus.service

プロセス間通信に関するサービス

--

getty@tty1.service

仮想コンソールサービス

--

irqbalance.service

プロセッサーにハードウェア割り込みを配布してシステムパフォーマンスを
向上させるサービス

--

multipathd.service

デバイスマッパーマルチパスコントローラーサービス

--

networkd-dispatcher.service

systemd-networkdのディスパッチャーサービス

--

polkit.service

特権操作へのアクセス許可を非特権アプリケーションに与えるかの判断を行うフレームワーク

--

rsyslog.service

システムロギングに関するサービス

--

snapd.service

snapパッケージを管理するサービス

--

ssh.service

SSHサーバーサービス

22/tcp

systemd-journald.service

OSで標準的に提供されるシステムロギングサービス

--

systemd-logind.service

ユーザーのログインを管理するシステムサービス

--

systemd-networkd.service

ネットワークを管理するシステムサービス

--

systemd-resolved.service

ネットワークの名前解決に関するシステムサービス

53/tcp,udp

systemd-timesyncd.service

サーバーの時刻を同期(NTP)するシステムサービス

--

systemd-udevd.service

デバイスを動的に作成・削除するシステムサービス

--

thermald.service

サーバーの温度管理サービス

--

udisks2.service

ストレージデバイスにアクセスして操作するためのD-Busサービス

--

unattended-upgrades.service

セキュリティ更新の自動インストールサービス

--

user@1000.service

UID 1000 ユーザーマネージャー

--

Note

アプリケーションが使用しているポートは以下のコマンドで確認できます。

lsof -i

コマンドリファレンス

systemdを操作するコマンドの一例を紹介します。詳しい情報はヘルプ(--help)を参照してください。

種類

操作リファレンス

サービスの起動と停止

サービスを起動する
systemctl start [サービス名]
サービスを停止する
systemctl stop [サービス名]
サービスを再起動する
systemctl restart [サービス名]

サービスの状態の表示

サービスの状態を表示する
systemctl status [サービス名]

サービス起動の有効/無効化

サービスの起動を有効にする
systemctl enable [サービス名]
サービスの起動を無効にする
systemctl disable [サービス名]

サービスの一覧

一覧を表示する(オプションで絞り込みができます)
systemctl list-units --type=service
systemctl list-unit-files --type=service --state=enabled

パッケージ管理ツール

apt(Advanced Package Tool)

「Ubuntu 22.04」 は、パッケージ管理コマンド「apt」を使用することによって、パッケージのインストール・アップデートを行うことができます。

このOSにあらかじめインストールされているアプリケーションは、特に明記されていない限りパッケージでインストールされています。

コマンドリファレンス

パッケージを操作するコマンドでよく利用するものを紹介します。 具体的な利用方法はコマンドラインのヘルプを確認してください。

コマンド

説明

apt --help
apt -h

コマンドの簡易ヘルプを表示する

man apt

aptのman(マニュアル)を開く

apt update

リポジトリーの一覧を更新する

apt upgrade

インストールされているパッケージをすべて更新する

apt search <検索パターン>

パッケージを検索する(部分一致)

apt list <パッケージ名>

パッケージを検索する(完全一致)

apt show <パッケージ名>

パッケージの詳細情報を表示する

apt install <パッケージ名>
apt install <*.debパッケージのパス>
パッケージをインストールする
.debファイルを指定してもよい

apt remove <パッケージ名>

パッケージを削除する

apt remove --purge <パッケージ名>

パッケージを完全に削除する

dpkg -l

インストール済みパッケージを表示する

重要

  • アップデート作業で不具合が発生した場合は、復旧に長時間の作業が必要になることがあります。
    可能であればバックアップを取り、更新内容を確認して、慎重に実行しましょう。
  • 一部RAIDユーティリティーはリポジトリーに含まれていません。

その他アプリケーション

出荷時は、サーバー管理で不可欠なアプリケーションしかインストールされていません。 利用用途に沿って、導入・設定してください。

プログラミング言語

提供時は、サーバー運用に必要なツールの依存関係上で以下の言語がインストールされています。

  • Perl5

  • Python 3

サーバーを運用するにあたって…

サーバーの運用と管理

サーバーのログインと操作

「Ubuntu 22.04」 の操作は、コントロールパネルのリモートコンソールか、遠隔操作(SSH)でサーバーに接続して行います。

サポートするプロトコルは 「SSH2」 のみです。

日本語環境を使う

OS出荷時は、サーバーのロケールが「英語環境(LANG="en_US.UTF-8")」となっています。

$ localectl
   System Locale: LANG=en_US.UTF-8
       VC Keymap: n/a
      X11 Layout: jp
       X11 Model: pc105

日本語環境に変更する場合は、language-pack-jaのインストール後、localectlでロケール設定を変更し、sourceで再読み込みしてください。

$ sudo apt install language-pack-ja
$ sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
$ source /etc/default/locale

新しい管理者アカウント追加

新しいユーザーを作成し、ユーザーを sudo グループに追加します。

$ sudo adduser newuser
$ sudo adduser newuser sudo
  • ※newuser は管理者アカウントに追加するアカウント名に置き換えてください。

サーバーの不正アクセス対策

サーバーへの不正アクセスによる個人情報漏えいやウェブサイトの改ざんは、コンテンツ事業者にとって大きな損害につながります。

以下の点に注意しサーバーを運用しましょう。

  1. アップデート情報やセキュリティ情報を定期的に確認し、常にソフトウェアを最新の状態に保ちましょう。

  2. ユーザー認証には「公開鍵認証」を使いましょう。
    パスワードを用意する場合は、複雑な文字種を使用し、推測できるパスワードや、極端に短いパスワードは避けましょう。
  3. 使用目的にあわせた「ユーザー・グループの権限設定」「アクセス制限」を行いましょう。

OSに関する各種情報

運用に関する参考情報

サーバーの設定や運用については、Ubuntu のドキュメンテーションサイトが参考になります。困ったことがあった時は、ぜひご覧ください。

バージョンアップ情報

新しいバージョンがリリースされると、ベンダーサイトでリリースノートが公開されます。 追加される機能や変更・削除される機能についてご確認ください。

警告

バージョンアップ後のサーバーの正常な動作は弊社では保障しかねます。
アップデートを実行する前に、必要なバックアップを取り、リリースドキュメントを読み、問題が起きないことを確認してから行ってください。

セキュリティアップデート情報

「Ubuntu 22.04」 のセキュリティ情報は、提供ベンダーのセキュリティ情報をご覧いただき、対応してください。

また、コミュニティーで情報配信ツール(メーリングリストなど)を用意している場合もあります。 登録することで情報を受け取ることができます。