懸案だったファイルシステムのマウントです。
listen, mountを使った方法はなにげにできていましたが、
認証を利用した方法はできていませんでした。
参考にしたサイトは
http://my.opera.com/csant/blog/show.dml/152654
です。
このページによると、インストールドキュメントに書いてあるとのこと。
まさかそんな所に情報があるとは。
・目的
リモートのInferno(serverとする)のファイルシステムを認証付きで
もう一方のInferno(clientとする)にマウントする。
・手順
- サーバー初回のみ
認証用のパスワード作成
% auth/createsignerkey [名前]
※名前、は何かのIDのようだが、なんなんでしょう。ユーザー名っぽいのをいれてみたが。
認証サービス起動?
% svc/auth
初回でキーを設定するようなので、任意のパスワードを入力
ユーザー作成
% auth/changelogin ユーザー
secretには秘密のパスワードを設定。
expiresには有効期限を。
※expireの書き込みでエラーが発生。無理やり回避した(後述)。
サーバーキー作成
% getauthinfo default
signer: localhost
user: ユーザー名
password: パスワード。たぶんさっきのsecret
save in file: yes
- サーバー運用時
ネットワークサービス起動
% svc/net
認証サービス起動
% svc/auth
初回の時に設定したキーを入力するはず
- クライアント毎回
謎の処理(たぶん接続する時に必須のサービス起動)
% ndb/cs
認証
% getauthinfo tcp!サーバーのIP
signer: サーバーのIP
user: ユーザー
password: secret
save in file: yes (保存すると次回からgetauthinfoしなくて良さそう)
マウント
% mount tcp!サーバーのIP /n/remote
tcp!いらないみたい。
・バッドノウハウ
先ほどの、changeloginでexpireが書き込めない件、力業で乗り切った。
手順
auth/changelogin ユーザー
expiresにpermanentを指定して、とりあえず正常終了させる
(ただし、expireの書き込みには失敗)
/mnt/keys/ユーザー/expireに適当な数値文字列を書き保存
もう一度auth/changelogin ユーザー
expiresで正しいexpireを指定。たぶん正しい数値がファイルにかかれるはず。
0 件のコメント:
コメントを投稿