Solaris 10 の概要

セキュリティーの機能拡張

この節では、Solaris 10 3/05 リリースに含まれるセキュリティーの機能拡張について、新しい機能だけでなく、Solaris 9 OS が 2002 年 5 月にはじめて配布されたあとに拡張された機能拡張も含めて説明します。「プロセス権限の管理」「限定ネットワークソフトウェアグループ」は特に重要です。Solaris 10 7/05 リリースでの新しいセキュリティーの機能拡張については、「セキュリティーの機能拡張」を参照してください。

この節のセキュリティー機能の説明以外に、「開発者ツール」および「インストール」節にある次のセキュリティー関連機能の説明も参照してください。

ELF オブジェクトの署名

この機能は、Solaris 10 3/05 で新しく追加されました。

Solaris 10 OS のライブラリファイルと実行可能ファイルには、それらの整合性の検証に利用可能な電子署名が付属しています。電子署名を使用すると、ファイルの実行可能部分の変更や意図的な改ざんをすべて検出できます。

Solaris 暗号化フレームワークのプラグインは、システムに読み込まれると自動的に検証されます。署名付きファイルを手動で検証するときは、elfsign コマンドを使用します。開発者や管理者は、elfsign を使って、自分が持っているコードにも署名を付けることができます。

詳細は、elfsign(1) のマニュアルページを参照してください。

プロセス権限の管理

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

Solaris ソフトウェアでは、従来はスーパーユーザー権限を必要としていた管理作業が、プロセス権限の管理によって保護されるようになりました。プロセス権限の管理は、特権を使用して、コマンド、ユーザー、役割、またはシステムレベルでプロセスを制限します。特権とは、プロセスが処理を実行するときに必要となる個別の権限のことです。プロセスに与えられる特権は、現在の作業を実行するために必要なものだけです。このため、悪用される root プロセスが少なくなります。setuid プログラムの数は大幅に減少しました。

インストールされた状態では、Software Express リリースと Solaris 10 3/05 リリースは、特権の機能の拡張に関して、以前のリリースの Solaris オペレーティングシステムと完全に互換性があります。root として動作するプログラムは、変更していなければ、すべての権限が与えられて動作します。

デバイスの保護 – デバイスはセキュリティーポリシーによって保護されます。このポリシーは、特権で強化されます。このため、デバイスファイルに対するアクセス権だけでは、そのデバイスを利用できるかどうかは決まりません。特権は、デバイスを操作するときに必要になることもあります。

UNIX のアクセス権で保護されていたシステムインタフェースは、特権で保護されるようになりました。たとえば、/dev/ip デバイスを開く許可がグループ sys のメンバーに自動的に与えられることはありません。net_rawaccess 特権を使って実行されているプロセスは、/dev/ip デバイスにアクセスできます。システムがブートするときには、ブートシーケンス中に devfsadm コマンドが実行されるまで、すべてのデバイスへのアクセスが制限されます。初期ポリシーは、可能な限り厳しくなっています。このポリシーは、スーパーユーザー以外のすべてのユーザーが、接続を開始できないようにします。

詳細は、次のマニュアルページを参照してください。

Solaris IP MIB 情報を取得する必要があるプロセスは、/dev/arp を開いて、「tcp」モジュールと「udp」モジュールをプッシュする必要があります。特権は不要です。この方法の効果は、/dev/ip を開いて「arp」、「tcp」、および「udp」モジュールをプッシュした場合と変わりません。/dev/ip を開くときに特権が必要になったため、 /dev/arp の方法をお勧めします。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の次の章と節を参照してください。

Solaris 10 OS における PAM への変更

新しい pam_deny モジュールは、Software Express パイロットプログラムで追加され、Solaris Express 6/04 で拡張されました。この機能は、Solaris 10 3/05 に組み込まれています。このモジュールを使用して、特定の PAM サービスへのアクセスを拒否できます。デフォルトでは、pam_deny モジュールは無効になっています。詳細は、pam_deny(5) のマニュアルページを参照してください。

