AlmaLinux9.4 初期設定

おのぶた

2024年10月20日 05:50

AlmaLinux用の初期設定です

万人向けではありませんが・・・

備忘録として
日本語入力の設定をします。デスクトップ上の任意の場所で右クリックし、[設定] を開きます
左メニューで [Keyboard] を選択し、右ペインで [入力ソース] の項目の下の [+] ボタンをクリックします。
[日本語] をクリックします
[日本語 (Anthy)] を選択して [追加] ボタンをクリックします。
入力ソースの設定は以上

ーーーーーーーーーーーーーーー初期設定 : ファイアウォールーーーーーーーーーーーーーーーーーーー
ファイアウォールサービスの現在の状態を確認
systemctl status firewalld

ファイアウォールサービスを稼働させる場合、デフォルトではインバウンド通信はほぼ許可されていないため、 サーバーに設定/公開するサービス/アプリケーションに応じて、通信を許可する設定が必要になります
もし、自身のネットワーク内で、設定対象とするサーバーの上位にファイアウォール機器が設置されており、 サーバー側ではファイアウォールサービスは必要ないといった場合は、以下のようにして停止可能
systemctl stop firewalld
# 自動起動設定を無効にする
systemctl disable firewalld

ーーーーーーーーーーーー初期設定 : SELinuxーーーーーーーーーーーーーーーーーー
SELinux (Security-Enhanced Linux) の現在の状態
getenforce
Enforcing # SELinux は有効な状態

サーバーが安全な社内のみの利用である等の理由で SELinux を無効にしたいといった場合は、以下のように設定して無効化できます
# SELinux を無効にする
[root@localhost ~]# grubby --update-kernel ALL --args selinux=0
# 再起動して変更を有効にする
[root@localhost ~]# reboot
# SELinux 有効に戻す場合は以下 (変更後は要再起動)
[root@localhost ~]# grubby --update-kernel ALL --remove-args selinux # SELinux を無効にする

ーーーーーーーーーー初期設定 : システムを最新化するーーーーーーーーーーーーーーー
[root@dlp ~]# dnf -y upgrade

ーーーーーーーーーー初期設定 : リポジトリを追加するーーーーーーーーーーーーーーー
[root@dlp ~]# dnf -y install epel-release
[root@dlp ~]# dnf -y install epel-next-release

便利なパッケージを数多く提供する Remi's RPM repository を追加します
[root@dlp ~]# dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
レミのリポジトリを導入したらソフトウエアのセッティングでRemiを有効にする



ーーーーーーーーーー初期設定 : Web 管理コンソールを利用するーーーーーーーーーーー
Cockpit により、Web ブラウザーからサーバーの様々な設定管理を行うことができます
[root@dlp ~]# systemctl enable --now cockpit.socket

[root@dlp ~]# ss -napt

