トップページ > サーバ構築 > RedHat8 / CentOS8 のインストールと初期セットアップまでの手順

RedHat8 / CentOS8 のインストールと初期セットアップまでの手順

数あるサーバ OS の中から RedHat8 とその派生 OS となる CentOS8 のインストールとネットワークやユーザ作成など必要最低限の初期セットアップまでの手順を紹介する。

RedHat8 / CentOS8 のインストールと初期セットアップまでの手順

OS のインストール

RedHat8 及び CentOS8 を端末にインストールするためにはハードウェアに直接インストールするか、仮想マシンとしてインストールするかで手段が異なる。
前者のハードウェアに直接インストールする場合は、ダウンロードした OS のイメージファイルを DVD などに保存し、DVD ドライブを介して OS のインストールを行う。
対して後者の仮想マシンとして OS をインストールする場合は、OS のイメージファイルのダウンロードまでは同様だが、仮想マシンを管理するソフトウェアの画面上から CPU やメモリを割り当てた上で OS をインストールする。

RedHat8 と CentOS8 ともにインストールの途中で root 権限のパスワード設定があるため、任意のパスワードを設定すると自動的に OS が再起動する。

ネットワークの設定

RedHat8 及び CentOS8 で OS の初期インストールが終了して再起動すれば、必要なサービスやミドルウェアをインストールするためにインターネットへの接続が必要になるためまずはネットワーク設定を行う。

最初に RedHat 及び CentOS のネットワーク管理機能(NetworkManager)が認識しているインタフェースとステータスを nmcli コマンドで確認する。

# nmcli d
DEVICE  TYPE      STATE         CONNECTION
ens192  ethernet  disconnected  --
lo      loopback  unmanaged     --

次に disconnected(接続済み)となっているものをネットワークデバイスとして利用するため、ここでは ens192 を以後利用する。
この ens192 に対して同じく nmcli コマンドを利用してローカルネットワーク内での IP アドレスを設定する。

# nmcli c modify ens192 ipv4.addresses 192.168.***.***/24

次にインターネットに接続するためにデフォルトゲートウェイを設定する。

# nmcli c modify ens192 ipv4.gateway 192.168.***.***

設定した IP アドレスは OS の起動または再起動時に変わらず固定となるように設定する。

# nmcli c modify ens192 ipv4.method manual

次にインターネットに接続にホスト名変換のため利用する DNS サーバを設定する。

# nmcli c modify ens192 ipv4.dns ***.***.***.***

ここまでで最低限必要なネットワーク設定は終了したが、まだ OS には適用できていないためネットワークを再起動して設定を有効化させる。

# nmcli c down ens192; nmcli c up ens192
または
# systemctl restart network

最後に設定した IP アドレスや DNS サーバ正しい値になっているか確認するために下記のコマンドを実行すると設定内容が表示され、確認することができる。

# nmcli d show ens192

ホスト名の設定

ホスト名は OS 自身の名称となり、インターネット経由でアクセスする場合はローカルネットワーク内で IP アドレスではなく任意のホスト名でアクセスする場合に利用される。
ホスト名は下記のコマンドで設定することができる。

# nmcli general hostname [任意のホスト名]

ホスト名が正しく設定されたかは次のコマンドで確認することができる。

# hostname
[任意のホスト名]

また、自身宛ての通信で設定したホスト名でも通信できるようにするために /etc/hosts にホスト名を追記しておくとホスト名で操作できるようになる。

# vi /etc/hosts → 上記で設定したホスト名を半角スペース区切りで追記する。

SELinux の設定

RedHat や CentOS の初回インストール時から搭載されている SELinux はカーネルのセキュリティに関する動作を制御する機能だが、熟知していなければ動作しない原因になるため一旦は SELinux を無効化し、サービスや OS の個々の機能でセキュリティ対策する。
SELinux が有効か無効かの状態は下記のコマンドで確認できる。

# getenforce
Enforcing → 有効状態である。

SELinux を恒久的に無効化する場合は、/etc/selinux/config を編集することで無効化される。

# vi /etc/selinux/config
SELINUX=enforcing
 ↓ 下記に変更。
SELINUX=disabled

SELinux の設定を変更した後は、OS の再起動により適用されるため OS の再起動を実施する。

システムログの設定

RedHat と CentOS は OS 内に異常等があればログファイルに出力されるようになっているが、初期インストール時は緊急度の低いお知らせ程度の内容もログに出力されてしまうため、ログファイルのサイズが肥大化するのを防ぐためにログの出力レベルを変更する。
下記の system.conf を変更した後に設定を適用させるコマンドを実行する。

# vi /etc/systemd/system.conf
#LogLevel=info
 ↓ 下記に変更。
LogLevel=notice

# systemctl daemon-reexec

ユーザの作成

ここまで、コンソール上でかつ OS の全ての操作権限がある root ユーザで設定を行ってきたが、コンソールでなく SSH などリモートで操作できるようにする場合は、セキュリティの問題から全ての操作を root 権限で行わないようにするために下記のコマンドでユーザを作成する。

# useradd [任意のユーザ名]
# passwd [上記で入力したユーザ名]
パスワード: [任意のパスワード]

デフォルトパッケージのアップデート

OS はダウンロードした OS のイメージファイルからインストールされたが、その中に含まれる各種ミドルウェアや機能は古い状態のため、これを一括で下記のコマンドにて最新版にする。
OS 自体に脆弱性があり新しいバージョンが公開されている場合はこのコマンドにより OS のバージョンも新しくなる。

# yum -y update

コンソールの日本語化

コンソール上での操作や SSH でリモート操作する際に、OS から表示されるメッセージやキーボードで入力する文字列で日本語を扱う場合は OS の言語設定を日本語に変更する。
日本語に変更するために下記のコマンドを実行し、一度コンソールからログアウトして再度ログインし直すと日本語が取り扱うことができる。

# localectl set-locale LANG=ja_JP.UTF-8
# source /etc/locale.conf

関連記事