忍者ブログ

◆当blogは、Linuxサーバ構築する際の実際の設定手順を個人的メモとして記載しております。LinuC試験の役に立つ情報があるかも…?

LinuC(Linux技術者認定資格)&リナックスサーバ構築設定事例

   

【Linux】インストール設定例

インストール時の画面サイズを1014x768に設定する場合
「Install Red Hat Enterprise Linux 8.8」の選択画面で「TAB」キー押下し、
オプション「inst.resolution=1024x768」 を追加入力して「Enter」キー押下する。




ディスク情報を確認するコマンド
[root@Anonymous ~]# df -hT
ファイルシス             タイプ   サイズ  使用  残り 使用% マウント位置
devtmpfs                 devtmpfs   874M     0  874M    0% /dev
tmpfs                    tmpfs      893M     0  893M    0% /dev/shm
tmpfs                    tmpfs      893M  8.8M  884M    1% /run
tmpfs                    tmpfs      893M     0  893M    0% /sys/fs/cgroup
/dev/mapper/VOL01-root   ext4        20G  2.0G   17G   11% /
/dev/mapper/VOL01-home   ext4       4.9G   24K  4.6G    1% /home
/dev/mapper/VOL03-backup ext4        16G   12G  3.4G   78% /backup
/dev/mapper/VOL02-var    ext4       4.9G  225M  4.4G    5% /var
/dev/nvme0n1p2           ext4       974M  177M  730M   20% /boot
/dev/nvme0n1p7           vfat       599M   12K  599M    1% /boot/efi
tmpfs                    tmpfs      179M     0  179M    0% /run/user/0
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# lsblk
NAME             MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0               11:0    1 11.3G  0 rom  
nvme0n1          259:0    0   50G  0 disk 
tqnvme0n1p1      259:1    0    2M  0 part 
tqnvme0n1p2      259:2    0    1G  0 part /boot
tqnvme0n1p3      259:3    0   25G  0 part 
x tqVOL01-root   253:0    0   20G  0 lvm  /
x mqVOL01-home   253:2    0    5G  0 lvm  /home
tqnvme0n1p4      259:4    0    1K  0 part 
tqnvme0n1p5      259:5    0   16G  0 part 
x mqVOL03-backup 253:3    0   16G  0 lvm  /backup
tqnvme0n1p6      259:6    0    5G  0 part 
x mqVOL02-var    253:4    0    5G  0 lvm  /var
tqnvme0n1p7      259:7    0  600M  0 part /boot/efi
mqnvme0n1p8      259:8    0  2.2G  0 part 
  mqVOL99-swap   253:1    0  2.2G  0 lvm  [SWAP]
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# lsblk -l
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0           11:0    1 11.3G  0 rom  
VOL01-root   253:0    0   20G  0 lvm  /
VOL99-swap   253:1    0  2.2G  0 lvm  [SWAP]
VOL01-home   253:2    0    5G  0 lvm  /home
VOL03-backup 253:3    0   16G  0 lvm  /backup
VOL02-var    253:4    0    5G  0 lvm  /var
nvme0n1      259:0    0   50G  0 disk 
nvme0n1p1    259:1    0    2M  0 part 
nvme0n1p2    259:2    0    1G  0 part /boot
nvme0n1p3    259:3    0   25G  0 part 
nvme0n1p4    259:4    0    1K  0 part 
nvme0n1p5    259:5    0   16G  0 part 
nvme0n1p6    259:6    0    5G  0 part 
nvme0n1p7    259:7    0  600M  0 part /boot/efi
nvme0n1p8    259:8    0  2.2G  0 part 
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# vgs
  VG    #PV #LV #SN Attr   VSize  VFree
  VOL01   1   2   0 wz--n- 25.00g 4.00m
  VOL02   1   1   0 wz--n-  5.00g    0 
  VOL03   1   1   0 wz--n- 16.00g    0 
  VOL99   1   1   0 wz--n- <2.24g    0 
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# lvs
  LV     VG    Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home   VOL01 -wi-ao----  5.00g                                                    
  root   VOL01 -wi-ao---- 20.00g                                                    
  var    VOL02 -wi-ao----  5.00g                                                    
  backup VOL03 -wi-ao---- 16.00g                                                    
  swap   VOL99 -wi-ao---- <2.24g                                                    
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# pvs
  PV             VG    Fmt  Attr PSize  PFree
  /dev/nvme0n1p3 VOL01 lvm2 a--  25.00g 4.00m
  /dev/nvme0n1p5 VOL03 lvm2 a--  16.00g    0 
  /dev/nvme0n1p6 VOL02 lvm2 a--   5.00g    0 
  /dev/nvme0n1p8 VOL99 lvm2 a--  <2.24g    0 
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# ls -l /dev/nvme*
crw-------. 1 root root 243, 0  9月  3 00:15 /dev/nvme0
brw-rw----. 1 root disk 259, 0  9月  3 00:15 /dev/nvme0n1
brw-rw----. 1 root disk 259, 1  9月  3 00:15 /dev/nvme0n1p1
brw-rw----. 1 root disk 259, 2  9月  3 00:15 /dev/nvme0n1p2
brw-rw----. 1 root disk 259, 3  9月  3 00:15 /dev/nvme0n1p3
brw-rw----. 1 root disk 259, 4  9月  3 00:15 /dev/nvme0n1p4
brw-rw----. 1 root disk 259, 5  9月  3 00:15 /dev/nvme0n1p5
brw-rw----. 1 root disk 259, 6  9月  3 00:15 /dev/nvme0n1p6
brw-rw----. 1 root disk 259, 7  9月  3 00:15 /dev/nvme0n1p7
brw-rw----. 1 root disk 259, 8  9月  3 00:15 /dev/nvme0n1p8
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# fdisk -l
ディスク /dev/nvme0n1: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x23e4a864
デバイス       起動 開始位置  終了位置   セクタ サイズ Id タイプ
/dev/nvme0n1p1          2048      6143     4096     2M 83 Linux
/dev/nvme0n1p2 *        6144   2103295  2097152     1G 83 Linux
/dev/nvme0n1p3       2103296  54548479 52445184    25G 8e Linux LVM
/dev/nvme0n1p4      54548480 104857599 50309120    24G  5 拡張領域
/dev/nvme0n1p5      54550528  88113151 33562624    16G 8e Linux LVM
/dev/nvme0n1p6      88115200  98609151 10493952     5G 8e Linux LVM
/dev/nvme0n1p7      98611200  99839999  1228800   600M ef EFI (FAT-12/16/32)
/dev/nvme0n1p8      99842048 104544255  4702208   2.2G 8e Linux LVM
ディスク /dev/mapper/VOL01-root: 20 GiB, 21474836480 バイト, 41943040 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/VOL99-swap: 2.2 GiB, 2403336192 バイト, 4694016 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/VOL01-home: 5 GiB, 5368709120 バイト, 10485760 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/VOL03-backup: 16 GiB, 17179869184 バイト, 33554432 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク /dev/mapper/VOL02-var: 5 GiB, 5368709120 バイト, 10485760 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# vgdisplay -v
  --- Volume group ---
  VG Name               VOL99
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <2.24 GiB
  PE Size               4.00 MiB
  Total PE              573
  Alloc PE / Size       573 / <2.24 GiB
  Free  PE / Size       0 / 0   
  VG UUID               L4F0QI-fYgG-7fXz-PFwJ-uAgW-Xdvv-311yHH
   
  --- Logical volume ---
  LV Path                /dev/VOL99/swap
  LV Name                swap
  VG Name                VOL99
  LV UUID                TrkCIh-3W7u-aLt0-pHxq-cBCx-D9HV-5BhApt
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:15 +0900
  LV Status              available
  # open                 2
  LV Size                <2.24 GiB
  Current LE             573
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Physical volumes ---
  PV Name               /dev/nvme0n1p8     
  PV UUID               iYr0x8-NYcT-byg5-43bZ-Xlhc-R7Nk-qPyRfl
  PV Status             allocatable
  Total PE / Free PE    573 / 0
   
  --- Volume group ---
  VG Name               VOL02
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               5.00 GiB
  PE Size               4.00 MiB
  Total PE              1280
  Alloc PE / Size       1280 / 5.00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               haQA54-cKZV-G2Z2-KqmU-OKPi-mVhC-Ee09Ho
   
  --- Logical volume ---
  LV Path                /dev/VOL02/var
  LV Name                var
  VG Name                VOL02
  LV UUID                0weRxa-3ZhL-8NfP-HVW0-WX4y-48bP-az5Ta3
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:13 +0900
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:4
   
  --- Physical volumes ---
  PV Name               /dev/nvme0n1p6     
  PV UUID               opO8bS-YEl2-dfrS-4vrq-2poY-yRY2-xxjgiH
  PV Status             allocatable
  Total PE / Free PE    1280 / 0
   
  --- Volume group ---
  VG Name               VOL03
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               16.00 GiB
  PE Size               4.00 MiB
  Total PE              4096
  Alloc PE / Size       4096 / 16.00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               DOl6Ox-Yzk7-YcE3-j29y-GEKy-gnF7-wgGype
   
  --- Logical volume ---
  LV Path                /dev/VOL03/backup
  LV Name                backup
  VG Name                VOL03
  LV UUID                IqA4Og-rRVW-fvHY-wbZO-rxC9-1WEc-aX69Qg
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:11 +0900
  LV Status              available
  # open                 1
  LV Size                16.00 GiB
  Current LE             4096
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3
   
  --- Physical volumes ---
  PV Name               /dev/nvme0n1p5     
  PV UUID               VXSugi-4GFK-Ls5h-qGYR-wGtH-6Poh-tJJOUx
  PV Status             allocatable
  Total PE / Free PE    4096 / 0
   
  --- Volume group ---
  VG Name               VOL01
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               25.00 GiB
  PE Size               4.00 MiB
  Total PE              6401
  Alloc PE / Size       6400 / 25.00 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               kT3dVK-E599-mYjM-eef8-sXVd-EtLV-eWTvwN
   
  --- Logical volume ---
  LV Path                /dev/VOL01/home
  LV Name                home
  VG Name                VOL01
  LV UUID                0E3g94-xUH3-bzVE-bgum-0zVt-xAF4-9KFGLe
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:16 +0900
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
   
  --- Logical volume ---
  LV Path                /dev/VOL01/root
  LV Name                root
  VG Name                VOL01
  LV UUID                SwsvPI-szeu-Fzui-0VuL-rbUO-ha6c-2ejHdc
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:17 +0900
  LV Status              available
  # open                 1
  LV Size                20.00 GiB
  Current LE             5120
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  --- Physical volumes ---
  PV Name               /dev/nvme0n1p3     
  PV UUID               Zg950Q-rVfH-kHdG-PRL7-IxEH-kY9y-L5IdIe
  PV Status             allocatable
  Total PE / Free PE    6401 / 1
   
