UNIXのセキュリティを向上させる、管理者権限の基本的な使用方法

文:Chad Perrin (Special to TechRepublic) 翻訳校正:村上雅章・野崎裕子
2009-07-06 08:00:00
  • このエントリーをはてなブックマークに追加

 時には基本に立ち返ることも無駄ではない。本記事を読むことで、UNIX系システムにおける管理者権限の基本的な使用方法をおさらいし、セキュリティの向上に役立ててほしい。

 一部の読者にとって、本記事の内容は既に身に染みついているくらいの基本かもしれない。それでも筆者がこれらの基本を説明しておこうと思ったのは、UNIX系システムの管理者権限を正しく使うための基本的常識がないがしろにされていると感じるケースをよく目にするためだ。こういったケースはOSそのものを開発するチームのなかですら見かけるのだ。もちろん、そういったことを行う人々が、必ずしも能なしであるというわけではない。ここで言う「基本」が、すべて自明のことであるとは限らないのだ。

 まず手始めにrootアカウントから説明することにしよう。

rootアカウントの使用

 Microsoft Windowsにおける標準的な管理上のスーパーユーザーアカウントはAdministratorと呼ばれている。一方、UNIX系システムではrootと呼ばれている。管理者権限の不要な作業を、管理者アカウントを使用して行うというのは、あまり良い考えとは言えない。その理由は、どのようなユーザーアカウントをどのような時に使うにしても、そのアカウントの権限で実行するソフトウェアに第3者から悪用できるような脆弱性が存在している場合、そのアカウントを使っている間は常に潜在的な脅威にさらされることになるためである。

 例えば、ウェブの閲覧に使用しているFirefoxのスクリプティング処理機能に脆弱性が存在しており、ウェブサイト上に仕掛けられた悪意のある(あなたのシステムにバックドアをインストールしようとするといった)スクリプトの実行を許してしまう場合、あなたのシステムの脆弱性は、あなたが使用するアカウントにある程度依存することになるのだ。

  1. 管理者権限を有していないユーザーアカウントを用いたとしても、あなたのユーザーアカウントが悪用される可能性を否定することはできない。とは言うものの、インストールされたバックドアを介して該当アカウントにアクセスしたクラッカーは、該当ユーザーアカウントに許されたものにしかアクセスできなくなる。
  2. rootユーザーはあらゆる作業に対して管理者権限を行使することができるため、Firefoxを使用する際にrootユーザーでログインしてしまうと、インストールされたバックドアを介して該当アカウントにアクセスしたクラッカーも、システム全体にアクセスできるようになる。

 あなたがシステム管理者としての作業を行う場合、その時々に応じて管理者アカウントにアクセスする必要が出てくるはずだ。管理者権限はそういった作業を行う必要のある場合にのみ行使し、作業の後はrootアカウントから速やかに抜け出るということが重要なのである。こういったことをサーバ上で行うには、仮想TTYコンソールからrootでログインし、root権限が必要となる作業を行った後、「exit」と入力するかCtrl+Dキーを押下してrootアカウントからログアウトするのが一般的である。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]