Show Table of Contents
2.11. セキュリティーおよびアクセス制御
このセクションでは、Red Hat Enterprise Linux 6 と Red Hat Enterprise Linux 7 との間でなされたセキュリティ、アクセス制御、および関連設定ツールの変更の概要について説明しています。
2.11.1. 新ファイアウォール (firewalld)
Red Hat Enterprise Linux 6 では、iptables ユーティリティーがファイアウォール機能を提供し、コマンドラインもしくはグラフィカル設定ツールの system-config-firewall で設定されていました。Red Hat Enterprise Linux 7 では、iptables がファイアウォール機能を提供していますが、管理者は動的ファイアウォールデーモンである
firewalld と、その設定ツールである firewall-config、firewall-cmd、および firewall-applet で iptables と通信します。firewall-applet は、デフォルトの Red Hat Enterprise Linux 7 インストールには含まれていません。
firewalld は動的であることから、その設定はいつでも変更可能で、即座に実行されます。ファイアウォールはリロードする必要がないことから、既存のネットワーク接続で意図しない中断が発生することはありません。
Red Hat Enterprise Linux 6 と 7 間でのファイアウォールの主な相違点は以下のとおりです。
- Firewalld 設定の詳細は
/etc/sysconfig/iptablesに保存されていません。設定詳細は/usr/lib/firewalldおよび/etc/firewalldディレクトリーの様々なファイルに保存されます。 - Red Hat Enterprise Linux 6 では、設定が変更される度にすべてのルールが削除され、再適用されていましたが、
firewalldは設定の差異のみを適用します。その結果、firewalldは既存の接続を中断することなく、ランタイム中に設定を変更することができます。
Red Hat Enterprise Linux 7 におけるファイアウォール設定の詳細情報およびヘルプについては、『Red Hat Enterprise Linux 7 セキュリティーガイド』 を参照してください。http://access.redhat.com/site/documentation/Red_Hat_Enterprise_Linux/ から入手できます。
2.11.1.1. firewalld への移行ルール
重要
Red Hat Enterprise Linux 7 を、別の Red Hat 製品 (Red Hat Enterprise Linux OpenStack Platform など) と使用している場合は、
firewalld に移行する代わりに iptables または ip6tables を引き続き使用することが適切なことがあります。
どのファイアーウォールユーティリティーを使用すればいいかわからない場合は、製品ドキュメントを参照するか、Red Hat サポートにお問い合わせください。
firewalld を無効にし、iptables または ip6tables を引き続き使用する方法については、https://access.redhat.com/articles/1229233 を参照してください。
Red Hat Enterprise Linux 6 では、以下の 2 つの方法でファイアウォールを設定していました。
- グラフィカルの system-config-firewall ツールを使ってルールを設定。このツールは、設定詳細を
/etc/sysconfig/system-config-firewallファイルに保存し、/etc/sysconfig/iptablesファイルにiptablesサービスを、および/etc/sysconfig/ip6tablesファイルにip6tablesサービスを設定していました。 - 手動で
/etc/sysconfig/iptablesファイルおよび/etc/sysconfig/ip6tablesファイルを編集 (まったくのゼロから、もしくは system-config-firewall が作成した初期設定を編集) 。
Red Hat Enterprise Linux 6 のファイアウォールを system-config-firewall で設定している場合、システムをアップグレードして firewalld をインストールした後に、firewall-offline-cmd ツールを使って、
/etc/sysconfig/system-config-firewall の設定を firewalld のデフォルトゾーンに移行することができます。
$ firewall-offline-cmd
ただし、
/etc/sysconfig/iptables もしくは /etc/sysconfig/ip6tables を手動で作成または編集している場合は、firewalld のインストール後に firewall-cmd または firewall-config で新しい設定を作成するか、firewalld を無効にして旧型の iptables および ip6tables サービスの使用を継続する必要があります。新設定の作成または firewalld の無効化についての詳細は、『Red Hat Enterprise Linux 7 セキュリティーガイド』 を参照してください。http://access.redhat.com/site/documentation/Red_Hat_Enterprise_Linux/ から入手できます。
2.11.2. PolicyKit の変更
これまで、PolicyKit は、
.pkla ファイル内のキーの値のペアを使って追加のローカル権限を定義してきました。Red Hat Enterprise Linux 7 では、JavaScript を使ってローカル権限を定義する機能が提供され、必要に応じて権限を書くことが可能になっています。
polkitd は、.rules ファイルを辞書式順序で、/etc/polkit-1/rules.d および /usr/share/polkit-1/rules.d ディレクトリーから読み込みます。2 つのファイルが同じ名前を共有している場合は、/etc にあるファイルが /usr にあるファイルよりも先に処理されます。以前の .pkla ファイルでは、最後に処理されたルールが優先されていました。新たな .rules ファイルでは、最初に合致するルールが優先されます。
移行後、既存ルールは、
/etc/polkit-1/rules.d/49-polkit-pkla-compat.rules ファイルによって適用されます。このため、.rules ファイルが /usr または /etc にあり、かつそのファイル名が辞書式順序で 49-polkit-pkla-compat の先にくる場合は、既存ルールよりも優先されます。古いルールが無効にならないようにする一番簡単な方法は、他の全 .rules ファイルの名前を、49 よりも大きい番号で始めることです。
PolicyKit についての詳細情報は、『Red Hat Enterprise Linux 7 デスクトップの移行および管理ガイド』 を参照してください。http://access.redhat.com/site/documentation/Red_Hat_Enterprise_Linux/ から入手できます。
2.11.3. ユーザー ID の変更
Red Hat Enterprise Linux 6 でのベースユーザー ID は
500 でした。Red Hat Enterprise Linux 7 でのベースユーザー ID は 1000 となっています。この変更にしたがい、アップグレードプロセス中に /etc/login.defs ファイルが置き換えられます。
デフォルトの
/etc/login.defs ファイルを修正していない場合、このファイルはアップグレード中に置き換えられます。ベースユーザー ID の番号が 1000 に変更になり、新規ユーザーに割り当てられるユーザー ID は、1000 またはそれ以上になります。この変更前に作成されたユーザーアカウントは、現行のユーザー ID を維持し、期待通りに機能し続けます。
デフォルトの
/etc/login.defs ファイルを修正している場合は、このファイルはアップグレード中に置き換えられず、ベースユーザー ID 番号は 500 のままになります。
2.11.4. libuser の変更
Red Hat Enterprise Linux 7 では、
libuser ライブラリーは ldap および files モジュールの両方を含む設定、もしくは ldap および shadow モジュールの両方を含む設定をサポートしません。これらのモジュールを組み合わせるとパスワード処理に曖昧さが発生するので、そのような設定は初期化プロセス中に拒否されるようになっています。
LDAP のユーザーもしくはグループの管理に
libuser を使用する場合は、files モジュールおよび shadow モジュールを、設定ファイル (デフォルトでは /etc/libuser.conf ) の modules ディレクティブおよび create_modules ディレクティブから削除する必要があります。
2.11.5. opencryptoki キーストアの変更
以前のバージョンの Red Hat Enterprise Linux は、opencryptoki のバージョン 2 を使用していました。このバージョンでは、ハードウェアでセキュアキーを使用して、プライベートトークンを暗号化していました。Red Hat Enterprise Linux 7 では、ソフトウェアのクリアキーでプライベートトークンオブジェクトを暗号化するバージョン 3 が使用されます。したがって、バージョン 2 で作成したプライベートのトークンオブジェクトをバージョン 3 で使用するには、バージョン 2 で作成したトークンオブジェクトを最初に移行する必要があります。
手順2.1 プライベートトークンオブジェクトの移行
ソフトウェアをアップデートする
opencryptoki のバージョンが最新であることを確認します。# yum update -y opencryptoki
インターフェースのアクセスを停止する
pkcsslotdサービスと、すべてのopencryptokiプロセスを停止します。# systemctl stop pkcsslotd.service
以下のコマンドを実行してkillユーティリティーを停止するプロセスを特定し、適切なプロセスを終了します。# ps ax | grep pkcsslotd
データストアのバックアップを取得する
移行前に、CCA データストア (トークンが保存されているディレクトリー、通常は/var/lib/opencryptoki/ccatok) のバックアップを取得します。たとえば、このファイルのコピーを作成します。# cp -r /var/lib/opencryptoki/ccatok /var/lib/opencryptoki/ccatok.backup
トークンのスロット番号を確認する
pkcsconfを使用して、トークンのスロット番号を確認します。以下のコマンドを root 権限で実行します。# pkcsconf -s # pkcsconf -t
トークンのスロット番号に注意してください。スロットの説明は(CCA)で終わります。情報フィールドは、このトークンをIBM CCA トークンとして識別します。移行ユーティリティーを実行する
/var/lib/opencryptoki/ccatokディレクトリーに変更し、移行ユーティリティーを実行します。# cd /var/lib/opencryptoki/ccatok # pkcscca -m v2objectsv3 -v
要求されたら、セキュリティーオフィス (SO) PIN とユーザー PIN を入力します。古い共有メモリーファイルを削除する
手動で/dev/shm/var.lib.opencryptoki.ccatokファイルを削除するか、システムを再起動します。# rm /dev/shm/var.lib.opencryptoki.ccatok
移行の際に問題が発生した場合は、以下を確認してください。
- コマンドを root で実行しており、root が
pkcs11グループのメンバーになっていること。 pkcsconfユーティリティーが/usr/lib/pkcs11/methods/ディレクトリーまたは/usr/sbin/ディレクトリーのいずれかにあること。- トークンのデータストアが
/var/lib/opencryptoki/ccatok/ディレクトリーにあること。 - スロット番号が指定されており、その番号が正しいこと。
- セキュリティーオフィス (SO) PIN およびユーザー PIN が正しいこと。
- カレントディレクトリーに書き込み権限があること。
2.11.6. デフォルトの変更
Red Hat Enterprise Linux 7.4 では、openssh パッケージをアップストリームのバージョン 7.4 にアップデートしました。これにより、特に機能強化、新機能、バグ修正が多数追加されています。
UseDNSデフォルトオプションは現在noに設定されています。このオプションは、手動で/etc/ssh/sshd_config設定ファイルで変更できます。- デフォルトで SHA-256 ハッシュ関数を使用する新しいフィンガープリントタイプ
FingerprintHashが追加されました。 - ツールは、1024 より短い RSA キーを生成または許可しなくなりました。
この変更の詳細は、7.4 リリースノートの openssh がバージョン 7.4 にリベース を参照してください。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.