[root@Anonymous ~]# 
[root@Anonymous ~]# 
[root@Anonymous ~]# lvdisplay -v
  --- Logical volume ---
  LV Path                /dev/VOL99/swap
  LV Name                swap
  VG Name                VOL99
  LV UUID                TrkCIh-3W7u-aLt0-pHxq-cBCx-D9HV-5BhApt
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:15 +0900
  LV Status              available
  # open                 2
  LV Size                <2.24 GiB
  Current LE             573
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/VOL02/var
  LV Name                var
  VG Name                VOL02
  LV UUID                0weRxa-3ZhL-8NfP-HVW0-WX4y-48bP-az5Ta3
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:13 +0900
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:4
   
  --- Logical volume ---
  LV Path                /dev/VOL03/backup
  LV Name                backup
  VG Name                VOL03
  LV UUID                IqA4Og-rRVW-fvHY-wbZO-rxC9-1WEc-aX69Qg
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:11 +0900
  LV Status              available
  # open                 1
  LV Size                16.00 GiB
  Current LE             4096
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3
   
  --- Logical volume ---
  LV Path                /dev/VOL01/home
  LV Name                home
  VG Name                VOL01
  LV UUID                0E3g94-xUH3-bzVE-bgum-0zVt-xAF4-9KFGLe
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:16 +0900
  LV Status              available
  # open                 1
  LV Size                5.00 GiB
  Current LE             1280
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
   
  --- Logical volume ---
  LV Path                /dev/VOL01/root
  LV Name                root
  VG Name                VOL01
  LV UUID                SwsvPI-szeu-Fzui-0VuL-rbUO-ha6c-2ejHdc
  LV Write Access        read/write
  LV Creation host, time Anonymous, 2024-09-02 23:45:17 +0900
  LV Status              available
  # open                 1
  LV Size                20.00 GiB
  Current LE             5120
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
PR

