GCPのドキュメントを読んでいたら、ふと目に留まったトピック。

【公式ドキュメント】標準的な CentOS イメージとの大きな違い(リンク先の下の方です)
https://cloud.google.com/compute/docs/images?hl=JA

GCPのCentOSと通常のCentOSとの違いが、公式ドキュメントで紹介されているとは。
普段触っていて何となく気づいていたこともあるのですが、改めてみると「そうだったのね!」みたいなこともあり。

重要な情報だと思ったので、いくつか引用してご紹介します。
見出しの下に私のコメントをつけました。

標準的な CentOS イメージとの大きな違い

Google Compute Engine に用意されている CentOS イメージは、標準的な CentOS イメージとは以下のような違いがあります。

パッケージはすべてイメージの日付に更新され、イメージには最新の CentOS ポイント リリースが反映されます。

これのことでしょう。

centosimage

Google Cloud SDK がインストールされています。

gcloudコマンドがデフォルトで使用可能になっているということですね。

IPv6 はまだ Compute Engine 上でサポートされていないため無効になっています。

IPv4だけなんですね。

DHCP は、5 分ではなく 10 秒ごとに再試行するよう設定されています。

この設定のことでしょう。

# cat /etc/dhclient.conf

# Set the dhclient retry interval to 10 seconds instead of 5 minutes.
retry 10;

 

retry timeはクライアントが DHCP サーバが存在しないと判断してから 再び DHCP サーバにアクセスを試みるまでの間に、経過するべき時間のことだそうです。

 

GRUB の設定にはアクセスできないため、高速ブートを強制するようブートのタイムアウトは 0 に設定されています。

GRUBとはlinuxの代表的なブートローダです。ブートローダとはハードディスクなどからOSを読み込んで起動するプログラムのこと。確かにIaasサービスで提供されているサーバではGRUBにはアクセスできませんよね。
でもこういうBIOSとか起動関係を触らなくていい気楽さはIaasのいいところだと思います。

 

SSH サーバーはインストールされ、有効になっています。

だからサーバ作成後すぐにSSH接続が可能になっているのですね。親切だなと思う。

 

SSH サーバー構成はパスワード認証を無効にするよう設定されている

デフォルトではパスワード認証は無効になっていますね。しかし設定を変えればパスワード認証もできるようになります。
google的には公開鍵認証を使ってねということなのでしょうか。

 

ServerAliveInterval と ClientAliveInterval は SSH の切断を防止するため 7 分に設定されており、SSH を介したルートログインは無効化されています。

# cat /etc/ssh/sshd_config

ClientAliveInterval 420
PermitRootLogin no

 

うん、確かにそうなってる! 7×60で420ね。
わりと7分ってあっという間で、気が付くとすぐssh切断されちゃう。

 

NTP サーバーは Compute Engine のメタデータ サーバーを使用するように設定されています。

ここの設定のことでしょう
#cat /etc/chrony.conf

2行目に”server metadata.google.internal iburst”の記述がありますね。
特に要件がなければタイムサーバの設定はこのままでよいでしょう。これまた親切だなと思いました。

 

自動更新は yum-cron を介して有効化されています。

設定ファイルを確認してみましょう。

# cat /etc/yum/yum-cron.conf

# Whether updates should be applied when they are available. Note
# that download_updates must also be yes for the update to be applied.
apply_updates = yes

 

# systemctl status yum-cron
● yum-cron.service – Run automatic yum updates as a cron job
Loaded: loaded (/usr/lib/systemd/system/yum-cron.service; enabled; vendor preset: disabled)
Active: active (exited) since 水 2018-09-12 10:55:05 JST; 1 months 11 days ago

確かに有効化されていますね。

 

デフォルトでは、すべてのトラフィックがファイアウォールの通過を許可されます。ファイアウォールは引き続き有効であり、通常の CentOS メソッドを通して設定できます。

ちょっとここは自信がないのですが(間違っていたらごめんなさい)おそらく、

デフォルトで割り当てられるゾーンを確認してみると…
# firewall-cmd –get-default-zone
trusted

trustedは全てのパケットが許可されるルールのことです。
つまりすべてのトラフィックがFWの通過を許可されていることになります。

GCP上のFWではデフォルトでインスタンスへ入ってくる通信はすべて拒否される設定になっているので、(厳密にはdefault ネットワークを使用すると、あらかじめ用意された許可ルールがいくつか適用されます)OS上ではゆるい設定になっているということでしょうか。

 

rsyslog はコンソールにデーモンとカーネル メッセージを送信するように構成されています。

これで最後なのですが、実際にrsyslogの設定ファイルを見てみると…

# cat /etc/rsyslog.conf

#kern.* /dev/console

kern(カーネル)をコンソールに出力するという行、コメントアウトされてますけど…
rsyslogの設定ファイルは/etc/rsyslog.conf であっている思うので、
私の勘違いか、ドキュメントが間違っているのか。うーん、もやっとします。

 

まとめ

さいごに少しもやっとしてしまいましたが笑、GCPでCentOSを運用するにあたって、知っておくとよいことばかりだと思います。すべての項目はご紹介できなかったので、興味のある方はぜひ公式ドキュメントをご覧ください。
ではではー!

 

コメントを残す