250 likes | 397 Views
gate-toroku-system 入門. 小高正嗣 2008 年 7 月 11 日 EPNetFan 座学編第 11 回. gate-toroku-system (gate) とは?. EP ネットワークサーバの ユーザ /DNS 登録・更新・抹消を自動的に行うソフトウェア サーバを使うためにくぐってもらう「門 (gate) 」 ユーザインターフェースは CGI web ブラウザ上から操作 1998 年に開発開始 , 1999 年度末に完成
E N D
gate-toroku-system 入門 小高正嗣 2008 年 7 月 11 日 EPNetFan 座学編第11回
gate-toroku-system (gate)とは? • EP ネットワークサーバのユーザ/DNS 登録・更新・抹消を自動的に行うソフトウェア • サーバを使うためにくぐってもらう「門 (gate)」 • ユーザインターフェースは CGI • web ブラウザ上から操作 • 1998 年に開発開始, 1999 年度末に完成 • 細かな改変を受けながら, 地球流体電脳倶楽部サーバ, 九大理, 国立天文台でも利用されている
なぜ gate が必要か? • 多数のユーザ / ホストの登録・更新・抹消を手動で行うのは大変 • 例:ユーザ登録の場合に必要な作業 • 登録/更新/抹消者の確認 • 氏名, 連絡先, 所属研究室, 指導教員, アカウント名 • 申請が正しいかどうかの確認(なりすましの防止) • 実際に作業 • adduser, deluser コマンドを使って実行
基本的な考え方 • ユーザ / DNS の登録・更新・抹消作業を自動化 • 手動では無理 • 申請が正しいかどうかの確認は, 申請者本人と指導教員に行ってもらう • 「保証人制度」の導入 • 複数のホストからなるサーバシステムを想定 • EP サーバでは, mail, web, DNS, ftp, news • ネットワークを介して動作
ユーザ登録の流れ(やさしい登録ガイドより抜粋)ユーザ登録の流れ(やさしい登録ガイドより抜粋) • 登録希望者は保証人の教員と事前に口頭で相談 • web 上の受付窓口で申請, 初期パスワードが発行される • 申請内容が保証人宛にメールで通知 • 保証人の承認後にアカウント発行
EP サーバのアカウントの種類 • 個人ユーザアカウント • 個々のユーザに割り当てられるアカウント • アカウントと利用者が一対一対応 • グループユーザアカウント • 複数の個人ユーザで利用するアカウント • UNIX のグループという概念を利用 • 直接ログインはできない • sudo を使う
DNS 登録の流れ (やさしい登録ガイドより抜粋) • 保証人が機器管理者(root) を指名 • 保証人または root が web 上の受付窓口で申請 • 申請内容が保証人宛にメールで通知 • 保証人の承認後に DNS に登録
DNS 登録の種類 • A レコード • 通常のホスト名と IP アドレスを対応させる登録 • MX レコード • メールサーバ用の登録 • CNAME • ホストに別名をつけたい場合の登録
登録の更新・抹消 • 事前に登録システム用パスワードを設定 • 本人または保証人がweb 上の受付窓口で申請 • 申請後, 自動的に登録抹消
その他 • プライベート LAN 登録の手順は DNS とほぼ同じ • DHCP 用 IP アドレスがサーバから発行される • ホストの MAC アドレスで識別 • すでに登録されているユーザ名/ホスト名では登録申請できない • 初期ログインパスワードは必ず変更する • 登録システム用パスワードはログインパスワードとは別にする
知っておくと便利なコマンド • gate-user-show / gate-ip-show • ユーザ / ホスト情報の閲覧 • gate-user-list / gate-ip-list • ユーザ / ホストの一覧表示 • オプションでいろいろな条件を与えることができる • gate-user-status • ユーザの利用状況の表示 • 自分の使いたいユーザ名が使われているかどうかが分かる.
実際の動作 • ユーザインターフェースは CGI だが, 実際の動作はすべてコマンドラインで行われている • 管理対象のシステムを「登録サーバ」と「その他サーバ」に分けて管理
システム構成 • 登録サーバ • ユーザの受付窓口 • 登録データの管理 登録申請 通知 www ユーザ 登録データをネットワークを介し転送 mail DNS 1st DNS 2nd ftp その他サーバ データを受け取り, アカウント / DNS ゾーンファイルを作成
登録サーバ上での動作:ユーザ登録の場合(1)登録サーバ上での動作:ユーザ登録の場合(1) • 登録希望者は保証人の教員と事前に口頭で相談 • web 上の受付窓口で申請, 初期パスワードが発行される • 申請内容が保証人宛にメールで通知 • 保証人の承認後にアカウント発行 • gate-user-apply • 申請時に申請者と保証人に申請内容をメールで通知 • 申請内容を記載したと登録データを作成
登録サーバ上での動作:ユーザ登録の場合(2)登録サーバ上での動作:ユーザ登録の場合(2) • 登録データは, ~gate/userdb 以下に格納 • 申請時には ~gate/userdb/pending 以下 • 承認されると ~gate/userdb/stable 以下へ移動 • 抹消されると ~gate/userdb/defunct 以下へ
登録サーバ上での動作:ユーザ登録の場合(3)登録サーバ上での動作:ユーザ登録の場合(3) • 登録希望者は保証人の教員と事前に口頭で相談 • web 上の受付窓口で申請, 初期パスワードが発行される • 申請内容が保証人宛にメールで通知 • 保証人の承認後にアカウント発行 • gate-user-accept • 登録申請を認証または拒否する • 結果を申請者と保証人にメールで通知 • gate-daily • 申請の認証時にアカウントを作成 • 「その他サーバ」へ登録データを転送
登録サーバ上での動作:ユーザ登録の場合(4)登録サーバ上での動作:ユーザ登録の場合(4) • gate-daily は以下を実行 • gate-db-to-passwd: /etc/passwd の更新 • gate-db-to-shadow: /etc/shadow の更新 • gate-db-to-group: /etc/group の更新 • gate-db-to-sudores: /etc/sudored の更新 • gate-make-home, gate-remove-home: ホームディレクトリの作成 / 削除 • gate-db-update: 登録データの転送と その他サーバ上で gate-daily 起動
登録サーバ上での動作:ユーザ登録の場合(5)登録サーバ上での動作:ユーザ登録の場合(5) • 登録データの転送 • gate 権限による rsync • .shots 認証による ssh ノンパスワードログインを利用 • その他サーバ上での gate-daily の起動 • inetd を介し gate 権限で起動される • 8888 ポートを用いる
その他サーバ上での動作 • 登録サーバから登録データが転送される • その後登録サーバから 8888 ポートに通信が行われ, それを合図に gate-daily が起動 • その後の動作は登録サーバと同じ • /etc/gate.confの設定を見て, アカウントを作成するユーザを判断 • 例) DNS サーバでは epdns グループユーザメンバーのアカウントだけが作られる
DNS / プライベート LAN 登録の場合 • 基本的な流れはユーザ登録と同じ • 異なる点 • 登録データの格納ディレクトリ • DNS: ~gate/ipdb • プライベートLAN: ~gate/pipdb • ゾーンファイル / dhcpd 設定ファイルの作成は, その他サーバでのみ行う • DNS: gate-db-to-zone • DHCP: gate-db-to-iptables, gate-db-to-dhcpd
参考文献 • EP ネットワーク委員会, 「やさしい登録ガイド」, • https://www.ep.sci.hokudai.ac.jp/~epcore/gate/toroku.html • gate-toroku-system 開発グループ, gate-toroku-system 入門, • http://www.ep.sci.hokudai.ac.jp/~gate/doc/introduce.html • gate-toroku-system 開発グループ, gate-toroku-system コマンド集, • http://www.ep.sci.hokudai.ac.jp/~gate/doc/commands.html