【Linux】anonymous FTP設定

#=============================
# ディレクトリ権限の設定
#-----------------------------
chmod 777 /var/ftp/pub
ls -ld /var/ftp/pub
#=============================
# /etc/vsftpd/vsftpd.conf
#-----------------------------
vi /etc/vsftpd/vsftpd.conf
  # anonymous/IPv4有効、IPv6無効
  ★  anonymous_enable=YES
  ★  anon_upload_enable=YES
  ★  local_enable=NO
      write_enable=YES
      local_umask=022
      dirmessage_enable=YES
      xferlog_enable=YES
      connect_from_port_20=YES
      xferlog_std_format=YES
  ★  listen=YES
  ★  listen_ipv6=NO
      pam_service_name=vsftpd
      userlist_enable=YES
  # アスキーモード/ダウンロードの許可
  ★  ascii_download_enable=YES
  ★  ascii_upload_enable=YES
  ★  download_enable=YES
      dirlist_enable=YES
      hide_ids=YES
      force_dot_files=YES
  # マスク値の設定変更
  ★  file_open_mode=0777
  ★  local_umask=000
  # パッシブポート/ローカルタイム等
  ★  pasv_max_port=70010
  ★  pasv_min_port=70000
  ★  tcp_wrappers=NO
  ★  use_localtime=YES
  ★  virtual_use_local_privs=YES
  # anonymous追加設定
  ★  anon_upload_enable=YES
  ★  anon_other_write_enable=YES
  ★  anon_mkdir_write_enable=YES
  ★  anon_umask=000
  ★  no_anon_password=YES
#=============================
# vsftpdサービス起動
#-----------------------------
systemctl restart vsftpd
#=============================
# 匿名FTP接続テスト
#-----------------------------
ftp -A 192.168.222.3
  Connected to 192.168.222.3 (192.168.222.3).
  220 (vsFTPd 3.0.3)
  Name (192.168.222.3:root): anonymous
  230 Login successful.
  Remote system type is UNIX.
  Using binary mode to transfer files.
  ftp> ls
  200 PORT command successful. Consider using PASV.
  150 Here comes the directory listing.
  drwxrwxrwx    2 ftp      ftp          4096 Jan 07  2022 pub
  226 Directory send OK.
  ftp> pwd
  257 "/" is the current directory
  ftp> cd /pub
  250 Directory successfully changed.
  ftp> pwd
  257 "/pub" is the current directory
  ftp> put anon.txt
  local: anon.txt remote: anon.txt
  200 PORT command successful. Consider using PASV.
  150 Ok to send data.
  226 Transfer complete.
  5 bytes sent in 0.000107 secs (46.73 Kbytes/sec)
  ftp> exit
  221 Goodbye.

