2018年初っ端、コンピュータ業界に大激震が走りました。PentiumⅡ以降から運用されているCPUに、ハード的な脆弱性があると発表されました。それがMeltdownとSpectre。そらもう世間は蜂の巣つついた大騒ぎでした。うちのサーバも世間にさらしている以上、分かっているセキュリティ対策はなんとかしておきたい。このため、各所より発表されている対策を施しましたので、同様の皆様のためにも、まとめておこうかと思います。
対策のポイントは以下です。
それでは行ってみましょう
2018年2月25日時点で、Meltdown&Spectre対策のパッチは、Longterm,Stableの最新版には当たっております。現在Longtermリリースの最新版は4.14.21、Stableリリース最新版は4.15.6です。とりあえず、うちは安定性で4.14を採用しております。但し、Gentooのパッケージでは、Unstableになっておりますので、ロック解除しなければなりません。設定しておきます。
/etc/portage/package.keywordsに以下を追記します。
<sys-kernel/gentoo-sources-4.15
で、Linuxカーネル4.14の最新版をemergeします。
以下のカーネルオプションを必須で設定しましょう
Processor type and features [*] Avoid speculative indirect branches in kernel RETPOLINE Patch(Spectre) [*] Build a relocatable kernel [*] Randomize the address of the kernel image (KASLR) (Meltdown) Security Options [*] Remove the kernel mapping in user mode Kernel Page Table Isolation (Meltdown)
RETPOLINE対策がされているコンパイラである、GCC7.3をインストールしましょう。但し、Gentoo Stableでは無いので、これまた設定を追加します。
/etc/portage/package.keywords
=sys-devel/gcc-7.3.0 =dev-libs/boehm-gc-7.6.4
/etc/portage/package.use
dev-libs/boehm-gc abi_x86_32 dev-libs/libatomic_ops abi_x86_32
で、emergeします。さらに、以下のコマンドでgccのアップグレード
# gcc-config x86_64-genelic-linux-gnu-7.3.0 # emerge -1v libtool