Solaris 10 ソフトウェアでは、PAM フレームワークが次のように変更されています。

pam_ldap の変更点

次に示す pam_ldap の変更のうち、アカウント管理機能以外はすべて、Solaris Express 10/04 で新しく追加されました。この管理機能は、Software Express パイロットプログラムと Solaris 9 12/02 で新しく追加されました。これらの変更の詳細については、pam_ldap(5) のマニュアルページを参照してください。


注 –

上記の変更点に対する完全な自動更新は提供されていません。したがって、Solaris 10 以降のリリースにアップグレードしても、既存の pam.conf ファイルに pam_ldap の変更が自動的に反映されることはありません。既存の pam.conf ファイルに pam_ldap の設定が含まれている場合、アップグレード後に CLEANUP ファイルからその旨が通知されます。pam.conf ファイルの内容を確認し、必要に応じて変更してください。


詳細は、次のマニュアルページを参照してください。

Solaris ネームサービスとディレクトリサービスについては、『Solaris のシステム管理 (ネーミングとディレクトリサービス : DNS、NIS、LDAP 編)』を参照してください。Solaris のセキュリティー機能については、『Solaris のシステム管理 (セキュリティサービス)』を参照してください。

Solaris Secure Shell の機能拡張

この機能の説明は、Solaris Express 10/04 での新しい説明です。

Solaris 10 OS で、次の Solaris Secure Shell の機能拡張が利用可能になりました。

Solaris 10 OS のセキュリティーの詳細については、『Solaris のシステム管理 (セキュリティサービス)』を参照してください。

OpenSSL および OpenSSL PKCS#11 エンジン

この機能は、Solaris Express 8/04 で新しく追加されました。

この Solaris リリースでは、/usr/sfw に OpenSSL のライブラリとコマンドが含まれています。

また、このリリースには OpenSSL PKCS#11 エンジンインタフェースも含まれているため、OpenSSL 消費者は、ハードウェアおよびソフトウェアの暗号化プロバイダに Solaris 暗号化フレームワーク経由でアクセスできます。


注 –

暗号製品の輸入規制がある国では、SUNWcry パッケージがインストールされていない場合、対称鍵暗号化アルゴリズムが 128 ビットに制限されます。SUNWcry パッケージは Solaris ソフトウェアに含まれていません。その代わり、このパッケージは別個の制御ダウンロードとして利用可能になっています。


sshd デーモンと /etc/default/login

この機能は、Solaris Express 10/04 で新しく追加されました。

sshd デーモンが、/etc/default/login および login コマンドの変数を使用します。/etc/default/login 変数は sshd_config ファイル内の値で上書きできます。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の「Solaris Secure Shell およびログインの環境変数」を参照してください。sshd_config(4) のマニュアルページも参照してください。

非ログインアカウントおよびロックされたアカウント用の新しいパスワードオプション

この機能は、Solaris Express 10/04 で新しく追加されました。

passwd コマンドに、-N-u の 2 つの新しいオプションが追加されました。-N オプションは、非ログインアカウントのパスワードエントリを作成します。このオプションは、ログイン対象ではなく、cron ジョブを実行する必要のあるアカウントの場合に便利です。-u オプションは、以前にロックされたアカウントのロックを解除します。

詳細は、passwd(1) のマニュアルページを参照してください。

auditconfig コマンドの -setcond オプションの削除

この機能は、Solaris Express 10/04 で新しく追加されました。

auditconfig コマンドの -setcond オプションが削除されました。監査を一時的に無効にするには、audit -t コマンドを使用します。監査を再開するには、audit -s コマンドを使用します。

perzone 監査ポリシー

この機能は、Solaris Express 8/04 で新しく追加されました。

