Webブラウザを用いてsambaの設定を行うためにSWATがsambaパッケージに同梱されています。 この起動方法がVine-2.0とVine-2.1(RedHatでは6.1と6.2 ?)では異なっています。 このためVine-2.0をベースにした解説書では役に立ちませんし、 sambaそのものについての解説は多いものの、SWATについての解説は簡単に済まされているものが多く、私もその1人ですがここで引っかかる人も多いと思うので、ここでSWATの起動法について記します。とくにVine-2.1.xについて書いています。xinetdを使う場合など他のディストリビューションについては びぎねっと入門シリーズ制作委員会 の Sambaで始めるWindowsファイルサーバー入門 が分かりやすく説明されています。
ここでは次のような構成を例に説明を進めます。 それぞれのマシンの設定を終え、互いにpingが通ることを確認しておいてください。
tap0┌────┐
Internet───┤ Linux │(lo: 127.0.0.1)
└──┬─┘
eth0│192.168.0.1
│
│192.168.0.2
┌──┴─┐
│Windows │
└────┘
samba-2.0.10_ja_1.1-0vl1が出ています。logrotateも併せて更新が必要です。詳しくはVine更新情報
Vine-2.1以降 inetdで swatを直接起動するのではなく tcpd(tcp_wrapper)を 経由し、/etc/hosts.allow、/etc/hosts.deny によりアクセスできるホストを制限するようになっています。 Vine-2.1.xをインストールし、sambaアップグレード後の /etc/hosts.allowは次のようになっています。
swat: localhostこれだとローカルからのアクセスは許可されているように見えますが、実際はSWATはローカルからも起動できません。 これは SWAT, tcpd いずれかの仕様と /etc/host の記述が適合していないためだと思われます。 また、Linux版の Netscapeでは /etc/samba.conf を壊してしまうことがあるようです。 私も何度かぶっ壊しました(^^;)。 Windowsマシンからもアクセスできるように、ローカルのIPに加えWindowsマシンの繋がっているホストのIPを次のように /etc/hosts.allow に追加します。 冒頭の例はシンプルですが、もう少し複雑でアクセスにゲートウェイを通過する場合などはそのゲートウェイのIPも入れておかねばなりません。
swat: 127.0.0.1 192.168.0.2
この他の設定は次のようになっているはずです。
swat: ALL
swat stream tcp nowait.400 root /usr/sbin/tcpd swat
swat 901/tcp
/etc/inetd.confあるいは/etc/services の設定を変更した場合は inetdを再起動して反映させます。rootになって
# /etc/rc.d/init.d/inet restart
(*)Vine-2.0では /etc/inetd.conf の記述は
swat stream tcp nowait.400 root /usr/sbin/swat swat
となっていました。また man swat でもこの方法が書かれており、sambaの解説書にもこう記載されているものは多いようです。
これだと tcp_wrapper を経由しないので さきのホストによるアクセス制限が掛からなくなり、セキュリティ上好ましくありません。
Windowsマシンからブラウザで URLに
http://192.168.0.1:901/
(192.168.0.1 はLinuxマシンのIPアドレス) を入力すればログイン名とパスワードを尋ねられます。 rootとして設定を変更する場合はログイン名をrootとし、rootパスワードを入力します。
ローカルからNetscape-4.xでアクセスすると、 /etc/samba.conf を壊してしまいます。 Vine-2.1.xには付属していませんがMozilla 9.xでは問題がないと聞いています。またVine-2.1.xに標準で付属している w3m が使えます。 kterm などを起動し、コマンドラインから「w3m」と入力、 大文字の「U」を入力後「http://127.0.0.1:901/」(ローカルからのアクセスなのでローカルループデバイスloのIPとなる)と入力すればユーザー名とパスワードを聞いてきます。 w3mの終了は大文字で「Q」です。
Sambaの設定については他の解説資料に譲りますが、ただひとつ書いておきます。 冒頭のようにインターネットに(ダイアルアップであっても)接続する場合は インターフェースを制限し、インターネット側からのアクセスができないように設定しなければなりません。 標準設定ではこの設定項目は現れません。 「全体設定」で「詳細設定」をクリックし、
interfaces
インターフェース lo eth0
bind interfaces only
このインターフェースのみ使用 yes
としてください。(lo はローカルループバックで Linux共通、
eth0のところはあなたの環境に合わせてください。)
2 Nov 2001 肝心の設定ファイル名のtypoを三嶋さんに指摘していただきました。 またw3mの情報は岩井さんからいただきました。 ありがとうございます。