Ubuntu 20.04

[更新:2022年10月5日]

さくらインターネットが提供する「 さくらのVPS 」のOSセットアップ仕様は以下の通りとなります。

はじめに

さくらのVPS の標準OSインストールによって提供される「Ubuntu 20.04」での管理・運用上、有用と思われる情報を紹介しています。
実行時に十分な注意が必要とされるものも含まれています。特に実運用環境下でのオペレーションの際には、必ず注意事項に従って作業をおこなうようにしてください。
注意事項に記載があるにもかかわらず、誤った設定をおこなってしまったことによりシステムに深刻な打撃を与えてしまった場合、一切の責任を負いませんのでご注意ください。
OSのアップグレードなどにより、記載されている内容が予告なく変更される可能性があります。
記載されている内容について、さくらインターネットではいかなる責任を負うものではありません。

Note

初期ログインユーザーは「ubuntu」となります。rootではログインできませんのでご注意ください。

OS基本設定

Ubuntu 20.04 のインストール内容につきましては下記の通りとなります。

インストールOS

OS

Ubuntu 20.04 amd64

パーティション

パーティション番号

マウントポイント

パーティション名

フォーマット

容量

1

/dev/vda1

bios_grubフラグ(EF02)

1024KB

2

swap (※1)

/dev/vda2

tmpfs(8200)

4 GB(各プラン共通)

3

/

/dev/vda3

ext4(8300)

vdaの残り(各プラン共通)

/data (※2)

/dev/vdb1

ext4

1Gプラン : 30 GB
1.5Gプラン : 80 GB
4Gプラン : 180 GB
8Gプラン : 380 GB
※ カスタムインストール時の場合を除く。
※1 :2022年10月5日以降の標準OSイメージには存在しません。お客様のご利用プランやアプリケーションに合わせて、 swapfileの追加 を参考に設定ください。
※2 :1.5Gおよび2012年3月29日以前に申し込まれた1G、4G、8Gのみ。2012年3月29日以降にリリースされた2Gに/dataは含まれません。

ブートローダ

OS起動に関する変更

起動時にテキストモードを使用します。

コンソール表示に関する変更

コンソールがblank状態になるのを抑止します。
カーネルのコンソールをtty0とttyS0に変更します。

ブートローダ

GRUB2(OS標準)

設定ファイル

/etc/default/grub

設定内容

GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0,115200n8r console=tty0 noresume consoleblank=0"

ロケール

言語

C.UTF-8

タイムゾーン

Asia/Tokyo

ホスト名設定

初期状態では、hostnameをご契約された<仮想サーバーホスト名>に変更しております。
お客様のサーバー運用状況に合わせて手続き・設定をおこなってください。
名前の解決ができるようになった後は、ご利用いただくアプリケーションの設定が必要となります。

設定ファイル

/etc/hostname

設定値

ご契約の<仮想サーバーホスト名>

設定ファイル

/etc/hosts

設定内容

127.0.0.1 localhost
127.0.1.1 <仮想サーバーホスト名.ドメイン名> <仮想サーバーホスト名>

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

IPアドレスの設定

設定ファイル

/etc/netplan/01-netcfg.yaml

設定内容

サーバー固有のグローバルIPv4アドレス 1つ を設定(※)

network:
  version: 2
  ethernets:
    ens3:
      gateway4: XXX.XXX.XXX.1
      nameservers:
        addresses: [210.188.224.10, 210.188.224.11]
      accept-ra: false
      link-local: [ ]
      addresses:
        - XXX.XXX.XXX.XXX/XX
#        - "XXX:XXX:XXX:XXX:XXX:XXX:XXX:XXX/64"
#      gateway6: "fe80::1"

注意

※ ens3 に設定するIPアドレスの変更や追加は行わないでください。

※ 2017/4/18より 標準OSインストールにて新規にインストールされるOSはIPv6の設定が無効化されています。
※ 2022/10/5以前の標準OSイメージは、一部項目の有無が異なる場合が有ります。
※ 有効化手順につきましては、 IPv6有効化手順(Ubuntu 20.04) をご参照ください。

TSOの無効化設定

ネットワークパフォーマンスの最適化を行います。

設定ファイル

/etc/udev/rules.d/50-tso.rules

設定内容

ACTION=="add", SUBSYSTEM=="net", KERNEL=="eth*", RUN+="/sbin/ethtool -K %k tso off"
ACTION=="add", SUBSYSTEM=="net", KERNEL=="ens*", RUN+="/sbin/ethtool -K %k tso off"
※ 2022/10/5以降の標準OSイメージにはございません。

I/Oスケジューラの設定

設定ファイル

/etc/udev/rules.d/60-ioschedulers.rules

設定内容

ACTION=="add|change", KERNEL=="vd[a-z]", ATTR{queue/rotational}="0", ATTR{queue/scheduler}="none"

リゾルバの設定

サーバーの参照ネームサーバとして、さくらインターネットのネームサーバを設定しています。
DNSサーバの設定を変更する際には「/etc/netplan/01-netcfg.yaml」をご参照ください。

設定ファイル

/etc/netplan/01-netcfg.yaml

設定内容

下記のいずれか

nameservers:
  addresses: [210.188.224.10, 210.188.224.11]
nameservers:
  addresses: [210.224.163.3, 210.224.163.4]
nameservers:
  addresses: [133.242.0.3, 133.242.0.4]

時刻同期の設定

上位NTPサーバをntp1.sakura.ad.jpに設定し、時刻問い合わせをおこないます。
自身がNTPサーバとしては動作しません。(時刻の問い合わせに対し応答しません)

設定ファイル

/etc/systemd/timesyncd.conf

設定内容

[Time]
NTP=ntp1.sakura.ad.jp

cron設定

定期実行における実行時間(※1)をランダムに変更します。

設定ファイル

/etc/crontab

設定内容

※1 XX *    * * *   root    cd / && run-parts --report /etc/cron.hourly
※1 XX X    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
※1 XX X    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
※1 XX X    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

アプリケーション設定

表記の各アプリケーションの基本バージョンは、ディストリビューションによって今後アップデートされる場合があります。

sshd

動作

自動起動設定

インストール方法

dpkg システムを使用

利用プロトコル

sshd(22/tcp)

アクセスログ

/var/log/auth.log(1週間毎にローテーション)

ログ保存期間

4週間

デフォルトからの変更点

パスワードでのログインを許可します。

設定ファイル

/etc/ssh/sshd_config

設定内容

#PasswordAuthentication yes
※ サポートするプロトコルはSSH2のみ有効となっておりますので、SSHを使用したサーバーへのログインにつきましては、以下にございますようなSSH2対応のクライアントソフトをご利用ください。

Ubuntu 20.04 FAQ

日本語環境を使用する

初期状態では英語環境となっております。
メッセージを日本語化するには以下のコマンドを実行し LANG=”ja_JP.UTF-8″ としてください。
$ sudo apt update
$ sudo apt -y install language-pack-ja language-pack-ja-base ibus-mozc
$ sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"

初期状態

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

変更後

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

OSのセキュリティアップデート

OSのセキュリティ情報については、下記のsecurity notices情報が参考になります。

OSのバージョンアップについて

新しいバージョンがリリースされると、下記でリリースノートが公開されます。
バージョンアップの留意点などにつきましても、こちらのリリースノートに記載されます。

OS のバージョンアップによる動作に関しましては、弊社では保障致しかねます。予めご了承ください。

注意

Ubuntu 22.04 において 512MB プランでは、メモリ容量不足により正常に起動しない事を確認しています。