実践Linux
CentOS8        CentOS8 目次へ  TOP(HOME)へ


インストール〜ネットワークの設定他     2020年7月


CentOS8 (1911)

●CentOS8 ダウンロード
 CentOS Stream DVD ISO は開発者向けなので、CentOS Linux DVD ISO からダウンロードする。

 インストールディスクの作成
 ダウンロードしたISOイメージは約6.6GBあり、片面1層式の標準的なDVDには収まりきらない。片面2層式以上のものにライティングソフトを使って書き込む。

●インストール
 @言語選択画面:日本語

 Aインストール概要画面が表示される。
 インストール先 項目に ! マークがついているので、設定を行う必要がある。
 インストール先 を押すと、インストール先画面が表示される。
 ディスクが新品なら、そのまま画面左上の 完了 ボタン。
 そうでない場合は、いったん領域をすべて削除する。
 そうでないときの例
  画面下側に ストレージの設定 という項目があります。
  その少し下の 利用可能な町域を追加する チェックボックスをONにし、画面左上の 完了 ボタンを押下します。
  ディスク領域の再利用ダイアログが表示されます。右下の すべて削除 ボタンを押下します。
  一覧部分のアクション項目がすべて 削除 となっていることを確認し、右下の 再利用 ボタンを押下します。

 再びインストール概要画面
 ソフトウェアの選択
 デフォルトは サーバー (GUI 使用) となっているので、これはそのままにした。
 「選択した環境用のその他のソフトウェア」のすべてにチェックを入れ、完了 を押す。
 エラー発生:dotnet-sdkとあるので、「.NET Core開発」のチェックをはずし、再び完了ボタン。

 時刻と日付 地図上で日本/東京を選択。

 インストール設定はこれで完了。右下の インストールの開始 ボタンを押す。

 Bインストール開始
 設定画面が表示されているが、バックグラウンドでインストール処理が進行していく。
 rootパスワードの設定:パスワード強度が表示されるので、なるべく強力と判定されるような文字列の組み合わせで決定する。
 一般ユーザーの作成は、パスワードありで登録。(ログインシェルが/bin/bashになるので、しっかりしたパスワードを設定すること)

 このままバックグラウンドのインストール処理が完了するのを待つ。

 Cインストール完了
 右下に 再起動 ボタンが表示されるので、DVDを取り出して再起動。
 しかし、イメージを取り出してから再起動を行うと、なぜかそこで画面が固まってしまう。(ネットワークの設定を省略したからかもしれない。)
 仕方がないので、手動で再起動。

 D再起動後の設定
 ・ライセンスの同意
 ・プライバシー そのまま次へ
 ・オンラインアカウント スキップ


●主な変更点
 【yum コマンドが dnf コマンドに】
 CentOSのパッケージ管理に欠かせないyumが、Fedoraなどで採用されているdnfをベースとしたコマンドへと変更になった。
 以前のyumはPython2ベースだったが、dnfはPython3ベース。
 コマンドラインのオプション等は変わらないものの、プラグインは別途対応が必要。
 なお、yumコマンドはdnfコマンドのラッパーとして用意されているため、yumコマンドを入力しても内部的にはdnfが呼び出されるようになっている。

 【ファイアウォールは「iptables」から「nftables」へ】
 標準のパケットフィルタ機能がiptablesから、nftablesに置き換わった。
 しかし、CentOS7からはfirewalldでのネットワーク制御が可能となっているので(firewalldのバックエンドが nftablesになったというだけ)、これまで通りfirewalld を利用すればよい。

 【TCP Wrappers(hosts.allow, hosts.deny)は廃止に】
 TCP Wrappersについて:TCP WrappersはRHEL7の段階で既に非推奨で、RHEL8では使用できなくなった。


●初期設定

ロックするまでの時間を設定しておく(そうでないとすぐロックしてしまい、いちいちパスワード入力が必要になる。)
 アクティビティ→アプリケーション→設定→Privacy→画面ロック→「画面オフ後にロックするまでの時間」
 時間を設定。または、「自動画面ロック」をOFFにする。ここではOFFにしておいた。
 トップ画面を右クリックでも「設定」画面に入れる。

省電力モードに移行する時間を長くする
 設定 → Power → 省電力
 時間を長くする。15分にしておいた。

