セキュリティ 概念編 (60m) 実習編 (30m) 担当 : まさ
概念編 「セキュリティ」という考え方 守るべきもの 守りかた
「セキュリティ」という考え 方 セキュリティ: 安全性 – 様々な危険から自分や組織(の情報 ) を守 る – セキュリティサービスの分類 – 能動的攻撃/受動的攻撃
セキュリティサービスの分類 – 秘匿性 – 認証 – 完全性 – 否認不能性 – アクセス制御 – 可用性
能動的攻撃/受動的攻撃 能動的攻撃 – 侵入者が積極的に攻撃を行う。 DoS アタック コンピュータウイルス なりすまし、メッセージ改ざん 受動的攻撃 – すでにある情報からの攻撃 ( 通信の傍受等 ) 内容の取得、トラフィック解析 → 能動的攻撃の重要な手がかり
守るべきもの 何を守るかは case by case – 個人の PC – 組織のサーバ – ネットワーク すべてを守ることは非現実的 → 「セキュリティポリシー」 の策定
セキュリティポリシ 「どこまで守るか」を決める。 – なりすまされたくない。 – データを盗み見られたくない。 – ホストを守る。 – ネットワークを守る
情報の守りかた セキュリティポリシから守り方が決ま る: – なりすまされたくない。 → パスワードや公開鍵系(後述)の利用 – データを盗み見られたくない。 → アクセスコントロール(ホスト上) → 伝送路の暗号化(ネットワーク上) – サービスをクラックされたくない → ソフトウェアのセキュリティホール対策
攻撃を防ぐ場所 Firewall – ネットワーク上の通信を遮断 – 内部から外部に攻撃するのを防げる – 暗号化された通信上の攻撃は防げない End-host – サービス単位で攻撃を遮断 – 細かい粒度でアクセスを制御できる。 – 各ホストの管理者が防がなければならな い
Firewall 研究室のネットワークでも利用してい ます。 RGNET – 「きつきつ」ネットワークが netscreen 経由 –IDS (侵入検知システム)も稼働中 HTNET – ネットワーク全体が millet 経由
暗号化技術 慣用暗号系 – 一つの鍵(パスワード、秘密鍵)を用い、秘密 鍵を相手に渡し、同じものか比較する。 公開鍵暗号系 –1 組 2 つの(非公開鍵、公開鍵)を用い、公開鍵 を相手に渡す – 公開鍵で暗号化したものは対となる非公開鍵だ けで復号できる。逆も同じ。 – 非公開鍵を持っていることで自分を証明 非公開鍵そのものをさらに暗号化することが多い。
具体的なプロトコル Web (通信内容を守る) –HTTPS メール –PGP,S/MIME (メール内容を守る) –APOP (メールパスワードを守る) ログイン(アクセス制御) –SSH, Kerberos(ActiveDirectory) 原則は「すべてのパスワードは暗号化」
補足:パスワードの付け方 考え方はセキュリティポリシと同じ – 「どれぐらい守るのか」が重要 例 1 :暗号化されない Web のパスワードとホ ストへのログインに使うパスワードは別 にする。 例 2 :盗られたくないものはできるだけ別に する(どれかが盗られても被害を最小限 にする) 例 3 :パスワードを使わず公開鍵暗号系を使 う
実習編 APOP SSH
APOP Authenticate Post Office Protocol – ほとんど POP3 と同様 – パスワードの送信部分だけが異なる – 慣用暗号系を利用 – で変更
APOP パスワードの変更
SSH Secure SHell –telnet 同様、相手のホストにログイン – パスワードに限らず通信内容を全て暗号化 –ssh1 と ssh2 がある 互換性は無いので注意! – ファイル転送もできる (scp,sftp) – 様々な認証方法を使える パスワード 公開鍵暗号 スマートカード
これからやること 1. ソフトウェアのインストール TeraTerm Pro + TTSSH PortForwarder ( 鍵ペア作成用 ) 2. 公開鍵/非公開鍵のペアを作る 3. 公開鍵をサーバに登録してもらう 4.TeraTermPro + TTSSH でログイン
ソフトウェアのインストール TeraTermPro + TTSSH (Windows 環境 ) –ssh1 のクライアント – 鍵ペアを作れないので PortForwarder も併用。 – OpenSSH(Unix 環境 ) –ssh1 、 ssh2 両方使える。デフォルトは ssh2 – たいていの Unix 環境には入っている。 – 本家 ssh ( 通称 ) が入っていることも。
鍵の作成 Windows の場合: –PF-keygen を利用 1. 鍵を置くディレクトリを用意 (My Documents\ssh 等 ) 2.PF-keygen を起動 3.Generate new key を選ぶ。 4. 非公開鍵のファイル名を指定し、 OK する。 例 ) C:\My Documents\ssh\identity 5. パスフレーズを入力。(確認のため 2 度 ) 6. コメントを入力。 ( 一般にユーザ名@ホスト名 ) 以下のファイルが作られる identity :非公開鍵 identity.pub: 公開鍵
鍵の作成 OpenSSH の場合 –ssh-keygen を利用 1.ssh-keygen – t rsa を実行。 2. 非公開鍵の場所を聞かれるのでそのまま Enter 。 3. パスフレーズを入力。 ( 確認のため 2 度 ) 注 : コメントは自動生成される ユーザ名@ホスト名 – 以下のファイルが作られる id_rsa :非公開鍵 id_rsa.pub: 公開鍵
鍵の登録 入りたいホストに公開鍵を登録する。 –~/.ssh/authorized_keys に公開鍵の内容を追 加する。今後は自分で追加・削除する。 – 最初は入れないので、 に公開鍵を送って登 録依頼する。非公開鍵を送らないよう に! – 今日は 宛! – 本文に RG のアカウント名を書いてくださ い。
鍵を利用したログイン (ttssh) TeraTermPro + TTSSH の場合: –wanwan.sfc.wide.ad.jp に SSH で接続する。
鍵を利用したログイン (ttssh) – ユーザ名と鍵の場所を指定し、パスフ レーズを入力。
鍵を利用したログイン (OpenSSH) OpenSSH の場合 –ssh ユーザ名@ホスト名 ( ユーザ名が同じ場合はホスト名のみで OK) – パスフレーズを入力 ssh wanwan.sfc.wide.ad.jp Enter passphrase for key '/home/masa/.ssh/id_rsa': Last login: Mon Apr 15 15:21: from 2001:218:458:0:
Congratulation! これで wanwan に入ることが出来るよう になりました。 – 皆さん、情報処理の授業は覚えています か? :-) –ls とかで遊んでみよう。 –ssh のマニュアルを読んでみよう。 setenv LANG ja setenv MANPATH /usr/man:/usr/local/man man ssh