【初心者必見】Linuxサーバー構築手順書

初心者必見_Linuxサーバー構築手順書
この記事を読むと・・・
Linuxサーバの一般的な設定方法が理解できる

コマンドを忘れがちだが、一目でパッと思い出せる
コマンド実行例を知れる
目次

初期設定

OSインストール

OSインストール方法は以下の記事を参照ください。

OSバージョン確認

OSのバージョンを確認するコマンドは以下の通りです。

分類コマンド
確認cat /etc/os-release
# cat /etc/os-release
NAME="Red Hat Enterprise Linux"
VERSION="9.1 (Plow)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="9.1"
PLATFORM_ID="platform:el9"
PRETTY_NAME="Red Hat Enterprise Linux 9.1 (Plow)"
ANSI_COLOR="0;31"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:redhat:enterprise_linux:9::baseos"
HOME_URL="https://www.redhat.com/"
DOCUMENTATION_URL="https://access.redhat.com/documentation/red_hat_enterprise_linux/9/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"

REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 9"
REDHAT_BUGZILLA_PRODUCT_VERSION=9.1
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.1"

作業エビデンス取得設定

作業エビデンスを出力するコマンドは以下の通りです。

分類コマンド
一時設定script -a /tmp/setup_$(uname -n)_$(date "+%Y%m%d%H%M%S").log
設定解除exit
# script -a /tmp/setup_$(uname -n)_$(date "+%Y%m%d%H%M%S").log
Script started, output log file is '/tmp/setup_TESTSERVER01_20230420223359.log'.

# exit
exit
Script done.

SELinux設定

SELinux無効化設定

SELinuxを無効化するコマンドは以下の通りです。

分類コマンド
設定grubby --update-kernel ALL --args selinux=0

reboot
# grubby --update-kernel ALL --args selinux=0
# reboot

SELinux設定確認

SELinuxの設定を確認するコマンドは以下の通りです。

分類コマンド
確認sestatus
# sestatus
SELinux status:                 disabled

ホスト名設定

ホスト名変更

ホスト名を設定するコマンドは以下の通りです。

分類コマンド
設定hostnamectl set-hostname <ホスト名>
# hostnamectl set-hostname TESTSERVER01

ホスト名確認

ホスト名を確認するコマンドは以下の通りです。

分類コマンド
確認hostname
# hostname
TESTSERVER01

言語(ロケール)設定

言語設定

言語を設定するコマンドは以下の通りです。

分類コマンド
設定localectl set-locale LANG=<文字コード>
# localectl set-locale LANG=ja_JP.utf8

言語設定確認

言語を設定するコマンドは以下の通りです。

分類コマンド
確認localectl status
# localectl status
   System Locale: LANG=ja_JP.utf8
       VC Keymap: jp
      X11 Layout: jp

タイムゾーン設定

タイムゾーン設定

タイムゾーンを設定するコマンドは以下の通りです。

分類コマンド
確認timedatectl set-timezone <タイムゾーン名>
 
# timedatectl set-timezone Asia/Tokyo

タイムゾーン設定確認

タイムゾーンを確認するコマンドは以下の通りです。

分類コマンド
確認timedatectl
 
# timedatectl
               Local time: 日 2023-04-23 16:07:18 JST
           Universal time: 日 2023-04-23 07:07:18 UTC
                 RTC time: 日 2023-04-23 07:07:17
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: no
              NTP service: active
          RTC in local TZ: no

ログイン画面設定

ログイン時メッセージ設定

ログイン時のメッセージを設定するコマンドは以下の通りです。

分類コマンド
確認vi /etc/motd
# vi /etc/motd
----------ここから----------
本番環境のサーバーです。
※操作に注意してください。
----------ここまで----------

パッケージインストール

yumリポジトリ設定

rhelのメディアに入っているパッケージをyumコマンドでインストールできるようにするコマンドは以下の通りです。

スクロールできます
分類コマンド
設定mount -o loop,ro -t iso9660 <isoのファイルパス> <isoファイルのマウント先>
vi /etc/yum.repos.d/<リポジトリ名>
yum repolist all
# mount -o loop,ro -t iso9660 /media/rhel-baseos-9.1-x86_64-dvd.iso /mnt/rhel_media
# vi /etc/yum.repos.d/redhat9.1.repo
----------ここから----------
[BaseOS]
name=Red Hat Enterprise Linux 9 - BaseOS
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///mnt/rhel_media/BaseOS/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[AppStream]
name=Red Hat Enterprise Linux 9 - AppStream
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///mnt/rhel_media/AppStream/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
----------ここまで----------
# yum repolist all
repo id               repo の名前                                         状態
AppStream             Red Hat Enterprise Linux 9 - AppStream              有効化
BaseOS                Red Hat Enterprise Linux 9 - BaseOS                 有効化