とりあえずインターネットに接続してみる(暫定設定)
 サーバーからDHCPで192.168.7.2〜50が自動割り当てされている環境を想定。
 ・ケーブルを接続(とりあえず内部ネットワークを利用)

 GUI(設定→ネットワーク)で設定。
 ・設定→ネットワーク  当該インターフェイス(内部LAN用) OFFをONにする。
 ・横の太陽マーク
  詳細 「自動接続」をチェック
  identity MACアドレスを選択
  IPv4 IPv4メソッド 「手動」
   アドレス 192.168.7.55(固定)  DHCPで192.168.7.2〜50は自動割り当てにされている
   ネットマスク 255.255.255.0
   ゲートウェイ 192.168.7.1
   DNS 自動
  IPv6 無効

 ゾーンをtrustedに変更
 インターフェイスに恒久的にゾーンを設定するには、
 /etc/sysconfig/network-scripts/ifcfg-****を編集、ZONE=trustedを追加する。

 再起動しておく。

タイムゾーンの設定(インターネット接続が前提となるが)
 設定→詳細(いちばん下にある)→日付と時刻
 「自動日時設定」と「自動タイムゾーン設定」をONにしておく。

日本語入力環境(日本語が入力できない)
 設定→Region & Language 入力ソースに「日本語(かな漢字)」がないとダメ。
                  +(追加)→「日本語」をクリックすると一覧が現れる。
                  ここに「日本語(かな漢字)」がなければ、インストールが必要。
 インストール
 # dnf -y install libkkc libkkc-data ibus-kkc
 再起動する。

 ・libkkc (Japanese Kana Kanji conversion library):
  kkcはKana Kanji conversionの略で、かな・漢字間の変換をサポートするシステム。libkkcはそのライブラリ。
 ・ibus-kkc (Japanese Kana Kanji input method for ibus):
  ibusというのは色々な言語の入力を可能にするシステム。ibus-kkcはibus用のkkcということで、日本語版IMEといったところ。

 再度、入力ソースの言語一覧の「日本語」を押して、日本語の入力ソース一覧を開いたら「日本語(かな漢字)」を選択し、「追加」ボタンを押す。
 「Region&Language」メニューに戻ったら、入力ソースに追加された「日本語(かな漢字)」を選択状態を確認し、「設定」を閉じる。

 これでSuper(WindowsならAlt横のWinキー)+spaceキーを押せば日本語入力できるようになるはず。

ディスクトップを使いやすくする(Gnome Tweaks)
 「アクティビティ」から「ソフトウェア」を選択する。
 「Gnome Tweaks」は、「ユーティリティ」にあるのだが、なぜか隠れている。下の小さな三角形を押すと出てくる。
 「ユーティリティ」から「Tweaks」を選択しインストールする。(右上にチェックされた鍵マークがあるものがすでにインストールされているもの。)
 「Tweaks」をインストール後、「起動」を押し、「機能拡張」を選択する。
 「Applications menu」以下をオンにするとWindowsのような体裁になる。

 デスクトップにファイルやアプリケーションアイコンを表示するには、「/root($HOME)/デスクトップ」ディレクトリ内に、配置すればよい。
 アプリケーションの場合は、/usr/share/applications/よりコピーし、表示されたデスクトップのアイコンを右クリックでポップアップメニューを表示させ、「Allow Launching」を選択する。

SELinuxの状態
 現在のモードをみてみる。 # getenforce
 enforcing(有効)になっている。

 モードを変えるには
  # setenforce permissive または 0  → permissive
  # setenforce enforcing または 1  → enforcing
 ただし、このコマンドは一時的にモードを切り替えるだけ。PCを再起動すると元に戻る。
 恒久的に変更したい場合は、/etc/selinux/configに書き込まれているSELINUX=を直接編集する。

firewalldの状況
 # firewall-cmd --get-active-zone(--get-active-zones)  現在のゾーンとそれに紐付くインターフェイス
 # firewall-cmd --list-all-zones  すべてのゾーンについて、対応するNICと利用する機能を表示する

 なにもしなければ、NICにはデフォルトのpublicゾーンが当てられる。
 public:ほかのホストが信頼できない公共のネットワークで用いられるゾーン。内向きパケットは選定されたもののみ許可する。デフォルトで「cockpit, dhcpv6-client, samba, ssh」が許可されている。

 ゾーンをtrustedに変更する場合(内部LAN用)
 インターフェイスに恒久的にゾーンを設定するには、
 /etc/sysconfig/network-scripts/ifcfg-****を編集、ZONE=trustedを追加する。
 変更したら再起動しておく。

 外部用NICには、ZONE=external等。