perzone 監査ポリシーを使えば、非大域ゾーンを個別に監査できます。別々の監査デーモンが各ゾーンで実行します。デーモンは、ゾーンに固有の監査構成ファイルを使用します。また、監査キューもゾーンに固有です。このポリシーはデフォルトでオフになっています。

詳細は、auditd(1M) および auditconfig(1M) のマニュアルページを参照してください。

Kerberos の機能拡張

Solaris 10 リリースに含まれる Kerberos の機能拡張は、次のとおりです。これらの機能拡張のいくつかは、以前の Software Express リリースでの新しい機能拡張です。

rpcbind の TCP ラッパー

この機能は、Solaris Express 4/04 で新しく追加されました。

rpcbind コマンドで TCP ラッパーがサポートされるようになりました。管理者は、この機能を利用して、特定のホストだけが rpcbind を呼び出すことができるように制限できます。また、rpcbind へのすべての呼び出しをログに記録することもできます。

詳細は、rpcbind(1M) のマニュアルページを参照してください。

zonename 監査トークンと監査ポリシーオプション

Solaris ゾーン区分技術は、Solaris Express 2/04 での新技術です。「Solaris ゾーンソフトウェア区分技術」を参照してください。ここで説明する zonename の機能拡張は、この技術に関連するもので、同様に Solaris Express 2/04 で導入されました。

zonename 監査トークンには、監査イベントが発生したゾーンの名前が記録されます。zonename audit policy オプションは、すべてのゾーンについて、zonename トークンが監査レコードに含まれているかどうかを判別します。事前に選択されている監査クラスの基準が大域ゾーン以外のゾーンの間で異なっている場合には、ゾーンごとに監査レコードを解析することもできます。zonename 監査ポリシーを利用して、監査レコードをあとでゾーンごとに選択することもできます。

『Solaris のシステム管理 (セキュリティサービス)』の「監査と Solaris ゾーン」を参照してください。

詳細は、audit.log(4)auditconfig(1M)、および auditreduce(1M) のマニュアルページを参照してください。『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の「ゾーン内での Solaris 監査の使用」も参照してください。

Solaris 暗号化フレームワークのユーザーコマンド

この機能は、Solaris Express 1/04 で新しく追加されました。

digestmac、および encrypt コマンドに、各コマンドで使用できるアルゴリズムの一覧を表示するオプションが追加されました。mac コマンドと encrypt コマンドの場合には、各アルゴリズムで使用できる最大キー長も出力されます。また、-I <IV-file> オプションが、encrypt コマンドと decrypt コマンドから削除されました。

『Solaris のシステム管理 (セキュリティサービス)』の第 14 章「Solaris 暗号化フレームワーク (手順)」および「Solaris 暗号化フレームワークによるファイルの保護」を参照してください。

詳細は、encrypt(1)digest(1)、および mac(1) のマニュアルページを参照してください。

IKE 構成パラメータ

この機能は、Solaris Express 1/04 で新しく追加されました。

再送パラメータとパケットタイムアウトパラメータが、/etc/inet/ike/config ファイルに追加されました。管理者は、これらのパラメータを使用して、 IKE Phase 1 (メインモード) の交渉を調整できます。この調整を行うことによって、Solaris IKE は、IKE プロトコルの実装方法が異なるプラットフォームと相互運用することができます。また、これらのパラメータを使用すると、ネットワーク干渉やネットワークトラフィックの負荷を簡単に調整できます。

パラメータの詳細は、ike.config(4) のマニュアルページを参照してください。

簡易認証セキュリティー層

この機能は、Solaris Express 12/03 で新しく追加されました。

簡易認証セキュリティー層 (SASL) は、アプリケーションの開発者向けに、接続ベースのプロトコルに認証、データの整合性の確認、および暗号化を追加するためのインタフェースを提供します。

詳細は、「開発者向けの簡易認証セキュリティー層」を参照してください。

また、『Solaris のシステム管理 (セキュリティサービス)』の第 17 章「SASL の使用」も参照してください。