パッケージインストール(yum)

パッケージをインストールするコマンドは以下の通りです。

分類コマンド
設定yum install -y <パッケージ名>
# yum install -y zip
サブスクリプション管理リポジトリーを更新しています。
コンシューマー識別子を読み込めません

このシステムは、エンタイトルメントサーバーに登録されていません。subscription-manager で登録できます。

メタデータの期限切れの最終確認: 0:43:11 時間前の 2023年04月23日 15時13分42秒 に 実施しました。
依存関係が解決しました。
================================================================================
 パッケージ    Arch           バージョン            リポジトリー          サイズ
================================================================================
インストール:
 zip           x86_64         3.0-33.el9            InstallMedia         242 k
依存関係のインストール:
 unzip         x86_64         6.0-56.el9            InstallMedia         186 k

トランザクションの概要
================================================================================
インストール  2 パッケージ

合計サイズ: 429 k
インストール後のサイズ: 1.0 M
パッケージのダウンロード:
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  準備             :                                                        1/1
  インストール中   : unzip-6.0-56.el9.x86_64                                1/2
  インストール中   : zip-3.0-33.el9.x86_64                                  2/2
  scriptletの実行中: zip-3.0-33.el9.x86_64                                  2/2
  検証             : unzip-6.0-56.el9.x86_64                                1/2
  検証             : zip-3.0-33.el9.x86_64                                  2/2
インストール済みの製品が更新されています。

インストール済み:
  unzip-6.0-56.el9.x86_64                 zip-3.0-33.el9.x86_64

完了しました!

インストール済みパッケージ確認(yum)

パッケージを確認するコマンドは以下の通りです。

分類コマンド
確認yum info <パッケージ名>
# yum info zip
インストール済みパッケージ
名前         : zip
バージョン   : 3.0
リリース     : 33.el9
Arch         : x86_64
サイズ       : 634 k
ソース       : zip-3.0-33.el9.src.rpm
リポジトリー : @System
repo から    : InstallMedia2
概要         : A file compression and packaging utility compatible with PKZIP
URL          : http://www.info-zip.org/Zip.html
ライセンス   : BSD
説明         : The zip program is a compression and file packaging utility.  Zip
             : is analogous to a combination of the UNIX tar and compress
             : commands and is compatible with PKZIP (a compression and file
             : packaging utility for MS-DOS systems).
             :
             : Install the zip package if you need to compress files using the
             : zip program.

ネットワーク設定

IPv4のアドレス設定

IPv4のIPアドレスを設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定nmcli connection modify <接続プロファイル名> ipv4.address <IPアドレス>/<プレフィックス>
nmcli connection modify <接続プロファイル名> ipv4.gateway <IPアドレス>
nmcli connection modify <接続プロファイル名> connection.autoconnect yes
nmcli connection modify <接続プロファイル名> ipv4.method manual

nmcli connection up <接続プロファイル名>
# nmcli connection modify enp0s3 ipv4.address 192.168.56.102/24
# nmcli connection modify enp0s3 ipv4.gateway 192.168.56.254
# nmcli connection modify enp0s3 connection.autoconnect yes
# nmcli connection modify enp0s3 ipv4.method manual
# nmcli connection up enp0s3
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/3)

IPv6のアドレス無効化設定

IPv6のアドレスを無効化するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定nmcli connection modify <接続プロファイル名> ipv6.method disabled

nmcli connection up <接続プロファイル名>
# nmcli connection modify enp0s3 ipv6.method disabled
# nmcli connection up enp0s3
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/5)

IPアドレス確認

IPアドレスの確認するコマンドは以下の通りです。

分類コマンド
確認ip a
# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:44:8f:eb brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.102/24 brd 192.168.56.255 scope global noprefixroute enp0s3
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:c0:3f:b3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.57.2/24 brd 192.168.57.255 scope global noprefixroute enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::8245:574b:bf5:c939/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

IPv4の静的ルーティング設定

