オペレーティングシステムJ/K (アクセス管理とセキュリティ) 2005年11月14日 酒居敬一([email protected]) http://www.info.kochi-tech.ac.jp/k1sakai/Lecture/OS/2005/ アクセス管理とセキュリティ • 利用形態 • マルチユーザ環境 – 計算機を複数の利用者で共有使用する環境 • 利用者の概念 • アクセス制御 • 資源管理 • 安全性(セキュリティ) アクセス形態 • ローカル計算機を利用 – コンソールログイン(ログオン) • キーボードとディスプレイを使用 • シリアルコンソール • リモート計算機を利用 – リモートログイン • SSHやTELNETなど • ネットワーク越しに遠隔の資源を利用 – ネットワークサービス • NFS(Network File System)やsamba • HTTP 利用者(ユーザー)の概念 • OSの中で異なる利用者を区別する • OSの中では利用者は番号(UID)で識別される • UIDと利用者名を結びつけるしくみがある • UIDは所有者として付加される – ファイル – プロセス • 一般利用者と別に特権を持つ利用者がある – root とか Administrator がスーパーユーザーとか 管理者と呼ばれている、特権をもつ利用者である 例: UNIXにおけるログイン 1. initプロセスがgettyを起動 このときの情報はinittabなどに書かれている 2. 3. 4. 5. 6. 7. geetyはログインを受け付けるデバイスを初期化 gettyプロセスはユーザー名入力を待つ gettyプロセスがユーザー名を引数にloginを起動 loginはパスワード入力を待つ 認証を行い、ログインが可能かどうかしらべる ユーザーIDやセッションIDを設定しシェルを起動 5と6は、いわゆるパスワードファイルを参照して決定する 8. シェルは当該ユーザーの初期化スクリプトを実行 9. プロンプトを出して入力を待つ 資源管理 • CPU時間 • プログラムサイズ • データサイズ • スタックサイズ • ディスク使用量 • ファイル使用数 [sakai@star sakai]$ ulimit -a core file size (blocks, -c) data seg size (kbytes, -d) file size (blocks, -f) max locked memory (kbytes, -l) max memory size (kbytes, -m) open files (-n) pipe size (512 bytes, -p) stack size (kbytes, -s) cpu time (seconds, -t) max user processes (-u) virtual memory (kbytes, -v) [sakai@star sakai]$ 制限をかけることで他の利用者や システムサービスに影響がないようにする 0 unlimited unlimited unlimited unlimited 1024 8 8192 unlimited 4092 unlimited UNIXにおけるシステムサービス • サービスを提供するプロセス→Daemon(守護神) – Demon(悪魔)ではない。 • ネットワークサービス – SSHd、HTTPd、FTPd、NFSdなど • システムサービス – init, bdflush, syslogdなど アクセス制御の必要性 • 誰でもアクセスしていいのか? – 来客者が勝手に使ってもいい? • どこからアクセスしてもいいのか? – ネットカフェからのアクセスもいい? • 何でもアクセスしてもいいのか? – リモートユーザーが計算機を停止してもいい? アクセス制御 • ログインによる計算機の利用 – 時間帯や曜日 – 同時ログイン数 • デバイス – ユーザーやグループ – 利用者がローカルであるかリモートであるか • ネットワーク – IPアドレスやEtherアドレス – プロトコル – ネットワークデバイス 安全性 • 一般利用者の安全性 • 特権を持つ利用者に関する安全性 • 遠隔利用のときの安全性 – システムの安全性 – データの安全性 一般利用者の安全性 • パスワードにより利用者を特定する • 利用可能な資源に制限をかける • 利用可能なデバイスに制限をかける • 電源やリセットスイッチに施錠する • 利用可能なコマンドに制限をかける 一般利用者は何をしても大丈夫 特権を持つ利用者に関する安全性 特権を持つ利用者は何でもできてしまう • パスワードにより利用者を特定する • 特権を持つ利用者になれる人間を制限する • ログインを制限する – リモートログインの禁止 – ログインできるデバイスを制限する 遠隔利用のときの安全性 • システムの安全性 – リモートアドレスによる接続の制限 – サービスの制限 – 使い捨てパスワードの使用 – パケットのフィルタリング • データの安全性 – データの暗号化 セキュリティ対策 • システムに欠陥が無い保障は無いのが現状 • 複数の制限機構を利用する – カーネル内のパケットフィルタ – デーモンにおける接続の制限 – アプリケーションにおける制限 – 部屋の施錠とか、スイッチの保護など物理的制限 – 不正利用を監視する
© Copyright 2024 ExpyDoc