#=============================
# パッシブモードの項目の注意
#-----------------------------
# スイッチとFTP接続する場合は無効化
  pasv_address
  pasv_enable
  pasv_max_port
  pasv_min_port
  pasv_promiscuous

【Linux】cron用スクリプト

#!/bin/bash
###=============================
###【作業メモ】
### スクリプトの作成場所:/usr/local/bin/
### 実行コマンド:/usr/local/bin/SCRIPT_cron_backup.sh
### 対象ファイルのバックアップ
### 保存世代数は7個/保存対象外の世代は削除
### 毎日0時0分に実行
### crontab -e
### 0 0 * * * /usr/local/bin/SCRIPT_cron_backup.sh 2>&1 >/dev/null
###=============================
#-----------------------------
# 環境変数の設定
PATH=/usr/local/sbin:/usr/bin:/bin
#-----------------------------
#-----------------------------
# 日付取得
#-----------------------------
DATE_YYYYMMDD=`/bin/date --date '1 day ago' "+%Y%m%d"`
#-----------------------------
# バックアップ名
#-----------------------------
FILE_Name=BACKUP
#-----------------------------
# バックアップ名+日付
#-----------------------------
BACKUP_FILE_NAME=${FILE_Name}-${DATE_YYYYMMDD}
#-----------------------------
# ログファイルの場所
#-----------------------------
FILE_log=/usr/local/bin/script.log
#-----------------------------
# 対象ディレクトリ名
#-----------------------------
DIR_Target=/work/
#-----------------------------
# 保存場所のディレクトリ名
#-----------------------------
DIR_Output0=/backup/
DIR_Output1=/backup/${FILE_Name}
DIR_Output2=/backup/${BACKUP_FILE_NAME}
#-----------------------------
echo "=== バックアップ === 開始 ===" > $FILE_log 2>&1
#-----------------------------
#-----------------------------
# 毎日作成ディレクトリ(既に存在する場合はスキップ)
#-----------------------------
mkdir -p -m 777 ${DIR_Output1} >> ${FILE_log} 2>&1
mkdir -p -m 777 ${DIR_Output2} >> ${FILE_log} 2>&1
#-----------------------------
# 正規表現のパターンに該当するファイルだけをコピーする
#-----------------------------
\find ${DIR_Targe -name} "*_data*" | xargs -i cp -fp {} ${DIR_Output1} >> ${FILE_log} 2>&1
\find ${DIR_Targe -name} "*_data*" | xargs -i cp -fp {} ${DIR_Output2} >> ${FILE_log} 2>&1
#-----------------------------
# 古いバックアップを削除
#-----------------------------
cd ${DIR_Output0}
rm -fr `ls -t | grep "特定文字列1" | tail -n+8` >> ${FILE_log} 2>&1
rm -fr `ls -t | grep "特定文字列2" | tail -n+8` >> ${FILE_log} 2>&1
rm -fr `ls -t | grep "特定文字列3" | tail -n+8` >> ${FILE_log} 2>&1
#-----------------------------
echo "=== バックアップ === 終了 ===" >> ${FILE_log} 2>&1
#-----------------------------

【Linux】bonding設定②

#=============================
# ■ bonding設定
#-----------------------------
# 作業前の設定状態の確認
ls -l /etc/sysconfig/network-scripts/
nmcli c
nmcli d
#=============================
# コネクション名を変えずにbonding
#-----------------------------
# bonding デバイスの作成
nmcli connection add type bond autoconnect no con-name bond0 ifname bond0 mode active-backup
ls -l /etc/sysconfig/network-scripts/
nmcli c
nmcli d
#-----------------------------
# bonding にインタフェース追加
nmcli connection add type ethernet slave-type bond con-name ens161 ifname ens161 master bond0
nmcli connection add type ethernet slave-type bond con-name ens224 ifname ens224 master bond0
nmcli connection add type ethernet slave-type bond con-name ens256 ifname ens256 master bond0
#-----------------------------
# ネットワークのサービス再起動
systemctl restart NetworkManager
nmcli c up ens161
nmcli c up ens224
nmcli c up ens256
nmcli c up bond0
nmcli c
nmcli d
#=============================
# ■ bonding設定内容の確認
#-----------------------------
ls -l /etc/sysconfig/network-scripts/
cat /etc/sysconfig/network-scripts/ifcfg-ens161
cat /etc/sysconfig/network-scripts/ifcfg-ens224
cat /etc/sysconfig/network-scripts/ifcfg-ens256
cat /etc/sysconfig/network-scripts/ifcfg-bond0
diff /etc/sysconfig/network-scripts/ifcfg-ens161 /etc/sysconfig/network-scripts/ifcfg-ens224
diff /etc/sysconfig/network-scripts/ifcfg-ens161 /etc/sysconfig/network-scripts/ifcfg-ens256
nmcli c m bond0 ipv4.method manual ipv4.address 192.168.197.11/24 ipv4.gateway 192.168.222.11
nmcli c m bond0 ipv6.method ignore
nmcli c m bond0 connection.autoconnect yes
nmcli c m bond0 802-3-ethernet.auto-negotiate no 802-3-ethernet.speed 100 802-3-ethernet.duplex fulll
#-----------------------------
# ネットワークのサービス再起動
systemctl restart NetworkManager
nmcli c up bond0
#=============================
# ■ bonding設定内容の確認
#-----------------------------
ethtool bond0
cat /etc/sysconfig/network-scripts/ifcfg-bond0
nmcli c show bond0
ifconfig
ip a
#=============================
# slave 切替テスト
#-----------------------------
#【切替前】
cat /proc/net/bonding/bond0 | grep 'Active Slave:'
#-----------------------------
#【slave 切替実行】
ifenslave -c bond0 ens161 ;nmcli c up ens161
#-----------------------------
#【切替後】
cat /proc/net/bonding/bond0 | grep 'Active Slave:'
#-----------------------------
#【slave 切り戻し実行】
ifenslave -c bond0 ens256 ;nmcli c up ens256
ifenslave -c bond0 ens224 ;nmcli c up ens224
#-----------------------------
#【切り戻し後】
grep 'Active Slave:' /proc/net/bonding/bond0
#-----------------------------
#【Ping疎通確認】
ping -c 2 192.168.222.11
ping -c 2 192.168.197.11
#-----------------------------
#【ネットワークの経路確認】
ip route
route -n