IPv4の静的ルーティングを設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定nmcli connection modify <接続プロファイル名> +ipv4.routes "<宛先ネットワークアドレス>/<プレフィックス> <ルータIPアドレス>"

nmcli connection up <接続プロファイル名>
# nmcli connection modify enp0s3 +ipv4.routes "192.168.100.0/24 192.168.56.254"
# nmcli connection up enp0s3
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/3)

静的ルーティング設定確認

IPv4の静的ルーティング設定を確認するコマンドは以下の通りです。

分類コマンド
確認ip route show
# ip route show
default via 192.168.56.254 dev enp0s3 proto static metric 100
192.168.56.0/24 dev enp0s3 proto kernel scope link src 192.168.56.102 metric 100
192.168.57.0/24 dev enp0s8 proto kernel scope link src 192.168.57.102 metric 101
192.168.100.0/24 via 192.168.56.254 dev enp0s3 proto static metric 101

LVM設定

ディスクラベル付与/パーティション作成

ディスクのラベル付与とパーティションを作成するコマンドは以下の通りです。
※ディスクをフルで使う想定

スクロールできます
分類コマンド
設定parted mklabel <ラベル>
parted -a optimal <デバイス名> mkpart primary <開始位置> <終了位置> set <パーティション番号> lvm on
# parted /dev/sdb mklabel gpt
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。
# parted -a optimal /dev/sdb mkpart primary 0% 100% set 1 lvm on
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

パーティション設定確認

パーティションの設定を確認するコマンドは以下の通りです。

分類コマンド
確認parted <デバイス名> print
# parted /dev/sdb print
モデル: ATA VBOX HARDDISK (scsi)
ディスク /dev/sdb: 2147MB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    1049kB  2146MB  2145MB                    primary  lvm

PV(物理ボリューム)作成

PV(物理ボリューム)作成するコマンドは以下の通りです。

分類コマンド
設定pvcreate <デバイス名>
# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.

PV(物理ボリューム)設定確認

PV(物理ボリューム)の設定を確認するコマンドは以下の通りです。

分類コマンド
確認pvdisplay
pvscan
pvs
# pvdisplay  
  "/dev/sdb1" is a new physical volume of "<2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name
  PV Size               <2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               qkAp81-SbrG-5meS-XkUc-YOkY-ut5b-pYyig5

# pvscan
  PV /dev/sdb1                      lvm2 [<2.00 GiB]
  Total: 1 [<2.00 GiB] / in use: 0 [0   ] / in no VG: 1 [<2.00 GiB]
# pvs
  PV         VG Fmt  Attr PSize  PFree
  /dev/sdb1     lvm2 ---  <2.00g <2.00g

VG(ボリュームグループ)作成

VG(ボリュームグループ)作成するコマンドは以下の通りです。

分類コマンド
設定vgcreate <VG名> <デバイス名>
# vgcreate VG01 /dev/sdb1
  Volume group "VG01" successfully created

VG(ボリュームグループ)設定確認

VG(ボリュームグループ)の設定を確認するコマンドは以下の通りです。

分類コマンド
確認vgdisplay
vgscan
vgs
 
# vgdisplay
  Devices file sys_wwid t10.ATA_____VBOX_HARDDISK___________________________VBfe6722b5-cb934818_ PVID j45odoZaioytC2NY7IV29fnkGf8EkMAq last seen on /dev/sda2 not found.
  --- Volume group ---
  VG Name               VG01
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <2.00 GiB
  PE Size               4.00 MiB
  Total PE              511
  Alloc PE / Size       0 / 0
  Free  PE / Size       511 / <2.00 GiB
  VG UUID               BXvvsi-kvGg-ao7J-FzQy-PCb3-wUi3-mz7cxP

# vgscan
  Found volume group "VG01" using metadata type lvm2
# vgs
  VG   #PV #LV #SN Attr   VSize  VFree
  VG01   1   0   0 wz--n- <2.00g <2.00g

LV(論理ボリューム)作成

LV(論理ボリューム)を作成するコマンドは以下の通りです。

分類コマンド
設定lvcreate -l <数値%VG> -n <LV名> <VG名>
# lvcreate -l 100%VG -n lv_data VG01
  Logical volume "lv_data" created.

LV(論理ボリューム)設定確認

VG(ボリュームグループ)の設定を確認するコマンドは以下の通りです。

分類コマンド
確認lvscan
lvs
 
