[CentOS] 不要PCにCentOS8.0をインストール

つい先日、CentOS7.6で環境を構築したばかりのような気がしますが、CentOS8.0がリリースされたので、さっそく使ってみることにしました。

まず事前情報として確認していたのが、TLS1.0と1.1がデフォルトで無効になること、ファイアウォールがiptablesからnftablesになること、yumコマンドがdnfコマンドになること、など。

TLSに関しては特に問題ないし、ファイアウォールに関してはfirewalldを使っていれば何も変わりなく使えるし、yumコマンドに関してはそのまま使用できる(yumがdnfのラッパーとして動く)らしいから、特段問題なさそうな雰囲気。

とは言え、何があるかわからないのが世の常なので、備忘録代わりに手順をメモメモしていきます。

基本的な設定部分は、ほぼCentOS7.6のときと同じです。

CentOS8.0のダウンロードと準備

今回用意したOSは、2019年10月現在で最新版の、CentOS 8.0.1905。以下のCentOS公式サイトからダウンロードしました。

「CentOS Linux DVD ISO」という方をダウンロードし、ダウンロードしたISOイメージを空のDVD-Rに書き込みます。

Windows7以上でしたら、標準でディスクイメージ書き込みツールが備わっていますので、それを利用します。Windows7の場合は、ISOファイルを右クリックして、以下のように選択します。

Windows7からISOイメージを書き込む

上記画像はCentOS7.6のときのものを流用していますので、ファイル名はCentOS8.0のものに読み替えてください。Windows10の場合は、ISOファイルを右クリックして、以下のように選択します。

Windows10からISOイメージを書き込む

ディスクに書き込みができたら、CentOSをインストールするPCに入れて起動しましょう。

ちなみに、CentOS8.0のISOイメージファイルは6GBを超えています。物理サーバにインストールする場合はISOイメージをそのまま使うことができないので、片面2層のDVDメディアに焼くか、USBメモリ等を使う必要がありますのでご注意ください。

USBメモリにISOイメージを展開してブート可能にするには、以下のツールがおすすめです。

CentOS8.0のインストール

CentOSのインストーラーから、インストールを行います。

インストールディスクの起動

CentOSをディスクから起動すると、以下のような画面になります。

CentOS8.0インストーラー:起動画面

一番上の「Install CentOS Linux 8.0.1905」を選択すると、すぐにインストールが始まります。

二番目の「Test this media & install CentOS Linux 8.0.1905」を選択すると、メディアのチェックを行い、問題がなければインストールが開始されます。

ISOイメージからDVD-Rに正常に焼けていれば、異常が出ることはほぼ無いと思いますので、とりあえず一番上の「Install CentOS Linux 8.0.1905」を選択しましょう。

言語の設定

インストールを進める前に、まずは言語の設定から始まります。特に事情が無ければ「日本語」を選択しましょう。

CentOS8.0インストーラー:言語設定

左側のリストから「日本語」を選択すると、右側のリストは自動で「日本語(日本)」になります。選択できたら、右下の青いボタン「続行」をクリック。

インストールの概要

基本的な設定は自動で行われますので、ここで確認および設定が必須なのは「インストール先」のみ。他の設定は任意ですが、サーバの用途によって必要なパッケージが変わってくるので、ソフトウェアの選択はしておいた方がいいでしょう。ネットワークをあらかじめ設定しておきたい場合は、一緒にここで設定をしておきましょう。

それぞれ確認および設定が終わったら、右下の「インストールの開始」ボタンをクリックします。

CentOS8.0インストーラー:インストールの概要

VirtualBoxでインストールを行う場合、デフォルトの状態ではインストーラーの画面がウィンドウからはみ出てしまうことがあります。Linux側で解像度を変更してもダメな場合は、VirtualBox側の設定で「ディスプレイ」→「グラフィックコントローラー」の選択を「VboxVGA」もしくは「VboxSVGA」にすると、はみ出なくなります。

インストール先

インストール先のディスクを確認するだけでOKですので、そのまま「完了」をクリックしましょう。もしパーティション構成などを変更したい場合は、ここで設定します。

CentOS8.0インストーラー:インストール先の選択

ソフトウェアの選択

CentOSを構成するベースとなる環境の選択と、追加インストールするパッケージの選択を行います。

CentOS8.0インストーラー:パッケージの選択

今回は、特にGUIを使う必要がないため、ベース環境を「サーバー」とし、その他必要なパッケージを右側から選択しました。

ネットワークとホスト名

イーサネットの設定とホスト名をここで指定できます。

CentOS8.0インストーラー:ネットワークとホスト名の設定

右上のスイッチを「オン」にすることで、ネットワークが有効になります。デフォルトはDHCPで設定されるようになっていますので、固定IPなどを設定する場合は、右下の「設定」をクリックして表示されるウィンドウで設定します。

左下の「ホスト名」を変更して「適用」をクリックすることで、インストール時にホスト名も設定できます。

インストール中

インストールが開始されると、画面下の方で進捗具合が表示されます。

CentOS8.0インストーラー:インストール中

インストール中にrootユーザーのパスワード設定や、ユーザーの作成ができますので、必要に応じて設定しましょう。少なくともrootパスワードは、ここで設定しておいた方がいいでしょう。できるだけ強力なパスワードを設定しておくことをおすすめします。