【RHEL】ロック状態の確認

#=============================
# ■ PAM設定と認証確認テスト
#-----------------------------
#【設定】以下のファイルに設定する
# /etc/pam.d/system-auth、/etc/pam.d/password-auth
#-----------------------------
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth.Org
#-----------------------------
cp -p /etc/pam.d/password-auth /etc/pam.d/password-auth.Org
#-----------------------------
vi /etc/pam.d/system-auth
  ※以下を[auth]に追記
    auth        required                                     pam_faillock.so preauth silent audit deny=3 unlock_time=0
    auth        [success=1 default=bad]                      pam_unix.so
    auth        [default=die]                                pam_faillock.so authfail audit deny=3 unlock_time=0
    auth        sufficient                                   pam_faillock.so authsucc audit deny=3 unlock_time=0
  ※以下を[account]に追記
    account     required                                     pam_faillock.so
  ※以下のように[password]を変更する
    password    requisite                                    pam_pwquality.so try_first_pass retry=3 minlen=8 dcredit=-1
    password    sufficient                                   pam_unix.so      sha512 shadow nullok remember=5 try_first_
#-----------------------------
vi /etc/pam.d/password-auth
  ※「system-auth」と同様に設定する
#-----------------------------
diff /etc/pam.d/system-auth /etc/pam.d/system-auth.Org
cat /etc/pam.d/system-auth
#-----------------------------
diff /etc/pam.d/password-auth /etc/pam.d/password-auth.Org
cat /etc/pam.d/password-auth
#=============================
# ■ テスト用ユーザー作成(認証ロック)
#-----------------------------
useradd pamtest
passwd pamtest
  ⇒ Unixp@ssw0rd
#-----------------------------
useradd pamtest_2
passwd pamtest_2
  ⇒ Unixp@ssw0rd
#-----------------------------
# ログイン中のユーザー表示
who
#-----------------------------
# 認証ログイン状態確認(失敗無し)
faillock
faillock --user pamtest
#-----------------------------
# 認証ロックを手動解除
faillock --user pamtest --reset
#=============================
# ■ パスワード有効期限の設定
#-----------------------------
# パスワードの有効期限の情報を表示
chage -l pamtest
#-----------------------------
# パスワード有効期限を設定
# (無期限 ⇒ 99999)
passwd -x 100 pamtest
chage -M 100 pamtest
### #-----------------------------
### # ログイン時に強制パスワード変更
### passwd --expire [ユーザ名]
#-----------------------------
# パスワード変更可能な待ち日数
passwd -n 0 pamtest
chage -m 0 pamtest
#-----------------------------
# パスワードの期限切れ警告メッセージ設定
passwd -w 14 pamtest
chage -W 14 pamtest
#-----------------------------
#【初期状態】アカウントの状態の確認
passwd -S pamtest
#-----------------------------
# ユーザーをロックする
passwd -l pamtest
usermod -L pamtest
#-----------------------------
#【ロック後】アカウントの状態の確認
passwd -S pamtest
#-----------------------------
# ユーザーのロック解除
passwd -u pamtest
usermod -U pamtest
#-----------------------------
#【解除後】アカウントの状態の確認
passwd -S pamtest
#=============================
# パスワードの有効期限の設定値の確認
cat /etc/shadow | grep pamtest
#=============================
# ユーザー情報表示
cat /etc/passwd | grep pamtest
#=============================
# グループ情報表示
cat /etc/group | grep pamtest
#-----------------------------
# useraddデフォルト設定確認
useradd -D
#-----------------------------
# ユーザーにコメント情報追加
usermod -c "PAMテスト用ユーザー" pamtest
#-----------------------------
# ユーザーのID情報表示
id pamtest
#-----------------------------
# ユーザーの有効期限を設定
usermod -e 2024-08-17 pamtest
### #-----------------------------
### # ユーザーのホームディレクトリごと削除
### userdel -r pamtest

【Linux】ログ設定