# lvscan
  ACTIVE            '/dev/VG01/lv_data' [<2.00 GiB] inherit
# lvs
  LV      VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv_data VG01 -wi-a----- <2.00g

FS(ファイルシステム)作成

FS(ファイルシステム)を作成するコマンドは以下の通りです。

分類コマンド
設定mkfs -t <ファイルシステムタイプ> <デバイス名>
 
# mkfs -t xfs /dev/VG01/lv_data
meta-data=/dev/VG01/lv_data      isize=512    agcount=4, agsize=130816 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1
data     =                       bsize=4096   blocks=523264, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

FS(ファイルシステム)タイプ確認

FS(ファイルシステム)の設定を確認するコマンドは以下の通りです。

分類コマンド
確認blkid | grep <VG名>-<LV名>
 
# blkid | grep VG01-lv_data
/dev/mapper/VG01-lv_data: UUID="80171b08-4f92-479a-977d-5e209befc747" TYPE="xfs"

FS(ファイルシステム)マウント

FS(ファイルシステム)をマウントするコマンドは以下の通りです。

分類コマンド
一時設定mount <デバイス名> <マウントポイント>
 
# mount /dev/mapper/VG01-lv_data /data

FS(ファイルシステム)マウント確認

FS(ファイルシステム)のマウントを確認するコマンドは以下の通りです。

分類コマンド
確認df -Th
 
# df -Th
ファイルシス             タイプ   サイズ  使用  残り 使用% マウント位置
devtmpfs                 devtmpfs   4.0M     0  4.0M    0% /dev
tmpfs                    tmpfs      634M     0  634M    0% /dev/shm
tmpfs                    tmpfs      254M  3.7M  250M    2% /run
/dev/mapper/rhel-root    xfs         17G   11G  6.7G   61% /
/dev/sda1                xfs       1014M  217M  798M   22% /boot
tmpfs                    tmpfs      127M     0  127M    0% /run/user/0
/dev/mapper/VG01-lv_data xfs        2.0G   47M  2.0G    3% /data

FS(ファイルシステム)自動マウント設定

FS(ファイルシステム)が自動マウントされるように設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
確認vi /etc/fstab

追記→<デバイス名> <マウントポイント> <ファイルシステムタイプ> <各種オプション> 0 0
systemctl daemon-reload
 
# vi /etc/fstab
----------ここから----------
#
# /etc/fstab
# Created by anaconda on Sun Feb 19 13:28:42 2023
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/rhel-root   /                       xfs     defaults        0 0
UUID=fcaf481d-ce08-4138-8804-c4994f66a470 /boot                   xfs     defaul
ts        0 0
/dev/mapper/rhel-swap   none                    swap    defaults        0 0
/dev/mapper/VG01-lv_data /data                  xfs     defaults        0 0
----------ここまで----------
# systemctl daemon-reload

ユーザー・グループ設定

グループ作成

グループを作成するコマンドは以下の通りです。

分類コマンド
設定groupadd -g <グループID> <グループ名>
 
# groupadd -g 2000 mwgroup

グループ確認

グループを確認するコマンドは以下の通りです。

分類コマンド
確認cat /etc/group | grep <グループ名>
 
# cat /etc/group | grep mwgroup
mwgroup:x:2000:

ユーザー作成

ユーザープを作成するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定useradd -u <ユーザーID> -g <プライマリグループ名> [-G <その他グループ,…>] -s <ログインシェル> -d <ホームディレクトリ> <ユーザー名>
※-Gオプションは、セカンダリグループがあれば使用
 
# useradd -u 2000 -g mwgroup -s /bin/bash -d /home/mwuser01 mwuser01

ユーザー確認

ユーザーを確認するコマンドは以下の通りです。

分類コマンド
確認cat /etc/passwd | grep <ユーザー名>
 
# cat /etc/passwd | grep mwuser01
mwuser01:x:2000:2000::/home/mwuser01:/bin/bash

パスワード設定

パスワードを設定するコマンドは以下の通りです。

分類コマンド
設定echo '<任意のパスワード>' | passwd --stdin <ユーザー名>
 
# echo 'P@ssw0rd' | passwd --stdin mwuser01
ユーザー mwuser01 のパスワードを変更。
passwd: すべての認証トークンが正しく更新できました。

ディレクトリ・ファイル設定

ディレクトリ作成

ディレクトリを作成するコマンドは以下の通りです。