ISO 8601 形式で報告されるようになった監査時刻

この機能は、Solaris Express 12/03 で新しく追加されました。

監査レコードのファイルトークンとヘッダートークンに報告される時刻が、ISO 8601 形式になりました。たとえば、ファイルトークンの praudit コマンドでは、次のように出力されます。

古いファイルトークン:

file,Mon Oct  13 11:21:35 PDT 2003, + 506 msec, 
/var/audit/20031013175058.20031013182135.machine1
新しいファイルトークン:

file,2003-10-13 11:21:35.506 -07:00, 
/var/audit/20031013175058.20031013182135.machine1
古いヘッダートークン:

header,173,2,settppriv(2),,machine1,
Mon Oct 13 11:23:31 PDT 2003, + 50 msec
新しいヘッダートークン:

header,173,2,settppriv(2),,machine1,
2003-10-13 11:23:31.050 -07:00

XML 出力も変更されました。たとえば、praudit -x コマンドの出力では、ファイルトークンは次のような形式になります。


<file iso8601="2003-10-13 11:21:35.506 -07:00">
/var/audit/20031013175058.20031013182135.machine1</file>

praudit の出力を解析するスクリプトまたはツールをカスタマイズしている場合は、この変更に対応するために更新が必要になる場合があります。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の第 27 章「Solaris 監査 (概要)」と「Solaris 10 リリースでの Solaris 監査拡張機能」を参照してください。

基本監査報告機能

この機能は、Solaris Express 11/03 で新しく追加されました。

基本監査報告機能 (BART) はコマンド行ユーティリティーの 1 つで、OEM、上級ユーザー、およびシステム管理者は、監査対象システムのソフトウェアの内容をファイルレベルで確認することができます。このユーティリティーは、システムにインストールされているソフトウェアの情報を収集するために役立ちます。BART を使用して、インストールされているシステムを比較したり、システムの内容の履歴を比較することもできます。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の第 5 章「基本監査報告機能の使用方法 (作業)」を参照してください。

bart_manifest(4)bart_rules(4)、および bart(1M) のマニュアルページも参照してください。

IPsec と Solaris 暗号化フレームワーク

この機能は、Solaris Express 9/03 で新しく追加されました。

IPsec では、IPsec 固有の暗号化および認証モジュールは使用されず、Solaris 暗号化フレームワークが使用されます。これらのモジュールは、SPARC プラットフォーム用に最適化されています。また、サポートされている IPsec アルゴリズムなど、IPsec プロパティーのリストを照会するために、新しい ipsecalgs のコマンド行ユーティリティーと API が追加されています。

詳細は、ipsecalgs(1M) のマニュアルページを参照してください。

『Solaris のシステム管理 (IP サービス)』の第 18 章「IP セキュリティーアーキテクチャー (概要)」と「IPsec の認証アルゴリズムと暗号化アルゴリズム」を参照してください。

システム管理者のための Solaris 暗号化フレームワーク

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

Solaris 暗号化フレームワークは、Solaris 環境のアプリケーションに暗号化サービスを提供します。システム管理者は、cryptoadm コマンドを使用して、適用できる暗号化アルゴリズムを制御します。cryptoadm コマンドを使用して、次の管理操作を行うことができます。

このフレームワークには、AES、DES/3DES、RC4、MD5、SHA-1、DSA、RSA、および Diffie-Hellman アルゴリズム用のプラグインが用意されています。これらのプラグインは、必要に応じて追加または削除できます。

encryptdecryptdigest、および mac コマンドはすべて、このフレームワークの暗号化アルゴリズムを使用します。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の第 13 章「Solaris の暗号化フレームワーク (概要)」を参照してください。

また、次のマニュアルページも参照してください。

遠隔監査ログ

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

Solaris リリースでは、監査イベントをバイナリ監査ログに記録するだけでなく、syslog に記録することもできます。

