Fedora 28 Schedule拾い読み。

Anotated Binaries

実行用やDLLなどgccで作ったバイナリファイルに追加の情報を組み込む。スクリプトでチェックして、ハードニングに使ったり、ABI (application binary interface) の競合に対応したり、など。Fedora 28が言うハードニングとは、コンパイラへの指定による実行時の防壁や検知機能の採用と脆弱性への耐性向上のこと。

TCP wrapper廃止

TCP/UDPの待ち受けを行うサーバーについて、ソースIPアドレスで制限をかけられるTCPラッパーを廃止する。20年ごろ前はソースIPアドレスで接続制限できるサーバーソフトウェアは非常に少なかった。inetdという、特定のtcpポートに接続があると、対応する特定のプロセスを起動するサーバーもあったが、もともとはinetdのためだった。いまはxinetdとなっているが、これを使うといろいろと死ぬ。待ち受けポート番号には責任が伴うのだ。iptableや、デーモン自体のソースIPアドレス制限を使え、ということ。関連してOpenLDAPがTCP wrapper非対応になった。

Add-on Modularity

Long Lived ModularityでLLMとか。どういうモジュラー化なのかわかりやすい説明が見当たらない。Amazon Linuxのように複数のバージョンのパッケージを選べるのだろうか。しかしそれはFedoraにとってはあまりに無駄のような気がする。mainlineだかLTSとか言っても結局は最新版が一番安全だ、というのが潮流ではないのか。しかしソフトウェアは変化が速い。Fedora 28ではPHP 7.2が入るが、PHP 5.6やPHP 7.0と共存できるかどうか確かに心配。

GCC8

GCC 8>の偏向はFortranの改良とサーバー/クラスター向けARM対応が多いように見える。

IDNA2008

文字列関連処理の国際化対応をINDA2003からINDA2008に変更する。ドメイン名やユーザー名、パスワードの文字列の正規化ルールがより広くなる。文字列を使うアプリケーション全般への影響がある。

NISは新しいlibnsを使ってIPv6対応

NISがIPv6対応。

"nobody"ユーザー名を変更

問題はnfsnobodyに使っていた65534というUIDとGIDはLinux kernel内部でUIDの限界値として使われていたこと。nfs-utils.rpmをインストールしたときだけ問題になるというもほんとに微妙。運用的に怖い。

glibcのlibcryptをlibxcryptに移動

将来的にglibcのlibcrptoは削除する見込み。

crypto設定の強化

Fedoraが従来から使っているシステム全体のcrypto policyのうち、古い暗号方式や使われていない暗号手順を禁止できるようにする更新。

libcからSUN RPCを削除

いろんなところに残っているかもしれない。

libcurlはlibssh2ではなくlibsshを使う

CURLのライブラリはsshプロトコル対応のためlibssh2を使っていたが、libsshを使う。この変更がdistributionレベルの変更リストに載っている、ということが重要。どこまで何に使っているか見えないくらいインフラ的な要素。

time-1.8

コマンドラインで、コマンドの実行にかかった時間を表示してくれるtimeコマンドが更新され、表示形式が少し変わる。timeでスクリプトを書いていたり抽出している場合は注意。

ということでopenssl 1.1.xは見当たらなかった。