分類コマンド
設定mkdir -pvm <パーミッション> <ディレクトリパス>
 
# mkdir -pvm 0777 /tmp/testdir
mkdir: ディレクトリ '/tmp/testdir' を作成しました

ディレクトリ・ファイル所有権設定(ユーザー所有権・グループ所有権)

ディレクトリのユーザ所有権、グループ所有権を変更するコマンドは以下の通りです。

分類コマンド
設定chown -v <ユーザ名>:<グループ名> <パス>
 
# chown -v testuser01:testgroup /tmp/testdir
'/tmp/testdir' の所有者を root:root から testuser01:testgroup へ変更しました

ディレクトリ・ファイル権限設定

ディレクトリ、ファイルの権限を変更するコマンドは以下の通りです。

分類コマンド
設定chmod -v <パーミッション> <パス>
 
# chmod -v 755 /tmp/testdir
'/tmp/testdir' のモードを 0777 (rwxrwxrwx) から 0755 (rwxr-xr-x) へ変更しました

ディレクトリ・ファイル情報確認

ディレクトリ・ファイルの情報を確認するコマンドは以下の通りです。

分類コマンド
確認ls -ld <ディレクトリパス>
ls -l <ファイルパス>
 
# ls -ld /tmp/testdir
drwxrwxrwx 2 root root 24  4月 22 13:23 /tmp/testdir
# ls -l /tmp/testdir/test01.txt
-rw-r--r-- 1 root root 0  4月 22 13:23 /tmp/testdir/test01.txt

サービス設定

サービス自動起動設定(有効化・無効化)

サービスを自動起動を設定コマンドは以下の通りです。

分類コマンド
設定(有効化)systemctl enable <サービス名>
設定(無効化)systemctl disable <サービス名>
 
# systemctl enable firewalld.service
Created symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service → /usr/lib/systemd/system/firewalld.service.
Created symlink /etc/systemd/system/multi-user.target.wants/firewalld.service → /usr/lib/systemd/system/firewalld.service.
# systemctl disable firewalld.service
Removed "/etc/systemd/system/multi-user.target.wants/firewalld.service".
Removed "/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service".

サービス自動起動設定確認

サービスを自動起動設定を確認するコマンドは以下の通りです。

分類コマンド
設定systemctl is-enabled <サービス名>
 
# systemctl is-enabled firewalld.service
disabled

サービス起動・停止・再起動・ステータス確認

サービスを起動、再起動、停止、無効化、確認するコマンドは以下の通りです。

分類コマンド
起動systemctl start <サービス名>
再起動systemctl restart <サービス名>
停止systemctl stop <サービス名>
無効化systemctl mask <サービス名>
ステータス確認systemctl status <サービス名>
 
# systemctl start firewalld.service
# systemctl restart firewalld.service
# systemctl stop firewalld.service
# systemctl mask firewalld.service
Created symlink /etc/systemd/system/firewalld.service → /dev/null.
# systemctl status firewalld.service
○ firewalld.service
     Loaded: masked (Reason: Unit firewalld.service is masked.)
     Active: inactive (dead)

 4月 23 14:06:19 TEST02 systemd[1]: Starting firewalld - dynamic firewall daemo>
 4月 23 14:06:19 TEST02 systemd[1]: Started firewalld - dynamic firewall daemon.
 4月 23 14:06:24 TEST02 systemd[1]: Stopping firewalld - dynamic firewall daemo>
 4月 23 14:06:24 TEST02 systemd[1]: firewalld.service: Deactivated successfully.
 4月 23 14:06:24 TEST02 systemd[1]: Stopped firewalld - dynamic firewall daemon.
 4月 23 14:06:32 TEST02 systemd[1]: Starting firewalld - dynamic firewall daemo>
 4月 23 14:06:33 TEST02 systemd[1]: Started firewalld - dynamic firewall daemon.
 4月 23 14:06:34 TEST02 systemd[1]: Stopping firewalld - dynamic firewall daemo>
 4月 23 14:06:34 TEST02 systemd[1]: firewalld.service: Deactivated successfully.
 4月 23 14:06:34 TEST02 systemd[1]: Stopped firewalld - dynamic firewall daemon.

時刻同期設定

時刻同期設定(chrony)

時刻同期を設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定vi /etc/chrony.conf
追記→server <時刻同期先(IPアドレスorホスト名)>
systemctl enable chronyd.service
systemctl restart chronyd.service
 
