Redhat変わった?(仮)AWS RedHatを自分好みにセットアップする

利用サービス・インスタンスタイプ・OS

AWS EC2の無料で利用できるインスタンスタイプで遊んでいます。

環境 : AWS

・利用サービス   : AWS EC2

・インスタンスタイプ: t2.micro (無料の範囲)

・OS : Red Hat 8.3

ホスト名設定

AWSで立ち上げたインスタンスにホスト名を設定したい。設定したい名前は「websv01」としよう。

設定後設定前
ホスト名websv01ip-172-31-1-11

まずは、現在のホスト名を確認。hostnameコマンドを実行する。

[ec2-user@ip-172-31-1-11 ~]$ hostname
ip-172-31-1-11.us-east-2.compute.internal

現在のホスト名は、設定したプライベートIPアドレスと、リージョン名から設定されている。

勉強用なので、このままでもいいんだけど、まぁ、せっかくだしホスト名を設定してみようかと。

前にさわった 6.4ぐらいの時は、/etc/hostsとか、/etc/network-scriptsの下のifcfgの中を書きかえて、ホスト名変更していたと思ったのだけど。。

/etc/hostsの中身は、これ。「ip-172-31-1-11」という表記がない。

[ec2-user@ip-172-31-1-11 ~]$ cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

[ec2-user@ip-172-31-1-11 ~]$ cat /etc/hostname
ip-172-31-1-11.us-east-2.compute.internal 

hostnamectlコマンドを使ってホスト名を設定する。

[ec2-user@ip-172-31-1-11 ~]$ sudo hostnamectl set-hostname --static websv01

hostnamectlコマンドでかくにん。

 [ec2-user@ip-172-31-1-11 ~]$ hostnamectl
    Static hostname: websv01
 Transient hostname: ip-172-31-1-11.us-east-2.compute.internal
          Icon name: computer-vm
            Chassis: vm
         Machine ID: 23eed40f6e5642378bb4adb512206fcf
            Boot ID: 3957818a8093428c9a19aa5bfbb5c3e1
     Virtualization: xen
   Operating System: Red Hat Enterprise Linux 8.3 (Ootpa)
        CPE OS Name: cpe:/o:redhat:enterprise_linux:8.3:GA
             Kernel: Linux 4.18.0-240.1.1.el8_3.x86_64
       Architecture: x86-64

再起動

プロンプトに設定したホスト名が表示された。

 [ec2-user@websv01 ~]$

hostnamectlコマンドの実行結果

[ec2-user@websv01 ~]$ hostnamectl
    Static hostname: websv01
          Icon name: computer-vm
            Chassis: vm
         Machine ID: 23eed40f6e5642378bb4adb512206fcf
            Boot ID: 812956c34ff7429fb880dbce0b9c30d2
     Virtualization: xen
   Operating System: Red Hat Enterprise Linux 8.3 (Ootpa)
        CPE OS Name: cpe:/o:redhat:enterprise_linux:8.3:GA
             Kernel: Linux 4.18.0-240.1.1.el8_3.x86_64
       Architecture: x86-64 

再起動後もStatic hostnameとしてホスト名が記録されている。

Transient Hostnameがなくなったのだが、いいのだろうか。これは、別途気になる点として調べてみよう。

ホスト名設定できた。

ついでにAWSコンソール上での表示名も変更しておこう。

SELINUX無効化

デフォルトでは、SELINUXが有効になっている。

 [ec2-user@ip-172-31-1-11 ~]$ more /etc/selinux/config

 # This file controls the state of SELinux on the system.
 # SELINUX= can take one of these three values:
 #     enforcing - SELinux security policy is enforced.
 #     permissive - SELinux prints warnings instead of enforcing.
 #     disabled - No SELinux policy is loaded.
 SELINUX=enforcing
 # SELINUXTYPE= can take one of these three values:
 #     targeted - Targeted processes are protected,
 #     minimum - Modification of targeted policy. Only selected processes are pro
 tected.
 #     mls - Multi Level Security protection.
 SELINUXTYPE=targeted

「enforcing」を「disable」に変更して再起動する。

[ec2-user@ip-172-31-1-11 ~]$ cd /etc/selinux/
[ec2-user@ip-172-31-1-11 selinux]$ ls
config  semanage.conf  targeted
 
[ec2-user@ip-172-31-1-11 selinux]$ sudo cp -p config config.20210502

[ec2-user@ip-172-31-1-11 selinux]$ ll
total 12
-rw-r--r--. 1 root root  548 Oct 31  2020 config
-rw-r--r--. 1 root root  548 Oct 31  2020 config.20210502
-rw-r--r--. 1 root root 2425 Jun 29  2020 semanage.conf
drwxr-xr-x. 5 root root  133 Oct 31  2020 targeted