syslog データを生成すれば、ワークステーション、サーバー、ファイアウォール、ルーターなどのさまざまな Solaris 環境および Solaris 以外の環境から生成される syslog メッセージを管理および解析するためのツールを使用できます。syslog.conf を使用して監査メッセージを遠隔記憶装置に保管することで、攻撃者によって改変または削除されないようにログデータを保護します。ただし、syslog オプションで記録されるのは、監査レコードデータの要約だけです。また、syslog データが遠隔システムに保管されている場合には、DoS (サービス妨害) や不正な (なりすました) 発信元アドレスなど、ネットワーク攻撃を受ける恐れがあります。

『Solaris のシステム管理 (セキュリティサービス)』の第 27 章の「Solaris 監査 (概要)」と「監査ファイル」を参照してください。

また、次のマニュアルページも参照してください。

FTP サーバーの機能拡張

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

FTP サーバーのスケーラビリティーと転送ログの機能が次のように強化されました。

このリリースでは、FTP クライアントとサーバーは Kerberos をサポートするようになりました。詳細は、ftp(4) のマニュアルページおよび『Solaris のシステム管理 (セキュリティサービス)』の「Kerberos ユーザーコマンド」を参照してください。

ftpcount および ftpwho で、-v オプションを使用できるようになりました。このオプションを指定すると、仮想ホストの ftpaccess ファイルに定義されている FTP サーバークラスについて、ユーザー数とプロセスの情報が表示されます。

変更内容の詳細については、次のマニュアルページを参照してください。

FTP クライアント

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

Solaris ソフトウェアの FTP クライアントの機能が変更されています。デフォルトでは、Solaris FTP サーバーに接続されている Solaris FTP クライアントで ls コマンドを実行すると、ディレクトリとプレーンファイルの一覧が表示されます。その FTP サーバーが Solaris オペレーティングシステムで動作していない場合は、ディレクトリの一覧が表示されないことがあります。

Solaris 以外の FTP サーバーに接続しているときでも、Solaris のデフォルトの動作が行われるようにするには、各 Solaris クライアントの /etc/default/ftp ファイルを編集します。ユーザーごとに変更を適用する場合は、FTP_LS_SENDS_NLST 環境変数を設定できます。

詳細は、ftp(4) のマニュアルページを参照してください。

このリリースでは、FTP クライアントとサーバーは Kerberos をサポートするようになりました。詳細は、ftp(4) のマニュアルページおよび『Solaris のシステム管理 (セキュリティサービス)』の「Kerberos ユーザーコマンド」を参照してください。

Sun Crypto Accelerator 4000 ボードでのインターネット鍵交換 (IKE) による鍵の格納

この機能は、Software Express パイロットプログラムと Solaris 9 12/03 で新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

IKE が、IPv4 ネットワークに加え、IPv6 ネットワーク上でも動作するようになりました。IPv6 実装に固有のキーワードについては、ifconfig(1m) および ike.config(4) のマニュアルページを参照してください。

Sun Crypto Accelerator 4000 ボードがマシンに搭載されている場合、IKE は大量の計算を必要とする処理をそのボードを使って負荷分散できるため、オペレーティングシステムはほかのタスクに資源を振り向けることができます。また、IKE は、公開鍵、非公開鍵、および公開証明書をそのボード上に格納することもできます。独立したハードウェア上に鍵を格納すれば、さらにセキュリティーが向上します。

詳細は、ikecert(1M) のマニュアルページを参照してください。

また、『Solaris のシステム管理 (IP サービス)』の次の章と節も参照してください。

IKE ハードウェアアクセラレーション

この機能は、Software Express パイロットプログラムと Solaris 9 4/03 で新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

Sun Crypto Accelerator 1000 カードおよび Sun Crypto Accelerator 4000 カードを使えば、IKE における公開鍵の処理を高速化できます。実行する処理がカードに任されます。このため、暗号化処理が高速化され、Solaris オペレーティングシステムの消費リソースも少なくて済みます。