# vi /etc/chrony.conf
----------ここから----------
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (https://www.pool.ntp.org/join.html).
#pool 2.rhel.pool.ntp.org iburst
server ntp.nict.jp

# Use NTP servers from DHCP.
sourcedir /run/chrony-dhcp

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
#allow 192.168.0.0/16

# Serve time even if not synchronized to a time source.
#local stratum 10

# Require authentication (nts or key option) for all NTP sources.
#authselectmode require

# Specify file containing keys for NTP authentication.
keyfile /etc/chrony.keys

# Save NTS keys and cookies.
ntsdumpdir /var/lib/chrony

# Insert/delete leap seconds by slewing instead of stepping.
#leapsecmode slew

# Get TAI-UTC offset and leap seconds from the system tz database.
leapsectz right/UTC

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking
----------ここまで----------
# systemctl enable chronyd.service
Created symlink /etc/systemd/system/multi-user.target.wants/chronyd.service → /usr/lib/systemd/system/chronyd.service.
# systemctl restart chronyd.service

時刻同期確認(chrony)

時刻同期を確認するコマンドは以下の通りです。

分類コマンド
確認chronyc sources
 
# chronyc sources
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
========================================================
^* ntp.nict.jp          1   3   111    23  -1000us[ -100ms] +/-   10ms

カーネルパラメータ設定

カーネルパラメータ設定

カーネルパラメータを設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定vi /etc/sysctl.d/<ファイル名>
追記→<カーネルパラメータ>=<設定値>
sysctl -p /etc/sysctl.d/<ファイル名>
 
# vi /etc/sysctl.d/add_kernelpara.conf
kernel.shmmax=4294967295
# sysctl -p /etc/sysctl.d/add_kernelpara.conf
kernel.shmmax = 4294967295

カーネルパラメータ設定確認

カーネルパラメータ設定を確認するコマンドは以下の通りです。

分類コマンド
確認sysctl <カーネルパラメータ>
 
# sysctl kernel.shmmax
kernel.shmmax = 4294967295

環境変数設定

共通プロファイル設定

全ユーザー共通の環境変数を設定するコマンドは以下の通りです。

分類コマンド
設定vi /etc/profile
追記→export <環境変数名>=<パラメータ>
source /etc/profile
 
# vi /etc/profile
----------ここから----------
# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

pathmunge () {
    case ":${PATH}:" in
        *:"$1":*)
            ;;
        *)
            if [ "$2" = "after" ] ; then
                PATH=$PATH:$1
            else
                PATH=$1:$PATH
            fi
    esac
}


if [ -x /usr/bin/id ]; then
    if [ -z "$EUID" ]; then
        # ksh workaround
        EUID=`/usr/bin/id -u`
        UID=`/usr/bin/id -ru`
    fi
    USER="`/usr/bin/id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
else
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
fi

HOSTNAME=$(/usr/bin/hostnamectl --transient 2>/dev/null) || \
HOSTNAME=$(/usr/bin/hostname 2>/dev/null) || \
HOSTNAME=$(/usr/bin/uname -n)

HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

unset i
unset -f pathmunge

if [ -n "${BASH_VERSION-}" ] ; then
        if [ -f /etc/bashrc ] ; then
                # Bash login shells run only /etc/profile
                # Bash non-login shells run only /etc/bashrc
                # Check for double sourcing is done in /etc/bashrc.
                . /etc/bashrc
       fi
fi

export MWPATH=/data
----------ここまで----------
# source /etc/profile

ユーザー別プロファイル設定

ユーザー別の環境変数を設定するコマンドは以下の通りです。

分類コマンド
設定vi ~/.bash_profile
追記→export <環境変数名>=<パラメータ>
source ~/.bash_profile
 
# vi /home/testuser01/.bash_profile
----------ここから----------
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

export JOBPATH=/job
----------ここまで----------
# source /home/testuser01/.bash_profile

環境変数確認

環境変数を確認するコマンドは以下の通りです。

分類コマンド
確認echo $<環境変数>
 
# echo $MWPATH
/data

名前解決設定

hosts設定

IPアドレスとホスト名を紐づけるコマンドは以下の通りです。

分類コマンド
設定vi /etc/hosts
追記→<IPアドレス> <ホスト名1> <ホスト名2...> #コメント
 
# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.56.102 TESTSRV01 TESTSRV01.com # テスト用サーバ#1