CentOS8.0インストーラー:rootユーザーのパスワード設定

インストール後の設定

インストールが終わったら、ディスクを取り出してから再起動ボタンをクリックし、CentOSを起動しましょう。

インストール後、まず最初に設定しておいた方がいい項目がいくつかありますので、以下に設定方法をメモメモ。全てルートユーザーで実行します。

ちなみに、今回も社内テストサーバ用途での設定になりますので、セキュリティ関係はすっぱり切り落としています。

タイムゾーンの変更

インストール時に「時刻と日付」という項目でタイムゾーンの設定を日本時間に変更しなかった場合は、以下のコマンドで日本(Azia/Tokyo)に変更します。

# timedatectl set-timezone Asia/Tokyo

ホスト名の変更

インストール前に変更を忘れてしまった場合は、以下のように設定します。

# hostnamectl set-hostname [ホスト名]

または、対話形式で設定できるNetworkManagerを使うことが推奨されているので、こちらで設定してもOK。

# nmtui

一応、ファイルを直接変更する方法も。

# vi /etc/hostname

SELinuxの無効化

今回構築するのはテストサーバなので、とにかく厄介なSELinuxは無効化する。セキュリティ的には、あまりおすすめしない方法です。

# vi /etc/sysconfig/selinux
SELINUX = disabled に変更

今すぐ SELinux を無効化するには、以下のコマンド。

# setenforce 0

必要なパッケージのインストール

サーバを管理していくうえで必要な、インストーラーではインストールされなかったパッケージをインストールします。

CentOS8.0は、パッケージのインストールにyumコマンドではなくdnfコマンドを使うようになっています。使い方はyumコマンドとほぼ同じなので心配は不要です。

dnfコマンドのラッパーとして、yumコマンドが残されていますので、今まで通りyumコマンドを使用してもOKです。

telnetサーバ

今回もリモート操作できるように、レガシーなtelnet-serverをインストールします。社内テスト用サーバなのでセキュリティを考慮していませんが、通常はSSHなどを使いましょう。

# dnf -y install telnet-server

インストールが終わったら、自動起動を有効化し、起動します。

# systemctl enable telnet.socket
# systemctl start telnet.socket

そのままでは他のマシンから接続ができないので、ファイアウォールに例外登録します。以下のコマンドは改行せず、1行で入力&実行してください。

# firewall-cmd --permanent --zone=public --add-rich-rule "rule family="ipv4" source address="192.168.1.0/24" service name="telnet" log prefix="telnet" level="info" limit value="1/m" accept"

設定を反映させます。

# firewall-cmd --reload

Samba(ファイル共有)

今回の社内テスト用サーバはWebサーバが基本なので、DocumentRootをそのまま共有してしまった方が、FTPの手間が省けて楽。ということで、DocumentRootをSambaで共有する設定をします。まずはインストールから。

# dnf -y install samba
# dnf -y install samba-winbind

自動起動を有効化し、起動します。

# systemctl enable smb nmb
# systemctl start smb nmb

ファイアウォールに例外登録し、設定を反映させます。

# firewall-cmd --permanent --zone=public --add-service=samba
# firewall-cmd --reload

実際は起動する前にsmb.confの編集を行い、共有するディレクトリや共有条件などを設定しますが、ここでは割愛します。

Apache(httpd)Webサーバ

インストール時点でWebサーバ構成にしていますので、既にインストールされています。ここでは、自動起動を有効化し、起動します。

# systemctl enable httpd
# systemctl start httpd

80番ポートを開放するため、ファイアウォールに例外登録し、設定を反映させます。

# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --reload

実際は起動する前にhttpd.confの編集を行い、DocumentRootやWebサーバとしての設定を行いますが、ここでは割愛します。

PHPとMySQL

なぜかPHPとMySQLがインストールされていなかったのでインストールします。OSインストール時点で、それぞれ関連するパッケージにチェックを付け忘れたのかもしれません。

# dnf -y install php

デフォルトではPHP7.2がインストールされます。

# dnf -y install mysql

デフォルトではMySQL8.0がインストールされます。

とりあえずWebサーバとして稼働

ここまでの作業で、とりあえずCentOS8.0のインストールとWebサーバとして最低限の設定が終わりました。

設定を進めていくうえで、CentOS7.6との違いなどがあれば、また改めて記事にしてみたいと思います。ここまでの作業、オツカレサマデシタ!

初稿:2019年10月26日
[CentOS] CentOS8.0にPHP7.3をインストール
CentOS8.0では、デフォルトでPHP7.2がインストールされます。 そのままでも今は問題ないのですが、できれば最新のPHP7.3系を使いたいので、アップグレードを行います。 PHP7.3をインストールするためにはRemiリポジトリが必...
[CentOS] CentOS8.0にMySQL8.0をインストールする
CentOS8.0では、MariaDBというMySQL派生のDBと、本家MySQLの両方がインストールディスクに収められていますので、自分で選択できるようになりました。 MariaDBは、DBとしての機能はMySQLとほぼ同じなので、そのま...
[CentOS] CentOS8.0にMariaDB10.3をインストールする
CentOS8.0では、MariaDBというMySQL派生のDBと、本家MySQLの両方がインストールディスクに収められていますので、自分で選択できるようになりました。 MariaDBは、DBとしての機能はもとより、MySQL向けの接続クラ...

コメント

タイトルとURLをコピーしました