IKE の詳細は、『Solaris のシステム管理 (IP サービス)』の次の章と節を参照してください。

ipseckey の機能拡張

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

IPsec または IKE をシステムにインストールしている場合は、ipseckey の構文解析部の新しい便利な機能を利用できます。ipseckey monitor コマンドを実行したときに、各イベントのタイムスタンプが出力されるようになりました。

詳細については、ipseckey(1M) のマニュアルページを参照してください。

ループバック接続を使用した資格の伝搬

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

今回の Solaris リリースでは、特定のプロセスの資格を抽象表現するときに ucred_t * を使用できます。これらの資格は、ドアサーバーの door_ucred() とループバック接続の getpeerucred() を使用して取得できます。取得した資格は、recvmsg() を使用して受け取ることができます。

詳細は、socket.h(3HEAD) のマニュアルページを参照してください。

監査ヘッダートークンにホスト情報が含まれる

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

監査レコードのヘッダートークンが拡張され、ホストの名前が含まれるようになりました。

古いヘッダーは次のように表示されます。


header,131,4,login - local,,Wed Dec 11 14:23:54 2002, + 471 msec

新しく拡張されたヘッダーは次のように表示されます。


header,162,4,login - local,,example-hostname,
Fri Mar 07 22:27:49 2003, + 770 msec

praudit の出力を解析するスクリプトまたはツールをカスタマイズしている場合は、この変更を反映するために更新が必要になる場合があります。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の第 30 章「Solaris 監査 (参照)」および「header トークン」を参照してください。

監査機能の拡張

この機能は、Software Express パイロットプログラムと Solaris 9 8/03 で新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

この Solaris ソフトウェアでは、監査機能の拡張により、監査トレール内のノイズが削減されます。また、管理者は監査トレールの解析時に XML スクリプトを使用できます。具体的な拡張内容は次のとおりです。

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の次の章と節を参照してください。

新しい監査トークン path_attr

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

path_attr 監査トークンには、オブジェクトのアクセスパス情報が含まれます。アクセスパスは、path トークンオブジェクトの下の属性ファイルオブジェクトのシーケンスを示します。openat() などのシステムコールは、属性ファイルにアクセスします。拡張ファイル属性の詳細については、fsattr(5) のマニュアルページを参照してください。

path_attr トークンは次の 3 つのフィールドで構成されます。

praudit コマンドでは、path_attr トークンは次のように表示されます。


path_attr,1,attr_file_name

詳細は、『Solaris のシステム管理 (セキュリティサービス)』の第 30 章「Solaris 監査 (参照)」およびその章内の「path_attr トークン」を参照してください。

パスワードの履歴の確認

この機能は、Software Express パイロットプログラムで新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

ログインアカウントがローカルファイルに定義されている場合は、過去のパスワード変更の履歴を最大 26 回まで記録しておくことができます。ユーザーがパスワードを変更しようとしたときに、新しいパスワードがパスワード履歴のパスワードのいずれかと一致する場合は、変更に失敗します。ログイン名の確認を無効にすることもできます。

詳細は、passwd(1) のマニュアルページを参照してください。

crypt() 関数の拡張

この機能は、Software Express パイロットプログラムと Solaris 9 12/02 で新しく追加されました。この機能は、Solaris 10 3/05 に組み込まれています。

パスワードの暗号化により、侵入者が不正にパスワードを解読することを防ぎます。このソフトウェアでは、次の 3 つのパスワード暗号化強化モジュールが利用可能です。

新しい暗号化モジュールを使ったユーザーパスワードの保護方法については、『Solaris のシステム管理 (セキュリティサービス)』の次の章と節を参照してください。

モジュールの強度については、crypt_bsdbf(5)crypt_bsdmd5(5)、および crypt_sunmd5(5) のマニュアルページを参照してください。