# Cockpit は 9090 をリスンする
ローカルホスト または 任意のクライアントコンピューターで Web ブラウザーを起動し、[https://(サーバーのホスト名 または IP アドレス):9090/] へアクセスします。アクセスすると以下のように Cockpit の ログイン画面が表示されます。任意のユーザーでログイン可能

詳細は
https://www.server-world.info/query?os=AlmaLinux_9&p=initial_conf&f=8


ーーーーーーーーーnftsフォーマットを扱えるようにするーーーーーーーーーーー
dnf -y install ntfs-3g

これでNTFSを普通に扱えるようになる。

ーーーーーーーーーフォルダ名を英語にする(ユーザーごとに)ーーーーーーーーーーーーーー
LANG=C xdg-user-dirs-gtk-update

ーーーーーーーーーインストールアプリーーーーーーーーーーーーーーーーーーーーーーーーー
以下Softwearから

inkspace
Gimp
写真
VM仮想マシンマネージャー
GParted
GNOMETweaks
アプリケーションファインダー
Okular
拡張機能

ーーーーーーーーSnapーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
パッケージマネージャのSnapをインストールします。
dnf install snapd

デフォルトでは起動されないため、以下のコマンドで有効にします
systemctl enable --now snapd.socket

snapdのサービス状況を確認
systemctl status snapd.socket

ちなみにsnapdでインストールしたパッケージの更新は以下のコマンド
sudo snap refresh



ーーーーーーーーJAVAーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ワークステーションでインストールするとJAVA11がインストールされる

旧版PACSはJAVA8が必要なので、インストールして切り替える
ルートになってから

yum install java-1.8.0-openjdk

which java

java -version

複数バージョンのJavaをJavaを切り替えて使う

alternatives --config
現在の状態を対話モードで確認

alternatives --config java
呼び出されるJVMを切り替え

ーーーーーーーーーMariaDBーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
[1] MariaDB をインストールして起動します。
dnf -y install mariadb-server
systemctl enable --now mariadb

[2] Firewalld を有効にしている 且つ リモートホストからも MariaDB を利用する場合はサービスの許可が必要です。MariaDB は [3306/TCP] を使用します。
firewall-cmd --add-service=mysql
firewall-cmd --runtime-to-permanent

[3] MariaDB の初期設定です。
mysql_secure_installation

# [Unix_Socket] 認証に切り替えるか否か
# [no] でも root のみ デフォルトで [Unix_Socket] 認証は有効
Switch to unix_socket authentication [Y/n] n

# MariaDB root パスワードを設定するか否か
# デフォルトで [Unix_Socket] 認証が有効となっているが
# root パスワードを設定すると パスワードでも root ログイン可能となる
# root パスワードを設定しない場合は OS の root ユーザーのみが MariaDB root ユーザーとしてログイン可
Change the root password? [Y/n] y

mysql
select user,host,password from mysql.user;
show databases;

[4] MariaDB の既存のデータを全て消去して初期化する場合は、以下のように実行します。
[root@www ~]# systemctl stop mariadb

[root@www ~]# rm -rf /var/lib/mysql/*

[root@www ~]# mysql_install_db --datadir=/var/lib/mysql --user=mysql

[root@www ~]# systemctl start mariadb

#############MariaDB 10.5 : バックアップ
[1] バックアップツールは通常 MariaDB Server と同時にインストールされますが、もしをインストールされていない場合は以下のようにしてインストールします
dnf -y install mariadb-backup

[2] バックアップを実行します。
例として、[/mnt/SSD2T/Mariabk] ディレクトリ配下にバックアップを取得します
mariabackup --backup --target-dir /mnt/SSD2T/MariaBK -u root
確認
ll /mnt/SSD2T/MariaBK

[3] バックアップしたデータを、他ホスト上の MariaDB サーバーへリストア
事前にバックアップしたデータを [tar] でまとめるなり [rsync] でそのまま転送する等して、バックアップデータをリストア先サーバーに転送しておいてください。
# MariaDB を停止して既存データは削除
systemctl stop mariadb
rm -rf /var/lib/mysql/*

# 転送したバックアップデータ

[root@node01 ~]# ll mariadb_backup.tar.gz

-rw-r--r--. 1 root root 408867 Mar 17 13:58 mariadb_backup.tar.gz
[root@node01 ~]# tar zxvf mariadb_backup.tar.gz

# リストア事前タスク実行 : [completed OK] であれば OK

[root@node01 ~]# mariabackup --prepare --target-dir /root/mariadb_backup

mariabackup based on MariaDB server 10.5.13-MariaDB Linux (x86_64)
[00] 2022-03-17 14:04:21 cd to /root/mariadb_backup/
[00] 2022-03-17 14:04:21 open files limit requested 0, set to 1024
[00] 2022-03-17 14:04:21 This target seems to be not prepared yet.
[00] 2022-03-17 14:04:21 mariabackup: using the following InnoDB configuration for recovery:
[00] 2022-03-17 14:04:21 innodb_data_home_dir = .
[00] 2022-03-17 14:04:21 innodb_data_file_path = ibdata1:12M:autoextend
[00] 2022-03-17 14:04:21 innodb_log_group_home_dir = .
[00] 2022-03-17 14:04:21 InnoDB: Using Linux native AIO
[00] 2022-03-17 14:04:21 Starting InnoDB instance for recovery.
[00] 2022-03-17 14:04:21 mariabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
2022-03-17 14:04:21 0 [Note] InnoDB: Uses event mutexes
2022-03-17 14:04:21 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2022-03-17 14:04:21 0 [Note] InnoDB: Number of pools: 1
2022-03-17 14:04:21 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
2022-03-17 14:04:21 0 [Note] InnoDB: Using Linux native AIO
2022-03-17 14:04:21 0 [Note] InnoDB: Initializing buffer pool, total size = 104857600, chunk size = 104857600
2022-03-17 14:04:21 0 [Note] InnoDB: Completed initialization of buffer pool
2022-03-17 14:04:21 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=47586,47586
[00] 2022-03-17 14:04:22 Last binlog file , position 0
[00] 2022-03-17 14:04:22 completed OK!

# リストア実行

[root@node01 ~]# mariabackup --copy-back --target-dir /root/mariadb_backup

mariabackup based on MariaDB server 10.5.13-MariaDB Linux (x86_64)
[01] 2022-03-17 14:04:35 Copying ibdata1 to /var/lib/mysql/ibdata1
[01] 2022-03-17 14:04:35 ...done
[01] 2022-03-17 14:04:35 Copying ./mysql/innodb_table_stats.ibd to /var/lib/mysql/mysql/innodb_table_stats.ibd
[01] 2022-03-17 14:04:35 ...done
[01] 2022-03-17 14:04:35 Copying ./mysql/innodb_index_stats.ibd to /var/lib/mysql/mysql/innodb_index_stats.ibd
[01] 2022-03-17 14:04:35 ...done
[01] 2022-03-17 14:04:35 Copying ./mysql/transaction_registry.ibd to /var/lib/mysql/mysql/transaction_registry.ibd
[01] 2022-03-17 14:04:35 ...done


--------------OpenLDAP--------------------------------------------------
[1] OpenLDAP をインストールします。
# EPEL からインストール

[root@dlp ~]# dnf --enablerepo=epel -y install openldap-servers openldap-clients
[root@dlp ~]# systemctl enable --now slapd

[2] OpenLDAP の管理者パスワードを設定します。
# 管理者パスワード生成

[root@dlp ~]# slappasswd

New password:
Re-enter new password:
{SSHA}xxxxxxxxxxxxxxxxxxxxxxxx
[root@dlp ~]# vi chrootpw.ldif
# olcRootPW に生成した管理者パスワードを指定する

dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}xxxxxxxxxxxxxxxxxxxxxxxx

[root@dlp ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={0}config,cn=config"

[3] 基本的なスキーマを読み込んでおきます。
[root@dlp ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=cosine,cn=schema,cn=config"

[root@dlp ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=nis,cn=schema,cn=config"

[root@dlp ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=inetorgperson,cn=schema,cn=config"

[4] 自身のドメイン名を設定します。
# ディレクトリマネージャーのパスワード生成

[root@dlp ~]# slappasswd

New password:
Re-enter new password:
{SSHA}xxxxxxxxxxxxxxxxxxxxxxxx
[root@dlp ~]# vi chdomain.ldif
# [dc=***,dc=***] は自身のドメイン名に置き換え
# olcRootPW に生成したディレクトリマネージャーのパスワードを指定

dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth"
read by dn.base="cn=Manager,dc=srv,dc=world" read by * none

dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=srv,dc=world

dn: olcDatabase={2}mdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=Manager,dc=srv,dc=world

dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}xxxxxxxxxxxxxxxxxxxxxxxx

dn: olcDatabase={2}mdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by
dn="cn=Manager,dc=srv,dc=world" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=srv,dc=world" write by * read

[root@dlp ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={1}monitor,cn=config"

modifying entry "olcDatabase={2}mdb,cn=config"

modifying entry "olcDatabase={2}mdb,cn=config"

modifying entry "olcDatabase={2}mdb,cn=config"

modifying entry "olcDatabase={2}mdb,cn=config"

[root@dlp ~]# vi basedomain.ldif
# dc=***,dc=*** は自身のドメイン名に置き換え

dn: dc=srv,dc=world
objectClass: top
objectClass: dcObject
objectclass: organization
o: Server World
dc: srv

dn: cn=Manager,dc=srv,dc=world
objectClass: organizationalRole
cn: Manager
description: Directory Manager

dn: ou=People,dc=srv,dc=world
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=srv,dc=world
objectClass: organizationalUnit
ou: Group

[root@dlp ~]# ldapadd -x -D cn=Manager,dc=srv,dc=world -W -f basedomain.ldif

Enter LDAP Password: # ディレクトリマネージャーのパスワード

adding new entry "dc=srv,dc=world"

adding new entry "cn=Manager,dc=srv,dc=world"

adding new entry "ou=People,dc=srv,dc=world"

adding new entry "ou=Group,dc=srv,dc=world"

[5]
SSL/TLS を設定しておきます。当例では自己署名の証明書を作成して進めます。
[6] Slapd に SSL/TLS を設定しておきます。
[root@dlp ~]# cp /etc/pki/tls/certs/{server.key,server.crt} /etc/openldap/certs/

[root@dlp ~]# chown ldap:ldap /etc/openldap/certs/{server.key,server.crt}
[root@dlp ~]# vi mod_ssl.ldif
# 新規作成

dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/server.crt
-
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/server.key

[root@dlp ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f mod_ssl.ldif

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=config"

[root@dlp ~]# systemctl restart slapd

[7] Firewalld を有効にしている場合は、LDAP サービスの許可が必要です。
[root@dlp ~]# firewall-cmd --add-service={ldap,ldaps}

success
[root@dlp ~]# firewall-cmd --runtime-to-permanent

success



あなたにおススメの記事
関連記事