#=============================
# 【共通設定】syslog 設定
# (対象ログファイルの指定)
#-----------------------------
ls -l /etc/logrotate.d/syslog
cat /etc/logrotate.d/syslog
vi /etc/logrotate.d/syslog
  ※対象ログをコメントアウトして除外
  # messages
cat /etc/logrotate.d/syslog | grep messages
#=============================
# 【共通設定】logrotate.confの設定
# (世代管理の間隔を変更)
#-----------------------------
ls -l /etc/logrotate.conf
cat /etc/logrotate.conf
vi /etc/logrotate.conf
  ※世代管理 ⇒ daily(日次)
  ※空ファイルでも必ずローテーション実行 ⇒ ifempty
cat /etc/logrotate.conf | egrep -v "(^$|^#)"
#=============================
# 【個別設定】wtmpの設定
# (共通設定以外の場合)
#-----------------------------
ls -l /etc/logrotate.d/wtmp
cat /etc/logrotate.d/wtmp
vi /etc/logrotate.d/wtmp
  ※全行、コメントアウトして除外※
  ※世代管理 ⇒ daily(日次)
cat /etc/logrotate.d/wtmp | egrep -v "(^$|^#)"
#=============================
# 【確認】ログファイルの出力場所
# (更新日時や世代数を見る)
#-----------------------------
ls -ltr /var/log/ | egrep "(messages|wtmp)"
ls -l /var/log/messages*
ls -l /var/log/wtmp*
ls -ltr /var/log/
#-----------------------------
# 【その他】ログの内容表示
# cat /var/log/messages
# strings /var/log/wtmp
#=============================
# 【テスト】ログ設定の動作確認
#-----------------------------
# debugモード実行で設定確認
/usr/sbin/logrotate -dv /etc/logrotate.conf
#-----------------------------
# 【テスト前】ステータス確認
cat /var/lib/logrotate/logrotate.status
#-----------------------------
# 強制的にログローテーション実行
/usr/sbin/logrotate -f /etc/logrotate.conf
#-----------------------------
# 【テスト後】ステータス確認
cat /var/lib/logrotate/logrotate.status
cat /var/lib/logrotate/logrotate.status | egrep "(messages|wtmp)"
#-----------------------------
# 【事前確認】/var/log/ の内容
ls -ltr /var/log/ | egrep "(messages|wtmp)" | sort
#-----------------------------
# ログファイルを無理やり世代数作る
# ※この後、強制的にログローテーションを実行してテストする
echo "testLOG" > /var/log/messages-20240801
echo "testLOG" > /var/log/messages-20240802
echo "testLOG" > /var/log/messages-20240803
echo "testLOG" > /var/log/messages-20240804
echo "testLOG" > /var/log/messages-20240805
echo "testLOG" > /var/log/messages-20240806
echo "testLOG" > /var/log/messages-20240807
echo "testLOG" > /var/log/messages-20240808
echo "testLOG" > /var/log/messages-20240809
echo "testLOG" > /var/log/messages-20240810
echo "testLOG" > /var/log/messages-20240811
echo "testLOG" > /var/log/messages-20240812
echo "testLOG" > /var/log/messages-20240813
echo "testLOG" > /var/log/messages-20240814
echo "testLOG" > /var/log/messages-20240815
echo "testLOG" > /var/log/messages-20240816
#-----------------------------
echo "testLOG" > /var/log/wtmp-20240801
echo "testLOG" > /var/log/wtmp-20240802
echo "testLOG" > /var/log/wtmp-20240803
echo "testLOG" > /var/log/wtmp-20240804
echo "testLOG" > /var/log/wtmp-20240805
echo "testLOG" > /var/log/wtmp-20240806
echo "testLOG" > /var/log/wtmp-20240807
echo "testLOG" > /var/log/wtmp-20240808
echo "testLOG" > /var/log/wtmp-20240809
echo "testLOG" > /var/log/wtmp-20240810
echo "testLOG" > /var/log/wtmp-20240811
echo "testLOG" > /var/log/wtmp-20240812
echo "testLOG" > /var/log/wtmp-20240813
echo "testLOG" > /var/log/wtmp-20240814
echo "testLOG" > /var/log/wtmp-20240815
echo "testLOG" > /var/log/wtmp-20240816
#-----------------------------
# 【事後確認】/var/log/ の内容
ls -ltr /var/log/ | egrep "(messages|wtmp)" | sort
#-----------------------------
# 強制的にログローテーション実行
/usr/sbin/logrotate -f /etc/logrotate.conf
#-----------------------------
# 【再度、事後確認】/var/log/ の内容
# (設定通りの結果になっているかを確認する)
ls -ltr /var/log/ | egrep "(messages|wtmp)" | sort

【Linux】802-3-ethernet設定

#=============================
# オートネゴシエーション無効、接続の速度を 100 Mbit フルデュプレックス
#-----------------------------
nmcli c m ens160 802-3-ethernet.auto-negotiate no 802-3-ethernet.speed 100 802-3-ethernet.duplex full
#-----------------------------
# アクティベート
nmcli c up ens160

【Linux】パスワードのロック