●ネットワーク・インターフェイスの正式設定(前に行った設定は破棄する)

 アプリケーション→システムツール→設定→ネットワーク

 外向け
  詳細 自動接続をチェック
  identity 名前 enp0s25 (適当に)
    MACアドレスを選択する
  IPv4 アドレス 手動
    アドレス 333.333.333.210
    ネットマスク 255.255.255.248
    ゲートウェイ 333.333.333.209
    DNS サーバー 127.0.0.1,***.***.***.***  自動OFF       ***.***.***.***はプロバイダ
    ルート 自動
  IPv6 IPv6を無効

  ファイアウォールゾーン ZONE=external(/etc/sysconfig/network-scripts/ifcfg-enp0s25に追加)

 内向け
  詳細 自動接続をチェック
  identity 名前 enp0s26f7u3 (適当に)
    MACアドレスを選択する
  IPv4 アドレス 手動
    アドレス 192.168.7.1
    ネットマスク 255.255.255.0
    ゲートウェイ なし(192.168.7.1にすると、ここから外部に出ようとする。)
    DNS サーバー 192.168.7.1  自動OFF
    ルート 自動
  IPv6 IPv6を無効

  ファイアウォールゾーン ZONE=external(/etc/sysconfig/network-scripts/ifcfg-enp0s26f7u32に追加)

 再起動。

●その他の設定
 /etc/host.conf
      #multi on  コメントアウト
      order hosts,bind

 /etc/hosts
      127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
      333.333.333.210 ns1 ns1.my-dom.xxx
      #::1 ………………  コメントアウト

 /etc/resolv.conf
      nameserver 127.0.0.1
      nameserver ***.***.***.***  プロバイダ
      nameserver 192.168.7.1

 /sysconfig/network
      NETWORKING=yes
      NETWORKING_IPV6=no
      #GATEWAY=333.333.333.209  (ifcfg-enp0s25で設定しないときON)

●IPv6の停止(CentOS7のときと同じことをやっておいた)
 /etc/sysctl.conf
      net.ipv6.conf.all.disable_ipv6 = 1
      net.ipv6.conf.default.disable_ipv6 = 1
   の2行を追加して、sysctl -p でシステムに反映させます。
   ifconfig -a を実行すると、IPv6の表示が出てこなくなるのが確認できます。

 /etc/sysconfig/networkに以下を追加。
      NETWORKING_IPV6=no

●sshdサービスを停止
 安全のため、sshdは設定が終了するまで停止にしておく。
 # systemctl --type=service list-unit-filesで調べると、sshdは自動起動enableになっている。
 # systemctl stop sshd
 # systemctl disable sshd

●各ユーザーの登録
 まずやっておくこと
 /etc/shellsに「/sbin/nologin」を加えておく。これをやっておかないと、ログインシェルが/sbin/nologinのユーザーはftp接続できない。

 例
 wwwuser(/var/wwwに対する FTP用)
  # useradd -g apache -s /sbin/nologin -d /var/www wwwuser
   グループ:apache、ログインシェル:/sbin/nologin、ホームディレクトリ:既成の/var/wwwを使う。
   ただし、/etc/shellsに「/sbin/nologin」の記載がないと警告が出る。これは以下同じ。
  # passwd wwwuser
  /var/www以下の所有を変更、 # chown -R wwwuser.apache /var/www


TOP(HOME)へ

目 次
HOME
 全体のシステム構成&目次

CentOS7-8の新機能(systemdとfirewalld)

CentOS8
CentOS8のインストール〜ネットワークの設定ほか
ダイレクトルールを使ったfirewallの強化
DNS(BIND)サーバー
DHCPサーバー
FTPサーバー
FTPS(FTP over SSL/TLS)
Webサーバー
  アクセス解析ツールAwstats
Mail(Dovecot&Postfix)サーバー
MariaDB(MySQL)サーバー
SSHサーバー
Sambaサーバー
openVPNサーバー

CentOS7
CentOS7のインストール〜ネットワークの設定ほか
CentOS7の新機能(systemdとfirewalld)
ダイレクトルールを使ったfirewallの強化
DNS(BIND)サーバー
Webサーバー
  Webでファイルの受け渡し
  アクセス解析ツールAwstats
  Wordpressでブログ構築
  EC-CUBEショッピングサイト構築
FTPサーバー
FTPS(FTP over SSL/TLS)
Mail(Dovecot&Postfix)サーバー
Sambaサーバー
MariaDB(MySQL)サーバー
DHCPサーバー
SSHサーバー
VNCサーバー
ストリーミングサーバーRed5
ドメインの追加
PHP7.1をインストール

CentOS5〜6

SELinux

Cプログラミング


●その他
クラウド Amazon EC2
Raspberry Piで遊ぶ
印刷機関連開発 刷版絵柄面積率測定
数独をExcelで解く


●趣味の世界
相対性理論
量子力学
群論
熱力学・統計力学
解析力学
物理でつかう数学
超弦理論(ノート作成中)