初心者/管理者のための gate-toroku

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