#=============================
# ■ パスワード有効期限の設定
#-----------------------------
#-----------------------------
# パスワードの有効期限の情報を表示
chage -l <ユーザ名>
#-----------------------------
# パスワードを変更しなくてよい最長日数
# 【例】100日間
chage -M 100 <ユーザ名>
#-----------------------------
# 最終パスワード変更日
# 【例】
chage -d 0 <ユーザ名>
chage -E YYYY-MM-DD <ユーザ名>
#-----------------------------
# 有効期限が切れたとき即座にロックアウト
chage -I 0 <ユーザ名>
#-----------------------------
# パスワード期限が切れる前に警告される日数
# 【例】14日前(2週間)
chage -W 14 <ユーザ名>
#=============================
# パスワードの有効期限の設定値の確認
cat /etc/shadow | grep <ユーザ名>
#=============================
# ■ テスト用ユーザー作成(パスワードロック)
#-----------------------------
useradd locktest
passwd locktest
⇒ Unixp@ssw0rd
#=============================
# パスワードのロック状態確認
passwd -S locktest
cat /etc/shadow | grep locktest
#-----------------------------
# パスワードのロック解除
passwd -u locktest
#-----------------------------
# パスワードのロック状態確認
passwd -S locktest
cat /etc/shadow | grep locktest

【Linux】認証ロックのテスト

#=============================
# ■ PAM設定と認証確認テスト
#-----------------------------
#【設定】以下のファイルに設定する
# /etc/pam.d/system-auth、/etc/pam.d/password-auth
#-----------------------------
#-----------------------------
#【auth セクション】
# ⇒以下の★行を2個追記
#-----------------------------
   auth        required                                     pam_env.so
   auth        required                                     pam_faildelay.so delay=2000000
   auth        [default=1 ignore=ignore success=ok]         pam_usertype.so isregular
   auth        [default=1 ignore=ignore success=ok]         pam_localuser.so
   auth        sufficient                                   pam_unix.so nullok try_first_pass
   auth        [default=1 ignore=ignore success=ok]         pam_usertype.so isregular
   auth        sufficient                                   pam_sss.so forward_pass
★ auth        required                                     pam_faillock.so preauth silent audit deny=3 unlock_time=0
★ auth        [success=1 default=bad]                      pam_unix.so
★ auth        [default=die]                                pam_faillock.so authfail audit deny=3 unlock_time=0
★ auth        sufficient                                   pam_faillock.so authsucc audit deny=3 unlock_time=0
   auth        required                                     pam_deny.so
#-----------------------------
#【account セクション】
# ⇒以下の★行を1個追記
#-----------------------------
   account     required                                     pam_unix.so
★ account     required                                     pam_faillock.so
   account     sufficient                                   pam_localuser.so
   account     sufficient                                   pam_usertype.so issystem
   account     [default=bad success=ok user_unknown=ignore] pam_sss.so
   account     required                                     pam_permit.so
#-----------------------------
#【password セクション】
#-----------------------------
★ password    requisite                                    pam_pwquality.so try_first_pass retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 enforce_for_root
## password    requisite                                    pam_cracklib.so  try_first_pass retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 enforce_for_root
★ password    sufficient                                   pam_unix.so      sha512 shadow nullok remember=5 try_first_pass use_authtok enforce_for_root
## password    required                                     pam_pwhistory.so sha512 shadow nullok remember=5 try_first_pass use_authtok enforce_for_root
   password    sufficient                                   pam_sss.so use_authtok
   password    required                                     pam_deny.so
#-----------------------------
#【session セクション】
#-----------------------------
   session     optional                                     pam_keyinit.so revoke
   session     required                                     pam_limits.so
   -session    optional                                     pam_systemd.so
   session     [success=1 default=ignore]                   pam_succeed_if.so service in crond quiet use_uid
   session     required                                     pam_unix.so
   session     optional                                     pam_sss.so
#=============================
# ■ テスト用ユーザー作成(認証ロック)
#-----------------------------
useradd pamtest
passwd pamtest
⇒ Unixp@ssw0rd
#-----------------------------
# 認証ログイン状態確認(失敗無し)
faillock
faillock --user pamtest
#-----------------------------
# ※わざと3回パスワード入力間違えて認証ロックさせる
su - pamtest
#-----------------------------
# 認証ログイン状態確認(3回失敗している)
faillock
faillock --user pamtest
#-----------------------------
# 認証ロックを手動解除
faillock --user pamtest --reset
#-----------------------------
# 認証ログイン状態確認(リセットされている)
faillock
faillock --user pamtest

【Linux】FTP設定

#=============================
# ■ FTPのインストール
#-----------------------------
dnf -y install vsftpd
#=============================
# ■ FTPの設定
#-----------------------------
vi /etc/vsftpd/vsftpd.conf
  ## chrootのローカルユーザ無効化
  chroot_local_user=NO
  ## chrootリスト有効化
  chroot_list_enable=YES
  ## chrootリストファイルの場所
  chroot_list_file=/etc/vsftpd/chroot_list
  ## userlist_fileの有効化(デフォルト値)
  userlist_enable=YES
  ## アクセスファイルの無効化
  tcp_wrappers=NO
  ## パッシブモード有効化
  pasv_enable=YES
  ## FTPサーバのIPアドレス設定
  pasv_address=192.168.222.50
  ## パッシブモードのポート設定
  pasv_min_port=30001
  pasv_max_port=30010
  ## ドットファイルも含めて一覧表示させる
  force_dot_files=YES
  ## ファイルのタイムスタンプ表示
  use_localtime=YES
  ## ユーザーの設定ファイル格納場所
  user_config_dir=/etc/vsftpd/user_conf
  ## 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
  allow_writeable_chroot=YES