参照先DNSサーバー設定

参照するDNSサーバーを設定するコマンドは以下の通りです。

分類コマンド
設定vi /etc/NetworkManager/conf.d/90-dns-none.conf
追記→[main]
dns=none

systemctl reload NetworkManager
vi /etc/resolv.conf
追記→nameserver <参照先DNSサーバIPアドレス>
 
# vi /etc/NetworkManager/conf.d/90-dns-none.conf
[main]
dns=none
# systemctl reload NetworkManager
# vi /etc/resolv.conf
----------ここから----------
# Generated by NetworkManager
nameserver 192.168.56.222
----------ここまで----------

rsyslog設定

ファシリティ・プライオリティー表示設定

/var/log/messagesにファシリティとプライオリティーを出力するように設定するコマンドは以下の通りです。

スクロールできます
分類コマンド
設定vi /etc/rsyslog.conf
追記→$template rsyslog_template,"%timegenerated% %HOSTNAME% %syslogfacility-text%.%syslogseverity-text%: %syslogtag%%msg:::drop-last-lf%\n"
変更→*.info;mail.none;authpriv.none;cron.none /var/log/messages;rsyslog_template
rsyslogd -N 1
systemctl restart rsyslog.service
 
# vi /etc/rsyslog.conf
----------ここから----------
# rsyslog configuration file

# For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html
# or latest version online at http://www.rsyslog.com/doc/rsyslog_conf.html
# If you experience problems, see http://www.rsyslog.com/doc/troubleshoot.html

#### GLOBAL DIRECTIVES ####

# Where to place auxiliary files
global(workDirectory="/var/lib/rsyslog")

# Use default timestamp format
module(load="builtin:omfile" Template="RSYSLOG_TraditionalFileFormat")

# Include all config files in /etc/rsyslog.d/
include(file="/etc/rsyslog.d/*.conf" mode="optional")

#### MODULES ####

module(load="imuxsock"    # provides support for local system logging (e.g. via logger command)
       SysSock.Use="off") # Turn off message reception via local log socket;
                          # local messages are retrieved through imjournal now.
module(load="imjournal"             # provides access to the systemd journal
       StateFile="imjournal.state") # File to store the position in the journal
#module(load="imklog") # reads kernel messages (the same are read from journald)
#module(load="immark") # provides --MARK-- message capability

# Provides UDP syslog reception
# for parameters see http://www.rsyslog.com/doc/imudp.html
#module(load="imudp") # needs to be done just once
#input(type="imudp" port="514")

# Provides TCP syslog reception
# for parameters see http://www.rsyslog.com/doc/imtcp.html
#module(load="imtcp") # needs to be done just once
#input(type="imtcp" port="514")

#### RULES ####

# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.*                                                 /dev/console

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
$template rsyslog_template,"%timegenerated% %HOSTNAME% %syslogfacility-text%.%syslogseverity-text%: %syslogtag%%msg:::drop-last-lf%\n"
*.info;mail.none;authpriv.none;cron.none                /var/log/messages;rsyslog_template

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

# Log all the mail messages in one place.
mail.*                                                  -/var/log/maillog


# Log cron stuff
cron.*                                                  /var/log/cron

# Everybody gets emergency messages
*.emerg                                                 :omusrmsg:*

# Save news errors of level crit and higher in a special file.
uucp,news.crit                                          /var/log/spooler

# Save boot messages also to boot.log
local7.*                                                /var/log/boot.log


# ### sample forwarding rule ###
#action(type="omfwd"
# # An on-disk queue is created for this action. If the remote host is
# # down, messages are spooled to disk and sent when it is up again.
#queue.filename="fwdRule1"       # unique name prefix for spool files
#queue.maxdiskspace="1g"         # 1gb space limit (use as much as possible)
#queue.saveonshutdown="on"       # save messages to disk on shutdown
#queue.type="LinkedList"         # run asynchronously
#action.resumeRetryCount="-1"    # infinite retries if host is down
# # Remote Logging (we use TCP for reliable delivery)
# # remote_host is: name/ip, e.g. 192.168.0.1, port optional e.g. 10514
#Target="remote_host" Port="XXX" Protocol="tcp")
----------ここまで----------
# rsyslogd -N 1
rsyslogd: version 8.2102.0-105.el9, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.
# systemctl restart rsyslog.service
よかったらシェアしてね!
  • URLをコピーしました!
目次