[ec2-user@ip-172-31-1-11 selinux]$ sudo vi config
[ec2-user@ip-172-31-1-11 selinux]$ ll
total 12
-rw-r--r--. 1 root root  547 May  2 11:44 config
-rw-r--r--. 1 root root  548 Oct 31  2020 config.20210502
-rw-r--r--. 1 root root 2425 Jun 29  2020 semanage.conf
drwxr-xr-x. 5 root root  133 Oct 31  2020 targeted

[ec2-user@ip-172-31-1-11 selinux]$ cat config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted


[ec2-user@ip-172-31-1-11 selinux]$ sudo reboot
Connection to 52.15.203.200 closed by remote host.

再起動後、Selinuxの状態確認。「Disabled」となっていたら意図通りの設定となっている。

[ec2-user@ip-172-31-1-11 ~]$ getenforce
Disabled

SE LINUXを無効化できました。

IPv6無効化

IPv4しか使わないので、 IPv6を無効化する。

IPv6を無効化しなくても問題はないのだが、仕事で、IPv6を無効化して作ってくれと言われることがあるので、一回やっておこうと思う。

まぁ、個人的にも無意味に ::1 でListenしているサービスが立ち上がっていると気持ち悪く感じてしまうのだが、この考えは古いのだろうか。。

[失敗] nmcliコマンドを使って [できなかった]

前はsysctlコマンドで設定した記憶があるが、今は、nmcliコマンドでipv6無効化をするそうだ。

設定変更前、IPv6設定入っている。

[ec2-user@websv01 ~]$ ip address show
 1: lo:  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: eth0:  mtu 9001 qdisc fq_codel state UP group default qlen 1000
     link/ether 02:c8:71:77:75:7e brd ff:ff:ff:ff:ff:ff
     inet 172.31.1.11/24 brd 172.31.1.255 scope global dynamic noprefixroute eth0
        valid_lft 2267sec preferred_lft 2267sec
     inet6 fe80::c8:71ff:fe77:757e/64 scope link
        valid_lft forever preferred_lft forever 

IPv6有効のため、数値は「0」。

[ec2-user@websv01 ~]$ cat /proc/sys/net/ipv6/conf/eth0/disable_ipv6
 0 

設定変更

[ec2-user@websv01 ~]$ nmcli connection show
 NAME         UUID                                  TYPE      DEVICE
 System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0
 ens3         80caddf5-1347-4246-827e-5e0146c7f2c5  ethernet  --

[ec2-user@websv01 ~]$ sudo nmcli connection modify ens3 ipv6.method "disabled"

a

[ec2-user@websv01 ~]$ sudo nmcli connection up ens3
Error: Connection activation failed: No suitable device found for this connection (device eth0 not available because profile is not compatible with device (mismatching interface name)).
[ec2-user@websv01 ~]$ nmcli connection show
NAME         UUID                                  TYPE      DEVICE
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0
ens3         80caddf5-1347-4246-827e-5e0146c7f2c5  ethernet  --

[ec2-user@websv01 ~]$ cat /proc/sys/net/ipv6/conf/eth0/disable_ipv6
0

nmcliを使ったやり方では、うまくできなかった。。。

[成功] sysctl.conf [できた]

/etc/sysctl.confにipv6無効化の設定 net.ipv6.conf.all.disable_ipv6 = 1 を追加。

[ec2-user@websv01 ~]$ more /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
net.ipv6.conf.all.disable_ipv6 = 1

設定を反映

[root@websv01 ~]# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1

設定は即時反映される。ip address showコマンドを打つと、ipv6表示されなくなった。

[root@websv01 ~]# ip address show
1: lo: 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
2: eth0: mtu 9001 qdisc fq_codel state UP group default qlen 1000
link/ether 02:c8:71:77:75:7e brd ff:ff:ff:ff:ff:ff
inet 172.31.1.11/24 brd 172.31.1.255 scope global dynamic noprefixroute eth0
valid_lft 2940sec preferred_lft 2940sec

再起動後にも設定が有効か確認するためリブート。

[root@websv01 ~]# reboot
Connection to 52.15.203.200 closed by remote host.
Connection to 52.15.203.200 closed.

再起動後もipv6無効の設定が活きていて、ipv6表示はされない。

[ec2-user@websv01 ~]$ ip address show
 1: lo:  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
 2: eth0:  mtu 9001 qdisc fq_codel state UP group default qlen 1000
     link/ether 02:c8:71:77:75:7e brd ff:ff:ff:ff:ff:ff
     inet 172.31.1.11/24 brd 172.31.1.255 scope global dynamic noprefixroute eth0
        valid_lft 3176sec preferred_lft 3176sec

ipv6の無効化できました。

ツールインストール

telnet

$ sudo yum -y install telnet

nslookup, dig

$ sudo yum -y install bind-utils

sar

$ sudo yum -y install sysstat
$ sudo service sysstat start

memstat

$ sudo yum -y install libmemcached

インストールはできたけど、コマンドを実行しても 「no service provided」とエラーが表示される。
また後で実行してみよう。

locate

$ sudo yum -y install mlocate
$ sudo updatedb

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です