#=============================
# ■ FTP接続用ユーザ作成
#-----------------------------
useradd testftp
#=============================
# ■ パスワード設定
#-----------------------------
passwd testftp
#=============================
# ■ FTP用のディレクトリchrootの設定
#-----------------------------
mkdir -p /var/www/FTP
chown testftp /var/www/FTP
chmod 755 /var/www/FTP
s -ld /var/www/FTP
#=============================
# ■ FTP接続用ユーザの登録
#-----------------------------
vi /etc/vsftpd/chroot_list
testftp
root
#=============================
# ■ chrootのディレクトリを設定する
#-----------------------------
mkdir /etc/vsftpd/user_conf
ls -l /etc/vsftpd/user_conf
#-----------------------------
vi /etc/vsftpd/user_conf/testftp
local_root=/var/www/FTP
#-----------------------------
vi /etc/vsftpd/user_conf/root
local_root=/var/www/FTP
#=============================
# ■ テスト用ファイル作成
#-----------------------------
cd /var/www/FTP
pwd
echo "FTP test" > FTP_test.txt
ls -l /var/www/FTP
#=============================
# ■ root接続の許可①
# /etc/vsftpd/ftpusersのrootをコメントアウト
#-----------------------------
vi /etc/vsftpd/ftpusers
  #root
#-----------------------------
cat /etc/vsftpd/ftpusers
#=============================
# ■ root接続の許可②
# /etc/vsftpd/user_listのrootをコメントアウト
#-----------------------------
vi /etc/vsftpd/user_list
  #root
#-----------------------------
cat /etc/vsftpd/user_list
#=============================
# ■ nftables/Firewallの無効化
#-----------------------------
#【firewalldのバックエンド確認】
#-----------------------------
cat /etc/firewalld/firewalld.conf | egrep -v "(^$|^#)" | grep "FirewallBackend"
#=============================
#【サービス状態確認】
#-----------------------------
systemctl status firewalld --no-pager
systemctl status nftables --no-pager
systemctl -t service list-unit-files | egrep "(iptables|nftables|firewalld)"
#=============================
#【ファイアウォール無効化】
#-----------------------------
systemctl disable firewalld
systemctl stop firewalld
#=============================
#【nftables無効化】
#-----------------------------
systemctl disable nftables
systemctl stop nftables
#=============================
#【サービス状態確認】
#-----------------------------
systemctl status firewalld --no-pager
systemctl status nftables --no-pager
systemctl -t service list-unit-files | egrep "(iptables|nftables|firewalld)"
#=============================
# ■ SELinux設定(設定反映に再起動が必要)
#-----------------------------
# 変更前のSELINUX
#-----------------------------
cat /etc/selinux/config | grep "SELINUX"
#=============================
#【GRUB2 メニューエントリーの確認】
#-----------------------------
cat /etc/default/grub | grep selinux=0
grubby --info=ALL | grep selinux=0
#=============================
#【SELinux設定確認】
#-----------------------------
sestatus | grep status
getenforce
#=============================
#【カーネルコマンドライン⇒SELinuxの無効化】
#-----------------------------
grubby --update-kernel ALL --args selinux=0
#=============================
#【再起動⇒SELinux設定反映】
#-----------------------------
reboot
#=============================
# ■ SELinux設定(再起動後の確認)
#-----------------------------
# 変更後のSELINUX
#-----------------------------
cat /etc/selinux/config | grep "SELINUX"
#=============================
#【GRUB2 メニューエントリーの確認】
#-----------------------------
cat /etc/default/grub | grep selinux=0
grubby --info=ALL | grep selinux=0
#=============================
#【SELinux設定確認】
#-----------------------------
sestatus | grep status
getenforce
#=============================
# ■ FTP サービス起動
#-----------------------------
systemctl status vsftpd
systemctl restart vsftpd
systemctl status vsftpd
#=============================
## ■ Windowsの端末からFTP接続を確認する
#-----------------------------
  ※Windowsのファイアウォール無効化しておく
>ftp 192.168.222.50
ユーザー ([FTPサーバーのIPアドレス]:(none)):testftp
331 Please specify the password.<パスワード>
230 Login successful.
ftp>pwd
ftp>ls
ftp>quit

更新日付

11 2025/12 01
S M T W T F S
1 2 3 4 5
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

RECOMMEND

プロフィール

HN:
Account
HP:
性別:
非公開
職業:
--- NODATA ---
趣味:
--- NODATA ---
自己紹介:
◆当blogは、Linuxサーバ構築する際の実際の設定手順を個人的メモとして記載しております。LinuC試験の役に立つ情報があるかも…?

リンク

<<前のページ  | HOME |  次のページ>>
Copyright ©  -- LinuC(Linux技術者認定資格)&リナックスサーバ構築設定事例 --  All Rights Reserved
Design by CriCri / Photo by Melonenmann / powered by NINJA TOOLS / 忍者ブログ / [PR]